Mot de passe à usage unique

Un code à usage unique envoyé par SMS pour vérifier qui contrôle un numéro de téléphone, avec une expiration courte et une limite de tentatives.

Définitions uniquement : un terme expliqué ici n’est pas un service que nous vendons.

Un mot de passe à usage unique (OTP) est un code qui ne fonctionne qu’une fois et expire en quelques minutes. Il prouve la maîtrise du numéro à cet instant, pas l’identité : la sécurité repose donc sur les limites qui l’entourent.

L’expiration, le nombre de tentatives, la politique de renvoi et la validation du numéro comptent davantage que le code lui-même.

Remise et défaillances

L’application génère un code aléatoire, en calcule le hachage avec une expiration et envoie le code en clair par SMS A2P via un centre de messagerie ou un agrégateur. La sécurité vient de la logique applicative, pas du transport SMS. Un code peut arriver en retard, atteindre un mauvais numéro ou aboutir chez un tiers à la suite d’un SIM swap ; la page sur la remise des OTP par SMS décrit ce parcours.

Le trajet du code

  1. Application
  2. Passerelle SMPP
  3. SMSC
  4. HLR / HSS
  5. MSC / MME
  6. Téléphone
  7. Accusé de remise
L’application soumet le code à une passerelle SMPP qui le transmet au SMSC ; le trajet passe par le HLR/HSS et le MSC/MME jusqu’au téléphone, avec un accusé de remise.
Description textuelle

L’application soumet le message à une passerelle SMPP, qui le transmet au SMSC. Le trajet passe ensuite par le HLR/HSS et le MSC/MME jusqu’au téléphone, et l’accusé de remise en est le nœud final.

Ce qu’il faut vérifier

Limitez le débit par numéro, par IP et par appareil, plafonnez les tentatives et fixez une expiration courte. Choisissez le repli avant le lancement : un appel vocal, une application d’authentification ou un contrôle manuel.

Questions fréquentes

Un OTP par SMS est-il suffisamment sûr ?

Cela dépend de la valeur en jeu. Pour les comptes à forte valeur, associez-le à une application d’authentification ou à des clés d’accès (passkeys).

Un code peut-il être réutilisé ?

Non. Marquez-le comme utilisé dès la première réussite et invalidez-le à l’expiration ou après la limite de tentatives.

Pourquoi les codes arrivent-ils en retard ?

La congestion de la route, un téléphone hors ligne, un numéro erroné et le filtrage à destination sont des causes fréquentes.

En savoir plus

Sources

  1. 3GPP TS 23.040 : réalisation technique du service de messages courts