Pendant longtemps, le monde des cryptomonnaies a fonctionné comme le « Far West » : soit vous stockiez vos 24 mots sur une plaque métallique dans un coffre bancaire, soit vous risquiez de tout perdre à cause d’un seul lien de phishing. Mais en 2025–2026, un changement tectonique est survenu. La technologie Passkeys (standard FIDO2/WebAuthn) combinée à l’Account Abstraction a rendu la gestion des actifs non seulement plus simple qu’une application bancaire mobile, mais aussi cryptographiquement plus sûre.
Voyons pourquoi votre rétine est désormais plus fiable qu’une phrase de récupération et comment cela fonctionne « sous le capot ».
Pourquoi la phrase de récupération est « l’âge de pierre »
Les portefeuilles traditionnels (EOA — Externally Owned Accounts) comme MetaMask reposent sur une seule paire de clés. La phrase de récupération est votre clé.
- Point de défaillance unique : Si la phrase est volée, l’argent disparaît. Si elle est oubliée, les fonds sont perdus.
- Problème de « signature aveugle » : Vous signez des transactions sans en comprendre le contenu, ce qui ouvre la porte au phishing.
- Manque de flexibilité : Vous ne pouvez pas changer de clé sans transférer tous vos tokens vers une nouvelle adresse.
Comment les Passkeys changent la donne
Un Passkey est une paire de clés cryptographiques générée dans un module sécurisé de votre appareil (Secure Enclave sur iPhone ou TPM sur Windows/Android).
- La clé privée ne quitte jamais la puce.
- L’accès se fait uniquement via biométrie (FaceID/TouchID) ou code de déverrouillage de l’appareil.
- Synchronisation : Les clés sont copiées en toute sécurité sur vos autres appareils via iCloud ou Google Password Manager, éliminant le risque de perdre l’accès si un appareil tombe en panne.
Pourquoi c’est plus sûr que les applications bancaires
Dans une application bancaire, votre sécurité repose souvent sur un code PIN à 4 chiffres ou une confirmation par SMS (facile à intercepter via SIM-swap). Le Passkey utilise l’algorithme P-256 (secp256r1) — un standard industriel de cryptage. Tenter de casser une telle clé par force brute sur un ordinateur moderne prendrait des milliards d’années.
Magie technique : Comment relier Passkey et blockchain
Le problème principal : la plupart des blockchains (Bitcoin, Ethereum) utilisent la courbe secp256k1, tandis que les smartphones modernes pour Passkeys utilisent secp256r1 (P-256). Elles ne se comprennent pas directement.
La solution est venue avec ERC-4337 (Account Abstraction). Désormais, votre portefeuille n’est pas seulement une paire de clés — c’est un smart contract.
Exemple d’implémentation (code conceptuel)
Un module de vérification de signature Passkey est ajouté au smart contract du portefeuille. Lorsque vous posez votre doigt sur le scanner, le téléphone crée une signature que le smart contract vérifie sur la blockchain.
// Solidity
// Exemple simplifié de logique de vérification Passkey dans un smart contract
function validateUserOp(UserOperation calldata userOp, bytes32 userOpHash) internal override returns (uint256) {
// Extraire les composants de la signature (r, s) et les coordonnées de la clé publique
(bytes32 r, bytes32 s, uint256 x, uint256 y) = abi.decode(userOp.signature, (bytes32, bytes32, uint256, uint256));
// Utiliser le précompilé P-256 (RIP-7212) pour vérifier la signature
// Cela permet au portefeuille de « comprendre » la biométrie de votre iPhone
bool isValid = P256Verifier.verify(userOpHash, r, s, x, y);
if (!isValid) return SIG_VALIDATION_FAILED;
return 0;
}
Fait peu connu : Jusqu’en 2024, vérifier une telle signature sur Ethereum aurait coûté des sommes folles (50–100 $ par transaction). Avec EIP-7212 (précompilé pour secp256r1) sur les réseaux L2 (Base, Optimism, Arbitrum), le coût de vérification est désormais pratiquement nul.
Conseils pratiques pour les utilisateurs
Si vous voulez passer au mode « sans phrase » dès aujourd’hui, considérez ces options :
- Choix du portefeuille : Utilisez des smart wallets de nouvelle génération : Braavos ou Argent (Starknet), Safe avec module Passkeys, ou Coinbase Smart Wallet.
- Propriété multi-facteurs (2FA renforcé) : Vous pouvez configurer le smart contract pour que les petites transactions nécessitent seulement le Passkey du téléphone, tandis que les grosses exigent la confirmation d’un second appareil (par ex. votre MacBook).
- Récupération sociale : Liez les Passkeys de membres de la famille ou d’appareils de secours comme « Guardians ». Si vous perdez l’accès à tous vos appareils, ils peuvent restaurer votre portefeuille sans phrase de récupération.
Risque principal : Ce que les marketeurs ne disent pas
La seule vulnérabilité des Passkeys est l’accès à votre compte cloud (Apple ID ou Google Account). Si un attaquant prend le contrôle complet de votre iCloud et réinitialise le mot de passe, il pourrait théoriquement synchroniser vos clés sur son appareil.
Solution : Protégez toujours votre compte Apple ID/Google avec une clé matérielle (ex. YubiKey) et activez « Stolen Device Protection » dans les paramètres iOS.
Architecture WebAuthn : Comment le navigateur communique avec la blockchain
Pour qu’une Passkey devienne une transaction sur la blockchain, les données passent par une chaîne qui empêche toute interception. Cela s’appelle l’API WebAuthn.
Le processus se déroule ainsi :
- Challenge : Le smart contract ou le backend du portefeuille envoie une chaîne aléatoire (le challenge) au frontend.
- Authentification biométrique : Le navigateur déclenche la fenêtre système (FaceID/TouchID). Après vérification biométrique réussie, l’appareil signe le challenge avec une clé privée stockée dans le Secure Enclave.
- Réponse : La signature est renvoyée. Elle inclut non seulement la signature cryptographique, mais aussi clientDataJSON (preuve que vous êtes sur le bon domaine, protégeant à 100 % contre le phishing).
Exemple de code pour développeurs frontend (enregistrement Passkey) :
// JavaScript
// Génération des options pour créer une clé
const publicKeyCredentialCreationOptions = {
challenge: Uint8Array.from(randomString, c => c.charCodeAt(0)),
rp: { name: "MyCryptoWallet", id: "wallet.example.com" },
user: {
id: Uint8Array.from("user123", c => c.charCodeAt(0)),
name: "[email protected]",
displayName: "User One"
},
pubKeyCredParams: [{ alg: -7, type: "public-key" }], // -7 signifie ES256 (P-256)
authenticatorSelection: { authenticatorAttachment: "platform" },
timeout: 60000
};
const credential = await navigator.credentials.create({
publicKey: publicKeyCredentialCreationOptions
});
Détail peu connu : "Client Data JSON" et protection contre l’usurpation
Contrairement aux applications bancaires, où une transaction pourrait théoriquement être interceptée par un logiciel malveillant sur le téléphone (keyloggers ou substitution de champs), les Passkeys signent un hash strictement lié à l’Origin (domaine).
- Si vous visitez
my-wallet-scam.com, votre téléphone ne proposera pas la Passkey créée pourmy-wallet.com. - Sur la blockchain, le smart contract vérifie le champ origin dans les données signées. Si un hacker essaie de passer une signature depuis un autre site, le contrat rejettera la transaction. C’est un niveau de protection inaccessible aux cartes bancaires traditionnelles.
Problème de fragmentation : solutions d’infrastructure (Turnkey et Privy)
Les développeurs ont rencontré le problème suivant : comment donner à un utilisateur accès au même portefeuille sur iPhone, Android et Windows lorsque leurs « clouds » (iCloud et Google Drive) ne se recoupent pas ?
C’est là que des solutions comme Turnkey ou Dynamic interviennent. Elles utilisent des modules matériels hautement sécurisés (HSM) dans le cloud.
- Votre Passkey déverrouille l’accès à la clé stockée dans un HSM distribué.
- Cela permet d’avoir « un portefeuille — plusieurs appareils » sans perdre en sécurité.
- Même si le serveur Turnkey est piraté, un attaquant ne pourra pas accéder aux fonds, car la signature nécessite toujours votre vérification biométrique locale.
Clés de session : la magie du « portefeuille invisible »
Les Passkeys combinées à l’Account Abstraction permettent les clés de session. C’est ce qui finit par « tuer » l’expérience utilisateur bancaire — dans le bon sens.
- Comme en banque : Pour chaque transfert — SMS, push, code de l’application. C’est agaçant.
- Comme en crypto avec les Passkeys : Vous utilisez FaceID une fois pour créer une « clé de session » temporaire (par exemple, pour 1 heure ou jusqu’à 100 $). Cette clé est stockée en mémoire dans le navigateur. Vous jouez à un jeu ou tradez sur un DEX, et les transactions se font instantanément sans confirmations constantes. Une fois la limite atteinte ou le temps écoulé, la clé s’autodétruit.
Cas pratique : récupération sans seed phrase
La plus grande peur : « Et si je perds mon téléphone et l’accès à iCloud ? »
L’architecture des portefeuilles Passkey utilise le Social Recovery ou Email Recovery via ZK-Proofs (preuves à divulgation nulle).
Exemple : Vous indiquez votre email lors de l’inscription. Si l’accès est perdu, vous initiez la récupération. Le smart contract vérifie la signature numérique de votre serveur mail (DKIM). Grâce à la technologie ZK, la blockchain voit que le mail vous est bien parvenu, sans publier votre email dans le registre public. Vous liez un nouveau Passkey à l’ancien adresse — et vos fonds vous reviennent. Pas besoin de papier ni de seed phrase.
Nous arrivons à la partie la plus passionnante — la configuration pratique de la sécurité et comment le concept de Passkeys transforme votre portefeuille en un « coffre-fort numérique » personnel avec des règles que vous définissez vous-même.
Sécurité programmable : Limites et rôles
Dans une application bancaire classique, les limites sont définies par la banque. Dans un portefeuille Passkey (ERC-4337), vous définissez les limites dans le code du smart contract. Cela s'appelle Policy Management.
Comment cela fonctionne en pratique :
Vous pouvez configurer votre portefeuille pour exiger différents niveaux d’autorisation selon le montant :
- Jusqu’à 100 $ : Signature avec la clé de session (instantané, sans biométrie).
- De 100 $ à 5 000 $ : Un Passkey requis (FaceID sur votre téléphone).
- Plus de 5 000 $ : Multi-Passkey requis (confirmation depuis le téléphone et votre MacBook).
Exemple de logique (Pseudo-code smart contract) :
// Solidity
function executeTransaction(uint256 amount, bytes calldata signature) external {
if (amount <= smallLimit) {
require(verifySessionKey(signature), "Clé de session invalide");
} else if (amount <= mediumLimit) {
require(verifyPasskey(signature, deviceA), "FaceID requis");
} else {
require(verifyDoublePasskey(signature, deviceA, deviceB), "Authentification sur deux appareils requise");
}
_transferFunds();
}
Technologie peu connue : Paymasters (Gaz payé par l’application)
L’un des principaux problèmes de la crypto est de devoir détenir des tokens natifs (ETH, MATIC) pour payer le « gaz » (frais). Les Passkeys combinées à l’Account Abstraction résolvent cela grâce aux Paymasters.
Comme votre portefeuille est un smart contract, il peut interagir avec un intermédiaire qui paiera le gaz en ETH pour vous et débitera l’équivalent en USDC. Ou même rendre la transaction gratuite dans le cadre d’une promotion.
Résultat : L’expérience utilisateur devient identique à celle d’une banque : vous cliquez sur « Envoyer », vous posez votre doigt et la magie opère. Plus besoin de penser au gaz.
Comparaison : Portefeuille Passkey vs Application bancaire
| Fonction | Application bancaire | Portefeuille Passkey (WebAuthn) |
|---|---|---|
| Propriété | La banque peut geler le compte | Seulement vous (clé dans le Secure Enclave) |
| Connexion | PIN/Biométrie + SMS | Biométrie (niveau matériel) |
| Vulnérabilité au phishing | Élevée (sites faux) | Égal à zéro (lié au domaine) |
| Récupération | Via passeport/bureau | Récupération sociale / ZK-Email |
| Frais | Cachés / Interbancaires | Transparents (réseaux L2) / Paymasters |
Futur : Intégration avec les ID gouvernementaux
En 2026, nous commençons à voir l’intégration des Passkeys avec les identifiants numériques gouvernementaux (eID). Cela permettra de créer des portefeuilles qui « font confiance » uniquement aux signatures générées par la puce gouvernementale de votre carte d’identité ou passeport via NFC.
Cela crée un équilibre idéal :
- Confidentialité : La blockchain ne connaît pas votre nom, elle ne voit que la signature valide.
- Fiabilité : Vous ne perdrez jamais l’accès à vos actifs tant que vous possédez un document officiel.
Checklist pratique pour passer aux Passkeys :
- Créez un portefeuille nouvelle génération : Essayez Clave, Braavos ou Coinbase Wallet (version Smart Wallet).
- Configurez les sauvegardes : Assurez-vous que votre iCloud ou compte Google est protégé par 2FA (clé matérielle comme YubiKey préférable).
- Ajoutez un « Guardian » : Si le portefeuille supporte le Social Recovery, ajoutez une deuxième adresse ou celle d’une personne de confiance pour la récupération.
- Testez les limites : Définissez des limites de dépenses quotidiennes automatiques — cela protège vos fonds même si quelqu’un vous force à déverrouiller votre téléphone.
Conclusion
Les Passkeys ne sont pas seulement un remplacement pratique des phrases de récupération. Elles représentent un changement fondamental dans la sécurité. Nous sommes passés de la « sécurité par mémorisation » à la « sécurité par mathématiques et puces physiques ». Aujourd’hui, posséder des millions en crypto via un simple smartphone est plus sûr que de les garder dans une banque qui repose sur des protocoles obsolètes et le facteur humain.