Première publication : 14/06/2023
Dernière mise à jour : 11/05/2025
Les cryptomonnaies font appel à des fonctions avancées de la cryptographie. Et ce dès l'origine du bitcoin. Deux notions de vocabulaire, issues de la cryptographie, sont indispensables à la compréhension des transactions Bitcoin : clé privée, clé publique. Intéressons-nous aux origines de la cryptographie, avant de donner une définition de ces deux termes essentiels dans la blockchain, pour accéder à des informations et sécuriser des données.
L'origine de la cryptographie
Le mot cryptographie est dérivé des mots grecs kruptos signifiant "caché" et graphein se traduisant par écrire. Déjà Jules César utilisait des messages cryptés au IIIe siècle avant JC. Durant la seconde Guerre mondiale, la cryptographie devient assistée par ordinateur. Alan Turing, à l'origine de l'informatique, est appelé par l'armée pour décrypter les messages de l'armée allemande, réputés indéchiffrables, provenant de la machine Enigma. Tout d'abord utilisée par les agences de renseignement et l'armée, la cryptographie s'est étendue à la sphère privée, en devenant une branche entière de l'informatique.
Quel est l'intérêt pour les cryptomonnaies d'utiliser deux clés, une clé privée et une clé publique ?
La cryptographie peut se définir comme une technique d'écriture d'un message codé à l'aide de clés de chiffrement. Le principe est d'empêcher des tierces personnes d'accéder aux données confidentielles. Il existe deux types de clé de chiffrement :
- la cryptographie symétrique : cette méthode de chiffrement utilise une clé unique pour chiffrer et déchiffrer un message. Par exemple, une personne va partager sa clé avec une autre, pour qu'elle comprenne le message.
- la cryptographie asymétrique, encore appelée cryptographie à clé publique ou PKC (Public Key Cryptography ) : le processus nécessite l'utilisation de deux clés : une clé publique pour chiffrer le message et une clé privée pour le déchiffrer. Tout le monde peut ainsi envoyer un message à l'aide d'une clé publique. Seule la clé privée du destinataire permettra de le déchiffrer. La cryptographie asymétrique permet ainsi d'assurer la protection des transactions en cryptomonnaies de blockchains comme Bitcoin.
La clé publique peut être connue de tout le monde, alors que la clé privée est connue uniquement par celui qui la détient.
Le couple clé privée/clé publique est donc essentiel pour la blockchain. L'outil idéal pour créer des clés, et tout ce qui touche au domaine des cryptomonnaies, est le système Openssl, au travers de l'outil en ligne de commande ssh-keygen. La paire de clé cryptographique est une suite de chiffres qui sont liés à un algorithme de chiffrement, comme RSA ou les courbes elliptiques. Une clé API, clé de programmation d'application, utilise l'algorithme de chiffrement RSA pour sécuriser les échanges entre les deux parties, en s'assurant de l'identité de son utilisateur.
La clé privée : déchiffrer un message
Lorsque vous créez un portefeuille sur votre ordinateur, une clé privée vous est attribuée. Elle est comparable, par analogie, à un password ou au code PIN pour accéder à votre compte bancaire : elle doit rester secrète, car elle vous permet de transférer des bitcoins et de signer des transactions. Établie à partir d'un nombre aléatoire entre 1 et 2 puissance 256, elle devient une chaine de caractères commençant par les lettres K, C ou 5. Grâce à ce procédé, il est impossible de trouver par hasard 2 clés identiques. Clé privée et clé publique associées vous permettent d'accéder à vos fonds sur la blockchain. Pour conserver la clé privée en toute sécurité, il est recommandé de la stocker dans un wallet, de type paper wallet ou hardware wallet. Si vous perdez votre clé privée, vous n'avez plus accès à vos bitcoins. Et si quelqu'un la connait, il peut s'approprier vos bitcoins.
La clé publique : chiffrer un message
Grâce à la clé privée, on peut calculer la clé publique. Elle est assimilable à l'IBAN de votre compte en banque. Elle est nécessaire pour pouvoir faire des transactions avec un tiers. Une fonction cryptographique est possible pour retrouver la clé publique à partir de la clé privée, mais l'inverse est impossible. Impossible de remonter jusqu'à la clé privée à partir de la clé publique. La fonction mathématique est à sens unique, idéale pour valider une authentification, la falsification étant impossible.
En résumé :
Grâce à la paire de clés, vous pouvez être identifié par un tiers, en lui donnant à l'avance votre clé publique et vous pouvez ensuite communiquer avec votre clé privée. Seules les clés d'une même paire peuvent se comprendre.
Par exemple :
Alice crée une clé publique que les utilisateurs du réseau connaissent et à laquelle ils peuvent envoyer des bitcoins. Seule Alice peut accéder à ses fonds, étant la seule disposant de la clé privée associée à la clé publique.
La clé privée est ainsi la signature numérique d'Alice. Elle présente de nombreux avantages :
- l'authentification de la personne à l'origine de la transaction
- la confidentialité : seule la clé privée du destinataire lui permet de déchiffrer le message
- l'intégrité des données
Sur la blockchain, les mineurs vérifient et valident les transactions, afin de s'assurer qu'il n'y a aucune falsification. Ils utilisent les règles de consensus, la Preuve de travail, « Proof of Work » prouvant la validité des paires clé privée/clé publique. La cryptographie asymétrique permet ainsi d'assurer la sécurité et la protection des transactions en cryptomonnaies de blockchains comme Bitcoin.
FAQ
Qu'est-ce que la cryptographie asymétrique et en quoi diffère-t-elle de la méthode classique ?
La cryptographie classique (symétrique) utilise une seule et unique clé pour verrouiller et déverrouiller un message, ce qui oblige à partager cette clé secrète avec son interlocuteur au risque qu'elle soit interceptée. La cryptographie asymétrique, elle, utilise un duo de clés indissociables : une clé publique que tout le monde peut voir et utiliser pour crypter un message (ou envoyer des fonds), et une clé privée que vous gardez jalousement secrète pour décrypter ce message (ou dépenser ces fonds). Seule la clé privée correspondant exactement à la clé publique peut ouvrir le cadenas.
Quelle est la différence concrète entre ma clé privée et ma clé publique sur Bitcoin ?
Pour faire une analogie bancaire simple : votre clé publique est l'équivalent de votre RIB ou IBAN. Vous pouvez la distribuer à n'importe qui pour recevoir des paiements en bitcoins. En revanche, votre clé privée est votre code PIN secret combiné à votre signature juridique. C'est elle qui prouve que vous êtes le propriétaire des fonds et qui vous donne le pouvoir de les transférer.
Est-il possible pour un pirate de deviner ma clé privée à partir de ma clé publique ?
Non, c'est mathématiquement impossible. La clé publique est générée à partir de la clé privée grâce à une fonction mathématique complexe (appelée courbe elliptique) qui fonctionne exclusivement à sens unique. On peut facilement aller de la clé privée vers la clé publique, mais faire l'inverse requiert de casser un chiffrement basé sur un nombre aléatoire compris entre 1 et $2^{256}$. Trouver deux clés privées identiques par hasard ou remonter le calcul est au-dessus des capacités de n'importe quel ordinateur actuel.
Que se passe-t-il si je perds ma clé privée ou si quelqu'un la découvre ?
Sur la blockchain, il n'y a pas de service client ni de bouton "mot de passe oublié". Vos bitcoins ne sont pas stockés physiquement dans votre ordinateur ou votre téléphone, ils sont inscrits sur le registre de la blockchain, et votre clé privée est l'unique droit d'accès pour les déplacer. Si vous la perdez, vos fonds sont définitivement bloqués pour toujours. Si quelqu'un la découvre, cette personne devient instantanément le propriétaire légitime de vos bitcoins aux yeux du réseau et peut les vider en quelques secondes. C'est pourquoi il est vital de la conserver hors ligne, par exemple sur un hardware wallet (coffre-fort numérique sécurisé).






