Comment fonctionnent les codes à deux facteurs
Les six chiffres de votre application ne sont pas envoyés à votre téléphone. Ils sont calculés dessus, à partir d’un secret et de l’heure, exactement comme le service les calcule de son côté.
Un secret partagé
Quand vous activez la double authentification, le service crée une clé secrète aléatoire et vous la montre sous forme de QR code. Le scanner copie la clé dans votre application. À partir de là, il en existe deux copies : une chez le service, une sur votre téléphone.
Le QR code contient un lien qui commence par otpauth://. En plus de la clé, il porte le nom du service et celui de votre compte, et parfois les réglages à utiliser. C’est un standard : voilà pourquoi n’importe quelle application lit le QR code de n’importe quel service.
Des codes qui suivent l’horloge : TOTP
La plupart des services utilisent TOTP, des mots de passe à usage unique basés sur le temps, définis par la RFC 6238. Toutes les trente secondes, l’application et le service prennent chacun l’heure actuelle, la combinent à la clé par une fonction cryptographique appelée HMAC, et réduisent le résultat à six chiffres. Même clé, même heure, même code.
C’est pour cela que vos codes fonctionnent en mode avion, et qu’une horloge de téléphone décalée de plus d’une trentaine de secondes produit des codes que le service refuse. Si vos codes sont rejetés, vérifiez que la date et l’heure sont réglées automatiquement.
Des codes qui comptent : HOTP
HOTP, défini par la RFC 4226, remplace l’heure par un compteur qui augmente de un à chaque code demandé. Il est plus rare, et se rencontre chez certaines banques et sur des jetons matériels. Otter gère les deux.
Ce que ça change pour votre sécurité
- Un code ne sert plus à rien après trente secondes : quelqu’un qui le lit par-dessus votre épaule ne peut pas s’en servir plus tard.
- C’est la clé qui compte. Qui la détient peut produire vos codes pour toujours : c’est pour cela qu’Otter la chiffre et ne la montre plus jamais une fois ajoutée.
- Un code ne vous protège pas d’une fausse page de connexion : saisi là, il peut être utilisé aussitôt par l’attaquant. Vérifiez l’adresse avant de taper.
- Perdre la clé, c’est perdre les codes : d’où l’intérêt d’une sauvegarde.
Voyez par vous-même
La page d’accueil d’Otter propose une démonstration en direct : scannez son QR code avec n’importe quelle application, et le code sur votre téléphone correspond à celui de la page, et change au même moment.
Essayer Otter
Gratuit sur iPhone et Android. Aucun compte à créer, rien à synchroniser : installez-le, scannez votre premier QR code, et le code s’affiche.