L'utilisation des clés de sécurité et autres dispositifs biométriques pour se connecter simplement à des sites est une réalité qui se rapproche à grands pas. Le W3C et la FIDO Alliance arrivent au bout du travail sur l'API WebAuthn qui doit fortement simplifier la pratique dans ce domaine.
Il y a quelques jours, le W3C annonçait avec la FIDO Alliance que l'API Web Authentification (Webauthn) passait au statut de Candidate Recommendation (CR). Pour rappel, ces deux organismes ont la charge de la standardisation des pratiques du web pour l'un, et de dispositifs de connexion sécurisée comme l'U2F pour l'autre.
Ce travail prend place au sein d'une œuvre plus large, FIDO2, où l'API WebAuthn est complétée par le protocole Client to Authenticator (CTAP). Ce dernier permet de lier un navigateur ou un système d'exploitation et un composant sécurisé. Celui-ci peut être aussi bien intégré à un smartphone qu'à une clé de sécurité ou une autre solution avec un dispositif biométrique.
Surtout, contrairement à l'U2F utilisé par Chrome et certains sites, ce standard fait l'objet d'un large consensus aux possibilités multiples. Firefox a ainsi travaillé à son support dans ses dernières versions, il en est de même pour Microsoft avec Edge et Windows 10, Opera, etc. Bref, on s'approche de plus en plus d'une solution exploitable assez largement.
Connexion sécurisée : d'U2F à WebAuthn
Face aux problématiques de sécurité qui gagnent en puissance ces dernières années, et la multiplication des fuites de bases de mot de passe, tout le monde cherche à se débarrasser de ce petit morceau de texte qui protège l'accès de milliards d'internautes. Mais voilà, trouver un compromis facile d'utilisation et sécurisé n'est pas chose facile.
Avec le temps, la double authentification s'est imposée comme une bonne solution. Elle permet de combiner trois éléments afin d'assurer la connexion : un qui nous désigne publiquement (mail, pseudo), un qui est secret (mot de passe) et un dernier qui est calculé pour une durée précise par un appareil que l'on possède.
Ainsi, les applications de type Authenticator et autres envois de code par SMS se sont multipliés, se reposant le plus souvent sur le smartphone. Mais cela pose encore parfois quelques problèmes de sécurité ou d'ordre pratique : que faire si l'appareil est volé, cassé ou plus bêtement si le code est visible sur l'écran verrouillé ?
La FIDO Alliance est née en 2012 de la volonté de pousser de nouveaux standards. PayPal, Lenovo, Nok Nok Labs, Validity Sensors, Infineon et Agnitio sont ses membres fondateurs. L'idée était de permettre une connexion sans mot de passe via différents dispositifs, le chiffrement asymétrique et un élément sécurisé pour le stockage des clés.
L'UAF (Universal Authentication Framework) a rapidement été rejoint par une solution qui a rencontré un plus grand succès : l'U2F (Universal Second Factor). Poussé par Yubico, NXP et Google qui travaillaient ensemble sur un tel projet, il a trouvé sa place au sein de la FIDO Alliance.
Google a ainsi reconnu très vite cette solution dans le cadre de la connexion à plusieurs facteurs sur ses sites. D'autres ont suivi le mouvement comme Dropbox, Facebook ou GitHub. Cette solution s'est propagée d'autant plus vite que l'on trouve des clés compatibles pour une dizaine d'euros seulement, notamment les Yubikey.
Mais avec le temps, de nombreuses limites ont été rencontrées. Tout d'abord, Chrome est toujours le seul à exploiter l'U2F. Ensuite, on le retrouve rarement dans un environnement mobile, malgré l'existence de clés Bluetooth/NFC.
Yubico et la FIDO Alliance se sont rapprochés de Microsoft pour travailler à une solution, connue sous le nom de FIDO2. Il s'agit cette fois d'un standard permettant à la fois la connexion sans mot de passe ou à plusieurs facteurs, gérable via les appareils mobiles, les navigateurs et logiciels de nombreux partenaires, etc.
Pour cela, le groupement a travaillé avec le W3C pour standardiser l'usage des API Web de FIDO2, ce qui a pris forme à travers WebAuthn. Le groupe de travail compte une trentaine de membres issus d'Airbnb, Alibaba, Deutsche Telekom, Google, IBM, Intel, Microsoft, Mozilla, le NIST, Opera, Orange, PayPal, Qualcomm, Softbank, Tencent ou encore Yubico.
Bien qu'Apple fasse partie de la liste, iOS, macOS et Safari restent absents des différentes annonces, mais cela ne saurait durer. On se rappellera que l'implémentation du NFC des iPhone empêche par exemple l'utilisation d'une clé U2F. Intel a de son côté déjà fait des annonces allant dans le sens d'une intégration native il y a quelques mois.
La FIDO Alliance précise que FIDO2 génère une paire de clés spécifique à chaque service, ces derniers ne stockant que la clé publique. Les appareils compatibles peuvent être utilisés pour une connexion directe, avec ou sans solution complémentaire comme un code PIN, une reconnaissance biométrique, etc. Ils peuvent aussi simplement faire office de solution de connexion à plusieurs facteurs.
Dans les deux cas, un premier enregistrement est nécessaire. Chaque appareil peut être révoqué à tout moment.
Une première Yubikey FIDO2
Le groupement promet que la nouvelle version de son standard complète l'UAF et l'U2F et que « les utilisateurs qui disposent d'un appareil FIDO, comme une clé de sécurité U2F, pourront continuer à les utiliser avec les services qui supportent WebAuthn ». Une rétrocompatibilité rassurante.
Cela n'empêche pas Yubico d'annoncer une première clé nativement compatible avec FIDO2 et l'U2F, marquée d'un « 2 ». Il s'agit du modèle de base, proposé aux alentours de 20 euros. Les précédents sont indiqués comme incompatibles pour le moment. Interrogée sur le sujet, Yubico nous a répondu que la nouvelle clé était la seule à supporter WebAuthn et CTAP.
Elle est donc utilisable dans un scénario de connexion ne nécessitant pas de mot de passe, contrairement aux modèles antérieurs. Yubico nous précise qu'il en sera de même pour les autres clés de sa gamme, mais n'avait pour le moment pas de date à nous donner pour la sortie d'une éventuelle Yubikey 5.
La société en profite pour annoncer un nouveau programme consacré aux développeurs, avec une documentation spécifique. Une manière de fêter les dix ans de sa première clé. Ce, alors que Yubico compte désormais des millions de clients dans 160 pays et propose des solutions open source côté serveurs, en plus de permettre l'utilisation de différents standard au sein de ses produits comme OTP, Smart Card (PIV), OpenPGP ou encore OATH (HOTP/TOTP).