Une nouvelle approche de la confidentialité onchain
Les blockchains sont transparentes par conception : c’est idéal pour l’audit, mais cela pose un vrai problème pour les applications qui nécessitent la confidentialité. @dfinity travaille sur ce compromis depuis des années, et sa réponse est désormais en ligne en production : une fonctionnalité appelée vetKeys, abréviation de Verifiable Encrypted Threshold Keys.
vetKeys sur l’Internet Computer relève le défi fondamental du stockage des secrets en chaîne (onchain) en permettant la dérivation cryptographique de clés sans exposer les clés privées à quiconque, à l’exception de l’utilisateur. Le mécanisme fonctionne au niveau du sous-réseau (subnet). Lorsqu’un canister demande une clé, aucun nœud ne gère la tâche à lui seul. Chaque nœud du réseau crée indépendamment sa propre part secrète de la clé vetKey finale, puis chiffre sa part avec la clé de transport de l’utilisateur. Un quorum de ces parts chiffrées est ensuite combiné, de sorte que ni les nœuds ni le canister ne détiennent jamais la clé brute en clair. Les utilisateurs peuvent aussi vérifier que la clé est bien sortie correctement du protocole et n’a pas été modifiée (altérée).
Et surtout, la clé n’est jamais stockée quelque part. Elle est reconstruite à la demande à partir des mêmes entrées à chaque fois, ce qui signifie qu’un utilisateur qui se connecte sur un nouvel appareil recevra la même clé, sans avoir à retenir un mot de passe ni à transporter une phrase de sauvegarde. Avec vetKeys, les utilisateurs peuvent bénéficier d’un chiffrement de bout en bout sans avoir à mémoriser des clés de déchiffrement ou des mots de passe, car la gestion des clés est fournie par l’ICP.
Disponible sur le mainnet depuis juillet 2025
Avec l’étape Niobium, le protocole Internet Computer a franchi une étape importante vers de nouveaux niveaux de confidentialité pour la blockchain : la fonctionnalité vetKeys est désormais en ligne et disponible pour tous les développeurs construisant sur l’ICP. Le contrôle d’accès est géré entièrement dans la logique applicative, et non dans la couche cryptographique. L’application décide qui peut demander une clé via son propre code, et chaque demande de clé coûte au canister un petit montant en cycles.
Avec vetKeys, les développeurs peuvent créer des dapps où les données des utilisateurs sont chiffrées, répondant pour la première fois à des besoins de confidentialité sur une blockchain publique. Les vetKeys reposent sur un nouveau protocole de dérivation de clés à seuil chiffrées de manière vérifiable, appelé vetKD, qui permet aux contrats intelligents de canister de gérer et de demander des clés cryptographiques, dérivées et chiffrées de façon sécurisée avec la clé publique d’un utilisateur.
De nombreuses applications du monde réel reposent sur la confidentialité, notamment la messagerie, l’identité, la santé, la finance, la gouvernance et le jeu. Avec vetKeys, les développeurs peuvent intégrer sans friction le chiffrement de bout en bout dans leurs applications, en s’assurant que les données sensibles restent protégées même sur une blockchain publique.
Sources
DFINITY : L’ère de la confidentialité de l’Internet Computer, avec vetKeys déverrouillés
Référentiel GitHub DFINITY vetKeys
La Fondation DFINITY lance une étape Niobium
