Clés publiques, clés privées et adresses : ce que chacune fait réellement
Trois choses que l’on emploie indifféremment et qui remplissent des rôles totalement distincts. Les démêler est ce qui rend toutes les autres décisions de sécurité évidentes.
Presque toutes les erreurs graves en crypto remontent à la confusion de trois choses aux noms proches et aux comportements sans rapport. Une fois la distinction claire, la plupart des conseils de sécurité cessent d’être une liste de règles à mémoriser et deviennent évidents.
La clé privée signe
Une clé privée est un très grand nombre secret. Sa seule fonction est de produire des signatures : pour une transaction donnée, elle génère une preuve que le détenteur de la clé l’a autorisée. C’est tout son rôle.
La propriété déterminante est qu’une signature peut être vérifiée par quiconque sans révéler la clé qui l’a produite. C’est ce qui fait fonctionner le système tout court. C’est aussi pourquoi la clé privée est la seule des trois à devoir rester secrète, et pourquoi quiconque l’obtient peut déplacer vos fonds sans autre étape. Il n’y a pas de couche de mot de passe en dessous, ni d’autorité capable d’en annuler le résultat.
La clé publique vérifie
La clé publique se dérive de la clé privée par un calcul à sens unique. Avec la clé privée, vous calculez la publique sans effort ; à partir de la publique, aucun moyen praticable ne permet de retrouver la privée. Cette asymétrie est tout le fondement.
Son rôle est la vérification. Quiconque détient la clé publique peut contrôler qu’une signature a été produite par la clé privée correspondante : c’est ainsi que le réseau confirme qu’une transaction a été autorisée par celui ou celle qui contrôle les fonds. La publier ne vous coûte rien.
L’adresse reçoit
Une adresse se dérive de la clé publique, généralement en la hachant et en y ajoutant une somme de contrôle. Elle est plus courte, intègre une détection d’erreur — une adresse mal saisie est donc presque toujours rejetée plutôt qu’acceptée — et sur la plupart des réseaux elle ne révèle pas la clé publique tant que vous n’avez pas dépensé depuis elle.
Son rôle est d’être communiquée. Une adresse est une destination, rien de plus. En partager une n’expose vos fonds à aucun risque ; le pire résultat est une perte de confidentialité, puisque quiconque dispose de l’adresse peut consulter son historique de transactions sur un registre public.
Où se place la phrase de récupération
Une phrase de récupération n’est pas une quatrième clé. C’est un encodage lisible par un humain du nombre qui engendre vos clés privées — en général toutes, sur de nombreuses adresses, de façon déterministe. C’est pourquoi une seule phrase peut restaurer un portefeuille entier.
Il s’ensuit directement qu’une phrase de récupération est strictement plus sensible que n’importe quelle clé privée isolée, puisqu’elle leur équivaut toutes à la fois. Chaque règle à son sujet — ne jamais la saisir sur un site web, ne jamais la photographier, ne jamais la stocker dans un gestionnaire de mots de passe que vous ne contrôlez pas — découle de ce seul fait et non de la superstition. Notre entrée de glossaire traite de l’encodage lui-même.
Ce que cela rend évident
Une fois les trois rôles clarifiés, plusieurs conseils standards n’ont plus besoin d’être mémorisés :
- Partager une adresse est sans danger, parce qu’une adresse ne fait que recevoir. Partager une clé privée est la perte totale, parce qu’une clé privée signe.
- Un portefeuille matériel a de la valeur précisément parce qu’il effectue la signature à l’intérieur de l’appareil : la clé privée n’existe donc jamais sur un ordinateur connecté à internet.
- « Vérifiez l’adresse » concerne la somme de contrôle et les logiciels malveillants qui remplacent le presse-papiers, pas le secret.
- Un service qui réclame votre phrase de récupération pour « valider » ou « restaurer » quoi que ce soit réclame toutes les clés que vous possédez. Il n’existe aucune version légitime de cette demande.
La relation à sens unique
La direction de la dérivation mérite d’être retenue : phrase de récupération → clé privée → clé publique → adresse, chaque étape facile vers l’avant et infaisable vers l’arrière. Toutes les conséquences pratiques découlent de cette flèche. Vous pouvez distribuer librement l’extrémité éloignée et devez protéger absolument l’extrémité proche, et rien entre les deux ne change cela.
Pourquoi une seule graine produit de nombreuses adresses
Les portefeuilles modernes sont hiérarchiques et déterministes, ce qui est une façon précise de dire qu’une seule graine engendre tout un arbre de clés selon une procédure définie. Chaque branche produit une nouvelle clé privée, et chacune d’elles sa propre clé publique et son adresse.
Deux conséquences utiles en découlent. Un portefeuille peut fournir une adresse neuve à chaque paiement sans nécessiter une nouvelle sauvegarde, puisque toutes ces adresses descendent de la même graine. Et restaurer cette graine dans un autre logiciel retrouve les mêmes adresses, parce que la procédure de dérivation est normalisée et non propriétaire.
Cela explique aussi une confusion fréquente : voir de nombreuses adresses dans un portefeuille ne signifie pas que de nombreux secrets distincts existent. Il y a un secret, et tout le reste en dérive. C’est commode, et c’est précisément pour cela que la phrase de récupération est l’unique point de défaillance totale.
Signer ne révèle pas la clé
Il vaut la peine d’énoncer explicitement la propriété sur laquelle tout repose. Une signature est produite à partir de la clé privée et du message, et se vérifie contre la clé publique — mais observer un nombre quelconque de signatures ne permet pas à un attaquant de reconstituer la clé privée qui les a produites.
C’est ce qui rend sûr le fait de signer à répétition avec la même clé plutôt que d’en exiger une nouvelle à chaque fois. Cela explique aussi pourquoi signer un message pour prouver la propriété d’une adresse est une opération normale et sûre, alors que saisir une phrase de récupération ne l’est jamais. L’une est l’usage prévu du système, l’autre en est la remise.
Là où le modèle se distend
Deux évolutions compliquent ce tableau net, et toutes deux méritent d’être connues car elles changent ce que signifie une signature.
Les dispositifs multisignature exigent plusieurs clés privées pour autoriser une transaction : aucune clé seule ne suffit. Cela supprime le point de défaillance unique au prix d’une récupération plus complexe — vous avez désormais plusieurs secrets à protéger et une règle sur le nombre requis.
L’abstraction de compte, sur les réseaux qui la prennent en charge, permet de programmer les règles régissant un compte plutôt que de les figer : plafonds de dépense, délais, ou récupération par une partie désignée. Utile, et cela signifie que « qui détient la clé contrôle les fonds » n’est plus strictement vrai sur ces réseaux. Le mécanisme de base est inchangé ; ce qui a changé, c’est qui est autorisé à l’invoquer.