====== webauthn ====== ===== Web Authentication ===== WebAuthn (Web Authentication) est un standard du World Wide Web Consortium (W3C)1,2 avec la contribution de la FIDO Alliance3 qui propose une interface d'authentification des utilisateurs aux applications Web à l'aide de clés asymétriques et/ou de token [[/glossaire/U2F|U2F]]. Cette interface est une extension de l'API plus générale « Credential Management » qui définit comment les navigateurs Web ou autres agents utilisateur doivent interagir avec un gestionnaire de mots de passe. Standard soutenu par l’alliance [[/glossaire/FIDO|FIDO]]. * [[wpfr>WebAuthn]] * https://webauthn.guide * [[https://developer.mozilla.org/en-US/docs/Web/API/Web_Authentication_API|Web Authentication API]] at MDN (//Mozilla Developer Network//) * https://github.com/webauthn-open-source * User Verifying Platform Authenticators (UVPA). En rapport avec [[/glossaire/passkey]] Pensées * L'idée d'origine est l'authentification avec un token physique mais qui se voit remplacer par un fournisseur cloud (samsung, google, apple, ...). Il est alors plus simple de laisser l'utilisateur enregistrer son mot de passe comme son système lui propose (//sûrement au même endroit dans le cloud//). * À moins de ne pas proposer l'auth pas mot de passe, auquel cas WebAuthn est bien plus résistant aux tentatives d'usurpation. Discussions * dans les commentaires de https://dev.to/dagnelies/passkeys-webauthn-library-v20-is-there-6c9 ==== Démos ==== Checks: * https://featuredetect.passkeys.dev/ Démos: * https://webauthn.passwordless.id/demos/basic.html * https://webauthn.io/ * https://www.passkeys.io/ * https://webauthn.me/ Note: Il faut stocker les clés crypto, donc le phone doit être connecté à Google, Samsung ou autres services Proton Pass Key or 1Password or Bitwarden ... Sinon le système demande un token via USB, NFC ou un QRCode avec url FIDO. ==== Tests ==== Tests at https://featuredetect.passkeys.dev/ * PPA : [[https://w3c.github.io/webauthn/#passkey-platform-authenticator|Passkey Platform Authenticator]] * UVPA : [[https://w3c.github.io/webauthn/#user-verifying-platform-authenticator|User Verifying Platform Authenticator]] * HT : [[https://passkeys.dev/docs/reference/terms/#cross-device-authentication-cda|Hybrid Transports]] * GCC : [[https://w3c.github.io/webauthn/#sctn-getClientCapabilities|Get Client Capabilities]] * CG : [[https://passkeys.dev/docs/reference/terms/#autofill-ui|Conditional Get (Autofill UI)]] ^ Phone & System ^ Browser ^ PPA ^ UVPA ^ HT ^ GCC ^ CG ^ | Samsung A05s, **Android 14** | Firefox 132.0.2 | Ok | Ok | Unknow | Not | Not | | Samsung A41, **Android 12** | Firefox 132.0.2 | Not | Not | Unknow | Not | Not | === Ne fonctionne pas avec Android 12 === I does not work with Samsung A41 Android 12 with Chrome 128 & Firefox 132 The "new registration" does not work, it throw "The operation either timed out or was not allowed." at https://webauthn.lubu.ch/_test/client.html and it does not work too on https://webauthn.io/, https://www.passkeys.io/, https://webauthn.me/ 😞 Tickets * https://github.com/yackermann/awesome-webauthn/issues/112 * https://github.com/duo-labs/webauthn.io/issues/146 * https://github.com/duo-labs/py_webauthn/issues/138 * https://github.com/lbuchs/WebAuthn/issues/93#issuecomment-2491259058