Skip to content
Avatar de Thomas BntThomas Bnt@thomasbnt
retour
Passkeys expliquées simplement

Passkeys expliquées simplement

Publié le
6 min de lecture · 1199 mots

Tu as sûrement déjà vu ce petit encart “Se connecter avec Face ID” ou “Utiliser une clé d’accès” à la place du traditionnel champ mot de passe. C’est une passkey. Et non, ce n’est pas juste un mot de passe qui se cache derrière ton empreinte digitale.

Le meilleur mot de passe, c’est celui que tu n’as jamais à taper.

Le problème avec les mots de passe

Un mot de passe, c’est un secret que toi tu dois retenir, et que le site doit stocker (idéalement hashé). Le souci, c’est que ce système repose entièrement sur deux points faibles :

  • Toi, qui réutilises le même mot de passe partout parce que t’en as marre d’en inventer un nouveau.
  • Le site, qui peut se faire pirater et voir sa base de mots de passe fuiter.

Ajoute à ça le phishing : un faux site qui imite parfaitement le vrai peut te voler ton mot de passe sans que tu t’en rendes compte. Et ce n’est pas anecdotique : le rapport DBIR de VerizonFavicon de verizon.com le rappelle chaque année, l’ingénierie sociale, le phishing et les identifiants volés restent parmi les causes majeures de piratage dans le monde, aux côtés des failles logicielles.

Extrait du rapport DBIR de Verizon sur les causes de piratage Source : Data Breach Investigations Report, VerizonFavicon de verizon.com

Même avec un gestionnaire de mots de passe et du 2FA, la faille de base reste là : un secret que tu peux transmettre par erreur.

C’est quoi une passkey, concrètement

Une passkey repose sur la cryptographie asymétrique, le même principe que SSH si t’as déjà généré une paire de clés pour te connecter à un serveur.

Quand tu crées une passkey pour un site :

  1. Ton appareil (téléphone, ordinateur, clé de sécurité) génère une paire de clés : une clé privée et une clé publique.
  2. La clé privée ne quitte jamais ton appareil. Elle est stockée dans une puce sécurisée : le Secure EnclaveFavicon de support.apple.com sur iPhone/Mac, le TPMFavicon de learn.microsoft.com sur Windows, ou directement la puce d’une clé USB type YubiKeyFavicon de yubico.com.
  3. La clé publique, elle, est envoyée au site et stockée côté serveur.

Pour te connecter, le site t’envoie un défi (un nombre aléatoire), ton appareil le signe avec la clé privée, et le site vérifie la signature avec la clé publique. Si ça correspond, t’es authentifié.

Aucun secret ne transite jamais sur le réseau, seulement une signature. C’est écrit noir sur blanc dans la spec WebAuthn du W3CFavicon de w3.org : rien à voler, rien à phisher.

Pourquoi c’est plus sûr

Mot de passePasskey
Secret partagé, transmis à chaque loginRien n’est transmis, juste une signature
Réutilisable sur plusieurs sitesUnique par site, liée au domaine
Vulnérable au phishingRésistante au phishing (liée au domaine exact)
Peut fuiter en cas de piratage serveurLe serveur ne stocke que la clé publique, inutile pour un attaquant
À retenir ou gérer via un gestionnaireDéverrouillée par biométrie ou code local

Le point clé : une passkey est liée au domaine sur lequel elle a été créée. Si tu vas sur paypa1.com au lieu de paypal.com, ton appareil ne proposera même pas la passkey. C’est le navigateur/OS qui fait cette vérification, pas toi. Google l’explique très bienFavicon de blog.google : contrairement à un mot de passe, une passkey est cryptographiquement liée au site pour lequel elle a été créée, donc impossible à intercepter ou à réutiliser sur un faux site. Résistantes au phishing par construction, pas par bonne volonté de l’utilisateur.

Sous le capot : WebAuthn et FIDO2

Techniquement, les passkeys s’appuient sur la norme WebAuthnFavicon de w3.org (W3C), qui fait partie du standard plus large FIDO2Favicon de fidoalliance.org porté par la FIDO Alliance (Google, Apple, Microsoft, Yubico en sont membres). C’est cette API que les navigateurs exposent en JavaScript pour créer et utiliser des credentials.

Schéma du flow d'enregistrement WebAuthn entre l'utilisateur, le navigateur et le serveur Schéma du flow d’enregistrement, d’après la spec WebAuthn du W3CFavicon de w3.org

