Verify

Quelle durée de validité et combien de chiffres pour un OTP ?

Utilisez six chiffres aléatoires ou plus, acceptez le code de vérification une seule fois, et faites-le expirer en dix minutes maximum en limitant les tentatives.

Un code de vérification doit rester valide assez longtemps pour être livré et saisi, tout en limitant la possibilité de le deviner ou de le réutiliser. Mesurez le flux de vérification complet avant de choisir sa durée.

Combien de temps le code de vérification doit-il rester valide ?

Accordez dix minutes au maximum pour un code d'authentification envoyé, livraison et saisie comprises.

Les recommandations d'authentification du NIST fixent ce maximum pour l'authentification par un canal séparé. Elles exigent aussi que le serveur accepte le code une seule fois, empêchant toute réutilisation après une authentification réussie.

Marquez le code comme utilisé dès qu'il est validé. Refusez toute nouvelle soumission de ce code même si elle arrive avant l'expiration.

Dix minutes est un maximum, pas une durée d'attente recommandée. Choisissez une fenêtre plus courte quand vos mesures de livraison et de saisie le permettent.

Un code qui met quarante secondes à arriver laisse neuf minutes et vingt secondes dans une fenêtre de dix minutes. Incluez le temps de lecture et de saisie quand vous utilisez vos mesures de livraison.

Les codes générés par un authentificateur suivent un modèle temporel différent. Utilisez les règles TOTP ou HOTP correspondantes quand l'application génère le code localement.

Combien de chiffres faut-il ?

Utilisez au moins six chiffres générés aléatoirement. Définissez une limite de tentatives échouées.

Le NIST exige au moins six chiffres décimaux issus d'un générateur aléatoire approuvé pour les secrets d'authentification envoyés. Un compteur ou un horodatage prévisible ne satisfait pas cette exigence.

Six chiffres aléatoires donnent un million de codes possibles. Cinq tentatives distinctes représentent cinq chances sur un million, soit une sur deux cent mille.

Comptez les tentatives échouées par compte. Le NIST exige qu'un nouveau code conserve ce compteur, de sorte qu'un renvoi ne puisse pas créer un nombre illimité de tentatives.

Un plafond de tentatives nécessite aussi un chemin de récupération pour les utilisateurs légitimes qui l'atteignent. Décidez comment ils retrouvent l'accès sans réinitialiser le plafond pour un attaquant.

Dois-je utiliser huit chiffres à la place ?

Utilisez huit chiffres quand la probabilité de devinette plus faible justifie deux chiffres supplémentaires à saisir.

Huit chiffres aléatoires donnent cent millions de codes possibles. Avec cinq tentatives, la probabilité devient cinq sur cent millions.

C'est cent fois plus faible que cinq tentatives contre six chiffres. Conservez la même limite de tentatives quand vous augmentez la longueur du code.

Un code plus long ne corrige pas un nombre de tentatives illimité. Implémentez la limite de tentatives avant de considérer des chiffres supplémentaires comme une protection suffisante.

Que puis-je configurer dans Bird ?

Définissez la politique de code de vérification de l'espace de travail. Inspectez les paramètres résolus renvoyés pour chaque vérification.

ChampQuoi choisir
code_lengthBird accepte de 4 à 8 caractères. Choisissez au moins six pour cette politique
code_typeInspectez le jeu de caractères renvoyé, numeric ou alphanumeric
ttl_secondsBird accepte de 1 à 59940 secondes. Maintenez la fenêtre d'authentification à 600 secondes ou moins
max_attemptsChoisissez de 1 à 10 soumissions incorrectes avant l'échec de la vérification
resend_cooldown_secondsChoisissez de 0 à 3600 secondes entre les envois au destinataire

La durée autorisée par API dépasse cette recommandation d'authentification. Définissez la valeur de manière délibérée au lieu de considérer la valeur maximale acceptée comme une expiration appropriée.

Une requête de vérification peut remplacer code_length pour cette vérification. Vérifiez sa politique résolue quand vous examinez un comportement différent de la configuration de l'espace de travail.

Que dois-je choisir ?

  1. Commencez par six chiffres aléatoires et un petit plafond de tentatives appliqué.
  2. Dimensionnez la fenêtre de validité à partir du temps de livraison et de saisie mesuré, dans la limite de dix minutes.
  3. Utilisez huit chiffres quand l'action justifie une probabilité de devinette plus faible.
  4. Imposez l'usage unique et conservez le compteur de tentatives échouées lors de l'émission d'un nouveau code.

En bref

  1. Accordez dix minutes au maximum.

    La livraison et la saisie consomment toutes deux la fenêtre de validité. Choisissez une durée plus courte quand votre flux mesuré le permet.

  2. Utilisez au moins six chiffres aléatoires.

    Comptez les tentatives échouées en plus du choix de la longueur du code. Un code plus long ne remplace pas une limite de tentatives.

  3. Acceptez chaque code une seule fois.

    Refusez un code déjà accepté même si sa fenêtre de validité n'est pas terminée.

  4. Conservez le compteur de tentatives lors des renvois.

    L'émission d'un nouveau code ne doit pas accorder au compte un nouveau stock de tentatives.

Développez sur le même réseau.

Une clé API de test est disponible immédiatement. La production est activée dès que vous ajoutez un moyen de paiement et vérifiez un expéditeur.

Commencez avec un seul canal.
Ajoutez les autres quand vous êtes prêt.

Une clé API de test est disponible immédiatement. L'accès production se débloque dès que vous ajoutez un moyen de paiement et vérifiez un expéditeur.

Vous utilisez Claude Code, Cursor ou Codex ? Copiez un prompt de configuration et votre agent installe la CLI Bird et les compétences pour vous. Choisissez le vôtre :

Cursor