Qu’est-ce qu’une clé publique ?
Une clé publique est la partie partageable d’une paire de clés cryptographiques asymétriques. Dans les systèmes de signature numérique utilisés par de nombreuses blockchains, une clé privée produit une signature et la clé publique correspondante permet à des tiers de la vérifier sans découvrir la clé privée.
Cette définition est volontairement plus précise que l’affirmation selon laquelle une clé publique « prouve l’identité » d’une personne. Une vérification réussie montre qu’une signature est valide pour des données et une clé données. Relier cette clé à une personne, une organisation ou une opération voulue nécessite des informations extérieures à l’algorithme. La norme de signature numérique du NIST distingue elle aussi la création d’une signature avec la clé privée de sa vérification avec la clé publique. NIST FIPS 186-5
D’une valeur privée à une clé vérifiable
Les opérations mathématiques exactes dépendent du schéma de signature. Dans un système à courbes elliptiques, une clé privée est un nombre appartenant à une plage autorisée et la clé publique est un point de la courbe calculé à partir de ce nombre et de paramètres de domaine convenus. SEC 1 exprime cette relation par Q = dG, où d est la clé privée et G le point de base de la courbe. Le document impose aussi de valider les clés publiques : une suite d’octets arbitraire n’est pas nécessairement un point valide. SEC 1: Elliptic Curve Cryptography
Le calcul est conçu pour être réalisable de la clé privée vers la clé publique, tandis que retrouver la valeur privée depuis une clé publique correctement générée est considéré comme irréalisable en pratique selon les hypothèses du schéma. Cette assurance dépend néanmoins de la génération des clés, des paramètres, de l’implémentation et de leur gestion ; la « cryptographie à clé publique » ne garantit pas à elle seule qu’un portefeuille ou un appareil est correctement conçu.
Des encodages différents peuvent représenter la même autorité de signature. Bitcoin utilise par exemple des encodages compressés et non compressés des clés publiques elliptiques. Les octets sérialisés — et parfois l’adresse qui en est dérivée — diffèrent, même si les deux encodages décrivent le même point. Bitcoin Developer Guide: wallets
Ce que la vérification d’une signature établit
Un processus simplifié comporte quatre étapes :
- le portefeuille prépare les données dont le réseau attend l’autorisation ;
- l’algorithme de signature combine ces données avec la clé privée ;
- le vérificateur applique l’algorithme correspondant aux données signées, à la signature et à la clé publique ;
- le réseau contrôle séparément ses autres règles, notamment le format, les conditions de dépense, les soldes ou les nonces.
Modifier les données signées invalide normalement la signature d’origine. Mais une signature valide ne dit pas si l’opération était avantageuse, si l’interface en a affiché tous les détails ou si le détenteur de la clé en voulait les conséquences réelles. Elle participe à l’autorisation du réseau ; ce n’est pas une preuve universelle d’identité ou de confiance.
Clé publique, adresse blockchain et compte
- Clé publique : donnée cryptographique servant à la vérification ou à d’autres opérations à clé publique.
- Adresse blockchain : identifiant propre à un réseau, souvent obtenu par hachage et encodage, ou créé à partir d’autres données de déploiement.
- Compte : état ou dispositif d’autorisation associé à une adresse sur le réseau.
Pour un compte externe Ethereum (EOA), l’adresse correspond aux 20 derniers octets du hachage Keccak-256 de la clé publique. Les adresses de contrats suivent d’autres règles et les comptes de contrats n’ont pas leur propre clé privée. Ethereum emploie en outre des clés BLS pour les validateurs, distinctes de la paire d’un EOA. Une adresse Ethereum n’est donc pas toujours une clé publique ni la preuve d’une correspondance avec une seule paire de clés. Ethereum accounts
Bitcoin illustre une autre variante : les formats d’adresse courants encodent des informations sur un script de dépense ou un engagement de hachage, plutôt qu’une clé publique brute. La clé publique peut n’être révélée qu’au moment de dépenser la sortie concernée. La construction de l’adresse et l’exposition de la clé dépendent donc du réseau et du type de sortie.
Clés publiques ordinaires et clés publiques étendues
Une clé publique ordinaire représente un membre d’une paire. Une clé publique étendue BIP-32 associe une clé publique, un code de chaîne et des métadonnées de dérivation. Elle peut dériver des clés publiques descendantes sur les branches non renforcées sans disposer des clés privées correspondantes. Cela facilite les systèmes en lecture seule, mais révèle un groupe de clés liées à toute personne qui reçoit la clé étendue. BIP-32: Hierarchical Deterministic Wallets
Une clé publique étendue ne peut pas dériver d’enfants renforcés et ne doit pas être considérée comme anodine au seul motif qu’elle ne signe pas. BIP-32 décrit aussi un scénario de compromission plus grave : associer une clé publique étendue à la clé privée d’un descendant non renforcé correspondant peut exposer des clés privées parentes et sœurs de cette branche. Cette propriété concerne ce schéma de dérivation, pas toutes les clés publiques ordinaires.
Ce que les clés publiques protègent — ou non — en matière de confidentialité
La publication d’une clé publique ordinaire ne révèle pas la clé privée selon les hypothèses de difficulté du schéma. Elle peut toutefois avoir des conséquences sur la confidentialité : réutiliser une clé ou une adresse, publier une clé publique étendue ou relier des adresses par leur activité transactionnelle peut faciliter l’association d’activités distinctes.
Les clés publiques ne masquent généralement pas non plus le contenu des transactions. La cryptographie à clé publique comprend le chiffrement et l’accord de clés, mais, dans l’autorisation d’une transaction, une clé de signature sert à vérifier la signature. Le chiffrement éventuel de données relève d’une autre propriété du protocole.
FAQ
Deux adresses peuvent-elles utiliser la même clé publique ?
Cela dépend du réseau et du format. Différents encodages ou scripts peuvent produire plusieurs adresses liées à une même clé. Il faut appliquer les règles du réseau concerné plutôt que supposer une relation universelle « une adresse, une clé ».
Une clé publique suffit-elle pour dépenser des crypto-actifs ?
En principe, non. La clé publique permet la vérification ; une dépense contrôlée par une clé exige une signature valide ou le respect des conditions applicables. Les comptes contrôlés par contrat et les dispositifs multisignatures peuvent appliquer des règles qui ne se résument pas à une seule clé publique.
Concepts associés
Pour une comparaison plus détaillée, consultez l’article en anglais Private keys vs public keys.
Consultez les articles sur les clés privées, les adresses blockchain, les phrases de récupération et les portefeuilles crypto, ou revenez au glossaire crypto.
Sources
- NIST FIPS 186-5: Digital Signature Standard — génération des signatures, vérification et schémas approuvés.
- NIST SP 800-57 Part 1 Rev. 5 — types de clés publiques et privées et limites de leur gestion.
- SEC 1 Version 2.0 — génération et validation des paires elliptiques et opérations de signature.
- Ethereum: accounts — clés des EOA, dérivation des adresses, comptes de contrats et clés de validation.
- BIP-32 — dérivation ordinaire, renforcée et par clé publique étendue.
- Bitcoin Developer Guide: wallets — encodages des clés, relations avec les adresses et portefeuilles HD.