Créer une passkey côté client ressemble à ça :

const credential = await navigator.credentials.create({
  publicKey: {
    challenge: new Uint8Array(32), // fourni par le serveur
    rp: { name: "Mon Super Site", id: "monsupersite.com" },
    user: {
      id: new Uint8Array(16),
      name: "[email protected]",
      displayName: "Thomas",
    },
    pubKeyCredParams: [{ alg: -7, type: "public-key" }], // ES256
    authenticatorSelection: { userVerification: "required" },
  },
});

Et pour se connecter avec une passkey existante :

const assertion = await navigator.credentials.get({
  publicKey: {
    challenge: new Uint8Array(32), // fourni par le serveur
    userVerification: "required",
  },
});

Le serveur génère le challenge, le navigateur gère toute la partie biométrie/déverrouillage, et te renvoie une signature à vérifier. Côté serveur, des libs comme @simplewebauthn/serverFavicon de simplewebauthn.dev en Node.js font le gros du travail de vérification.

Et si je perds mon téléphone ?

C’est la question qui bloque tout le monde, et si le sujet te parle, j’en avais déjà fait tout un article sur les galères du 2FA après un vol de téléphone — le même principe de “point de défaillance unique” s’applique aux passkeys. Depuis 2022, Apple, Google et Microsoft ont ajouté la synchronisation des passkeys :

  • Sur iOS/macOS, elles se synchronisent via ton trousseau iCloudFavicon de support.apple.com.
  • Sur Android/Chrome, via ton compte GoogleFavicon de blog.google, avec le Gestionnaire de mots de passe Google qui chiffre tout de bout en bout.
  • Sur Windows, via Windows HelloFavicon de support.microsoft.com, même si la synchronisation cross-appareil y est encore plus limitée que chez Apple ou Google.

Donc si tu perds ton téléphone mais que tu récupères l’accès à ton compte iCloud ou Google sur un nouvel appareil, tes passkeys reviennent avec. Tu peux aussi utiliser une clé de sécurité physique (YubiKey) en backup, qui elle ne se synchronise pas mais fonctionne sur n’importe quel appareil compatible — exactement le même conseil que pour le 2FA classique : ne mets jamais tous tes œufs dans le même panier.

Comment les utiliser aujourd’hui

De plus en plus de services les proposent déjà : Google, Apple, GitHub, Microsoft, PayPal, Amazon, X… Google est même allé plus loin en rendant les passkeys par défaut sur les comptes personnelsFavicon de blog.google. En général tu la trouves dans les paramètres de sécurité du compte, sous “Clé d’accès” ou “Passkey”.

Le flow typique :

  1. Tu vas dans les paramètres de sécurité du service.
  2. Tu cliques sur “Ajouter une clé d’accès” ou “Créer une passkey”.
  3. Ton navigateur/OS te demande de confirmer avec Face ID, Touch ID, Windows Hello, ou le code de ton téléphone.
  4. C’est fait. Au prochain login, plus besoin de mot de passe.

Si tu veux gérer tes passkeys ailleurs que dans le trousseau de ton OS (utile si t’es sur plusieurs plateformes différentes), ProtonPassFavicon de go.getproton.me sait aussi les créer et les stocker, chiffrées de bout en bout, au même endroit que tes mots de passe.

Conclusion

QuestionRéponse
C’est basé sur quoi ?Cryptographie asymétrique (paire clé privée/publique)
Le mot de passe circule sur le réseau ?Non, jamais
Résistant au phishing ?Oui, par construction (lié au domaine)
Norme techniqueWebAuthn / FIDO2
Perte d’appareilRécupérable via synchronisation iCloud/Google, ou clé physique en backup

Les passkeys ne sont pas juste “un mot de passe caché derrière une empreinte digitale”, c’est un changement de modèle complet : plus rien à retenir, plus rien à voler. Si un service te propose d’en créer une, fonce, c’est strictement plus sûr et plus rapide que ton mot de passe actuel.

Le lien ProtonPass dans cet article est un lien d’affiliation, ce qui signifie que je peux recevoir une commission si tu décides de t’inscrire via ce lien, sans coût supplémentaire pour toi. Cela m’aide à payer les frais d’hébergement/noms de domaines. Merci pour ton soutien !

Partager sur

Article Suivant
RES, mon garde-fou personnel face à l'IA