Le protocole OPAQUE expliqué : pourquoi votre mot de passe ne devrait jamais toucher le serveur
Chaque fois que vous vous connectez à un site web, vous effectuez l'une des opérations les plus dangereuses en cybersécurité : transmettre une preuve de votre identité. Pendant des décennies, nous avons utilisé une approche fondamentalement défaillante — envoyer des hashs de mots de passe aux serveurs. OPAQUE change tout.
La faille fondamentale
Dans l'authentification traditionnelle, voici ce qui se passe quand vous tapez votre mot de passe :
- Votre mot de passe est hashé (avec bcrypt ou PBKDF2)
- Le hash est envoyé au serveur via TLS
- Le serveur le compare avec le hash stocké
Cela semble sécurisé, mais présente des failles critiques :
- Le serveur stocke des hashs. En cas de fuite, les attaquants peuvent tenter des attaques par force brute hors ligne contre chaque hash.
- Le hash est transmis. Même via TLS, le hash passe par la mémoire côté serveur, où il pourrait être intercepté par un processus compromis.
- Attaques par pré-calcul. Les attaquants peuvent pré-calculer les hashs de mots de passe courants et les comparer aux bases de données volées.
Qu'est-ce qu'OPAQUE ?
OPAQUE (RFC 9807) est un protocole d'échange de clés asymétrique authentifié par mot de passe (aPAKE). En termes simples, il vous permet de prouver que vous connaissez un mot de passe sans que le serveur n'apprenne quoi que ce soit — ni le mot de passe, ni un hash, ni même une forme chiffrée.
Comment fonctionne OPAQUE
OPAQUE comporte deux phases :
Enregistrement (configuration initiale)
- Votre appareil génère une paire de clés aléatoire et une "enveloppe" contenant vos clés de chiffrement
- L'enveloppe est chiffrée avec une clé dérivée de votre mot de passe
- L'enveloppe chiffrée et la clé publique sont envoyées au serveur
- Le serveur les stocke — mais ne peut pas ouvrir l'enveloppe sans votre mot de passe
Authentification (chaque connexion)
- Votre appareil initie un échange cryptographique avec le serveur
- Grâce aux Fonctions Pseudo-Aléatoires Oublieuses (OPRF), le serveur aide votre appareil à dériver la bonne clé — sans savoir quelle est cette clé
- Votre appareil déchiffre l'enveloppe et récupère sa clé privée
- Les deux parties établissent une clé de session partagée
À aucun moment le serveur ne voit votre mot de passe ou quoi que ce soit qui en est dérivé. Le serveur assiste le calcul sans acquérir de connaissance — c'est la partie "oublieuse".
Pourquoi c'est important pour les gestionnaires de mots de passe
Pour un gestionnaire de mots de passe, le protocole d'authentification est la porte d'entrée de toute votre vie numérique. Si un attaquant compromet le système d'authentification, tout est exposé. OPAQUE fournit :
- Résistance aux fuites : Un dump de base de données est inutile — il n'y a pas de hash à craquer
- Résistance au phishing : Le protocole est lié à l'identité du serveur, rendant les attaques man-in-the-middle détectables
- Confidentialité persistante : Chaque session utilise des clés fraîches
- Pas de stockage équivalent au mot de passe : Contrairement aux hashs bcrypt, les données stockées ne peuvent pas être utilisées pour usurper l'utilisateur
Conclusion
OPAQUE représente un changement de paradigme en authentification. Au lieu d'espérer que le hash de votre mot de passe ne sera pas volé et craqué, OPAQUE garantit qu'il n'y a rien d'utile à voler. Pour les gestionnaires de mots de passe — où l'enjeu est toute votre identité numérique — ce n'est pas optionnel. C'est essentiel.