Pourquoi le rêve des passkeys s'est brisé
Le rêve
- En 2019, l'auteur a commencé à développer une bibliothèque Webauthn pour Rust
- À l'époque, il existait un optimisme selon lequel cette technologie pourrait remplacer les mots de passe
- On espérait qu'elle pourrait prendre en charge l'authentification à deux facteurs, l'authentification sans mot de passe et l'authentification sans nom d'utilisateur
- La bibliothèque développée par l'auteur a eu un impact important sur le secteur
Signaux d'alerte
- Chrome domine le marché, si bien que ce qu'il ne prend pas en charge risque d'être écarté du standard
- Authenticator Selection Extension en est un exemple représentatif
- Le fait que les décisions clés soient prises lors de réunions en présentiel organisées aux États-Unis pose aussi problème
- Une situation qui exclut les participants internationaux
Le déclin
- En 2022, Apple a annoncé les Passkeys
- Au départ, cela semblait bien conçu, mais une déclaration ultérieure du responsable a conduit à définir un passkey comme une Resident Key
- Cela a eu pour effet d'exclure les clés de sécurité disposant d'un espace de stockage limité
- Par la suite, les passkeys se sont transformées en un moyen d'enfermer les utilisateurs dans une plateforme
Une situation qui empire
- Chrome et Safari imposent l'utilisation de caBLE à la place des clés de sécurité
- Une approche à l'utilisabilité très médiocre
- Android empêche l'utilisation de clés de sécurité sur les sites web compatibles Passkey
- Les exemples destinés aux développeurs incitent à n'utiliser que Google Passkey
- Les utilisateurs rencontrent de nombreuses difficultés avec les passkeys
- Bugs, procédures complexes, perte de clés, etc.
- Il arrive fréquemment que des passkeys soient supprimées dans Apple Keychain
Perspectives
- L'auteur prévoit que les passkeys échoueront auprès du grand public
- La recherche du profit par les entreprises dégrade l'expérience utilisateur
- Même la partenaire de l'auteur affirme que les mots de passe sont préférables aux passkeys
- En entreprise, les clés de sécurité restent nécessaires, mais les problèmes d'utilisabilité demeurent
- L'auteur prévoit de continuer à maintenir le projet webauthn-rs, tout en cherchant d'autres solutions que les passkeys
L'avis de GN⁺
- Il est préoccupant de voir les passkeys évoluer dans une direction qui exclut les clés de sécurité et renforce la dépendance aux plateformes. Limiter le choix des utilisateurs ne semble pas souhaitable.
- Il semble nécessaire de faire progresser la technologie tout en améliorant son utilisabilité. Elle ne devrait pas devenir excessivement complexe ni trop restrictive.
- L'influence croissante d'un petit nombre d'entreprises, qui entraîne aussi des problèmes dans le processus de standardisation, semble devoir être traitée en urgence. Une structure de décision plus ouverte et plus transparente devrait être mise en place.
- Les alternatives proposées, comme les certificats d'appareil ou les cartes à puce, paraissent intéressantes. Elles pourraient permettre de dépasser les limites actuelles des passkeys tout en améliorant l'utilisabilité.
- Comme il s'agit encore d'une phase transitoire, il semble important de poursuivre les avancées techniques et de continuer à intégrer les retours des utilisateurs. On peut espérer qu'une coopération entre les différentes parties prenantes permettra de construire un meilleur système d'authentification.
3 commentaires
Un avenir sans mot de passe arrive
Présentation des Passkeys dans Chrome
Avis Hacker News
Le principal problème des passkeys, c’est qu’on ne peut pas faire confiance aux entreprises qui les fournissent. Elles sont verrouillées à la plateforme pour des raisons de sécurité, mais c’est souvent difficile à distinguer du verrouillage propriétaire. Si vous créez une passkey sur un appareil Apple, elle ne peut absolument jamais en sortir et il n’existe aucun moyen de changer cela. C’est sûr contre le phishing, mais je ne sais pas quoi faire si Apple supprime la clé ou si je veux me débarrasser de l’iPhone.
Dans les longues discussions sur les passkeys, on voit une étrange esquive de la partie sécurité fondée sur « ce que l’on sait ». Aux États-Unis, les tribunaux et les forces de l’ordre peuvent légalement obtenir un nom d’utilisateur, une empreinte digitale, un scan rétinien, Face ID, etc., mais ils n’ont pas le droit d’extraire quelque chose de votre cerveau. Les passkeys préfèrent remplacer « ce que l’on sait » par « ce que l’on possède », et c’est un cauchemar pour la sécurité.
Avis contraire : j’adore les passkeys. J’utilise le navigateur Firefox et le gestionnaire 1Password, et sur iPhone j’utilise 1Password + Firefox. En regardant passkeys.directory, j’ai basculé les connexions à GitHub, Google, Microsoft, etc. vers les passkeys. Des formulations comme « Se connecter avec une passkey » au lieu de « Se connecter avec Touch ID » sont déroutantes. 1Password synchronise les passkeys entre les appareils. Cela peut être peu pratique s’il faut se connecter depuis un ordinateur public, mais cela ne m’arrive pas souvent.
J’évite encore les passkeys parce qu’il n’existe pas encore de modèle mental clair. J’utilise déjà des mots de passe aléatoires générés par un gestionnaire de mots de passe classique, donc je ne ressens pas le besoin de migrer. Je comprends identifiant/email + mot de passe, mais en me rappelant la douleur des « mots de passe spécifiques à une application », je crains que certains outils open source/CLI ne s’intègrent pas bien avec les passkeys, donc mieux vaut attendre que la situation se stabilise.
Je suis entièrement investi dans l’écosystème Apple Keychain et je possède plusieurs appareils Apple, donc les passkeys sont excellentes. En tant que développeur, je subis chaque jour les limites du faible SMS 2FA. Les utilisateurs peuvent facilement être manipulés par ingénierie sociale et donner leurs codes 2FA. Les passkeys offrent une solution plus sûre, qui évite aux développeurs de devoir s’inquiéter des utilisateurs lisant leur code à voix haute au support client. Le SIM swapping ne compromet pas une passkey, et on ne peut pas partager sa passkey avec un escroc.
En tant que technicien, je ne comprends pas vraiment comment fonctionnent les passkeys, ni en quoi elles sont meilleures, ni même ce qu’elles sont exactement. Si une fonctionnalité de sécurité n’est pas aussi simple que de mémoriser un nom d’utilisateur et un mot de passe et de les stocker dans un endroit sûr, elle ne fonctionnera pas. On parle d’une clé présente sur l’appareil, mais quand on utilise à la fois un téléphone et un PC, je me demande comment on y accède, s’il faut au départ un nom d’utilisateur/mot de passe, ou s’il faut une clé physique à brancher sur l’appareil.
Le usernameless ressemble à une optimisation excessive. Il est raisonnable et bénéfique que l’utilisateur utilise un nom d’utilisateur lors de la connexion. Cela lui rappelle quel nom d’utilisateur il utilise. On peut imaginer qu’un utilisateur accède à un service avec une passkey usernameless, puis perde cette passkey pour une raison quelconque et oublie aussi son nom d’utilisateur pour ce service, au point de ne même pas pouvoir lancer la procédure de récupération de compte.
Les personnes qui ne connaissent pas le fonctionnement technique des passkeys peuvent consulter ce guide d’implémentation : https://webauthn.guide/ Je ne comprends pas la haine envers les passkeys. Passer à un challenge de clé publique pour l’authentification est une grande avancée pour la sécurité du web. Chaque navigateur/OS protège et sauvegarde la clé privée. Même si vous perdez la clé, vous pouvez réinitialiser les identifiants d’authentification via le flux « mot de passe oublié ».
Pour envisager l’usage des passkeys, il faut que les exigences suivantes soient remplies :
Je n’ai pas vérifié si les implémentations WebAuthn de Firefox ou de Chrome sur Linux satisfont à ces exigences.
J’essaie de suivre l’évolution de l’espace 2FA, et les passkeys ont été ce qu’il y a eu de plus confus pour moi. J’ai beaucoup vu le battage autour des passkeys comme technologie de nouvelle génération, mais il a été difficile de trouver une explication de ce qu’elles sont réellement et de leur fonctionnement. Quand j’ai compris qu’il s’agissait de clés stockées sur une clé de sécurité, j’ai été déçu. J’aime l’idée de générer des clés à la volée à partir du nom de domaine. L’avantage des passkeys est qu’il n’est pas nécessaire de se souvenir du nom d’utilisateur utilisé sur un site web, mais c’est un avantage mineur.
Réponse à une question connexe demandant quel est le nom officiel de la technologie (basée sur FIDO2 ? sur WebAuthn ?) qui calcule et reconstitue des clés à la volée à partir du nom de domaine : je l’ai trouvée ici https://fy.blackhats.net.au/blog/… . Une clé reconstituée à la volée s’appelle un « non-resident credential ».