3. Algorithm Requirements (Exigences de l'algorithme)
3. Algorithm Requirements (Exigences de l'algorithme)
Cette section résume les exigences prises en compte pour la conception de l'algorithme TOTP.
R1: Le prouveur (par exemple, jeton, jeton logiciel) et le vérificateur (serveur d'authentification ou de validation) DOIVENT connaître ou être capables de dériver l'heure Unix actuelle (c'est-à-dire le nombre de secondes écoulées depuis minuit UTC du 1er janvier 1970) pour la génération d'OTP. Voir [UT] pour une définition plus détaillée du "temps Unix" communément connu. La précision du temps utilisé par le prouveur affecte la fréquence à laquelle la synchronisation de l'horloge doit être effectuée; voir la section 6.
R2: Le prouveur et le vérificateur DOIVENT soit partager le même secret, soit connaître une transformation secrète pour générer un secret partagé.
R3: L'algorithme DOIT utiliser HOTP [RFC4226] comme bloc de construction clé.
R4: Le prouveur et le vérificateur DOIVENT utiliser la même valeur de pas de temps X.
R5: Il DOIT y avoir un secret (clé) unique pour chaque prouveur.
R6: Les clés DEVRAIENT être générées de manière aléatoire ou dérivées à l'aide d'algorithmes de dérivation de clés.
R7: Les clés PEUVENT être stockées dans un dispositif résistant aux altérations et DEVRAIENT être protégées contre l'accès et l'utilisation non autorisés.