Les problèmes d’insécurité et d’utilisabilité des mots de passe sont bien connus. Les mots de passe, étant quelque chose que l’on sait, sont vulnérables à l’oubli, ce qui arrive fréquemment. Ainsi, le courriel est largement utilisé comme méthode de secours pour réinitialiser les mots de passe.
Le courriel pose également de nombreux problèmes. Tout comme pour les mots de passe, les personnes réutilisent généralement la même adresse courriel sur de nombreux services, créant un risque pour la vie privée si cette adresse est découverte par l’un de ces services. Il devient de plus en plus difficile d’obtenir une adresse courriel sans fournir d’informations personnellement identifiables au serveur de messagerie. Pour dissuader le spam (et probablement aussi parce que cela facilite le ciblage publicitaire), les services de courriel gratuits exigent généralement la fourniture d’un numéro de téléphone, facile à associer à une personne spécifique. Les services de courriel payants peuvent ne pas exiger de numéro de téléphone, mais payer pour un service sans fournir d’informations personnellement identifiables reste difficile, et s’appuyer sur un abonnement à un service de courriel payant est vulnérable aux changements de situation financière. De plus, il est difficile d’héberger de manière fiable son propre serveur de messagerie de nos jours. Outre les problèmes de confidentialité, la centralisation créée par la réutilisation d’un compte de courriel sur de nombreux services engendre également un risque de sécurité, car la compromission d’un compte de courriel entraînerait la compromission de nombreux autres comptes.
De nos jours, nous n’avons plus besoin ni de mots de passe ni de courriels pour nous inscrire ou nous authentifier sur un service. Discourse prend déjà en charge FIDO et TOTP, mais il nécessite toujours un mot de passe et une adresse courriel pour l’inscription et l’authentification. Il serait idéal que Discourse rende les mots de passe et les adresses courriel optionnelles en faveur de FIDO et TOTP.
L’authentification à un seul facteur avec FIDO peut être très pratique, mais elle est vulnérable à la perte ou à la destruction du seul jeton FIDO, tout comme le problème d’inscription avec un mot de passe mais sans adresse courriel. Pour résoudre ce problème, je propose que les utilisateurs soient tenus de fournir au moins deux facteurs lors de l’inscription, ce qui pourrait être n’importe quelle combinaison de FIDO, TOTP et/ou mot de passe. Les utilisateurs souhaitant une authentification sans courriel ni mot de passe pourraient simplement s’inscrire avec deux authentifiants FIDO roaming, comme des YubiKeys. Il pourrait être conseillé (voire exigé, en particulier pour les administrateurs) aux utilisateurs de s’inscrire avec plus que le minimum de deux facteurs afin d’éviter de perdre l’accès à leurs comptes.
Étant donné que les authentifiants FIDO intégrés aux plateformes sont de plus en plus présents dans les appareils modernes, avec Windows Hello, Apple Touch & Face ID et Android, ce système d’inscription sans courriel pourrait être utilisable par des utilisateurs non techniques ne possédant pas de matériel d’authentifiant roaming spécialisé comme une YubiKey. Les utilisateurs pourraient s’inscrire avec l’authentifiant FIDO intégré à leur plateforme plus un mot de passe. L’authentification à un seul facteur avec l’authentifiant FIDO intégré pourrait fonctionner de manière transparente avec une telle configuration. Cependant, cela créerait un problème d’utilisabilité pour l’authentification sur de nouveaux appareils, car les utilisateurs n’auraient pas l’authentifiant FIDO intégré disponible sur un nouvel appareil, et se fier uniquement au mot de passe pour configurer un nouvel appareil ne serait pas sécurisé. Pour résoudre ce problème, je propose un flux de travail similaire à celui utilisé par Matrix pour authentifier de nouveaux clients. L’utilisateur pourrait tenter de se connecter sur un nouvel appareil en utilisant l’authentifiant FIDO intégré à cet appareil (un nouveau facteur) et son mot de passe (un facteur déjà enregistré). Cela ne permettrait pas de se connecter immédiatement, mais cela créerait une demande d’approbation du nouvel authentifiant FIDO dans le compte. L’interface utilisateur sur le nouvel appareil redirigerait ensuite l’utilisateur vers un appareil déjà enregistré pour approuver le nouvel appareil. Avec les authentifiants FIDO intégrés aux appareils mobiles, cela pourrait être pratiquement utilisable pour une authentification sécurisée sans matériel d’authentifiant roaming spécialisé, tout en conservant la possibilité d’utiliser n’importe quel appareil occasionnel, comme un kiosque public.
J’ai imaginé ce système d’inscription et d’authentification anonyme hier après avoir reçu mes YubiKeys. Je ne connais aucun système qui l’implémente. J’aimerais voir une application web mature et déjà largement déployée, telle que Discourse, ouvrir la voie à un avenir où l’utilisation d’Internet ne nécessiterait ni courriel ni autres informations personnellement identifiables.