Comment les crypto-monnaies utilisent-elles la cryptographie ?

Le guide du débutant sur la cryptographie
Lorsque le protocole Bitcoin a été lancé en 2009, le monde a découvert un nouveau type de système monétaire qui est sécurisé et émis d'une manière complètement différente de celle de l'argent traditionnel.
Les monnaies fiduciaires comme le dollar américain ou le yen japonais sont sécurisées par la confiance dans le système bancaire traditionnel et émises par la banque centrale de chaque pays. Toute nouvelle monnaie entre en circulation en fonction d'une politique monétaire flexible décidée par chaque gouvernement national. En un sens, les monnaies fiduciaires sont soutenues par la confiance dans le pouvoir financier des pays individuels et les armées qui protègent ce pouvoir.
Bitcoin, en revanche, et par la suite toutes les cryptomonnaies créées à la suite du lancement de Bitcoin, sont sécurisées et émises en utilisant la pratique scientifique de la "cryptographie".
En fin de compte, Bitcoin fonctionne sur une politique monétaire prédéterminée et contrôlée par ordinateur que personne, aucune entreprise ou aucun gouvernement ne peut changer. Plutôt que de faire confiance au gouvernement ou aux institutions, les utilisateurs de Bitcoin font confiance à la cryptographie et à l'ensemble transparent de règles du protocole qui lui permettent de fonctionner de manière fiable, indépendamment de son prix sur le marché ou du sentiment du marché.

Qu’est-ce que la cryptographie ?
La cryptographie est l'étude du chiffrement et du déchiffrement des informations. En bref, c'est la pratique de modifier un message de sorte que seul l'expéditeur et le destinataire ou les destinataires prévus puissent le comprendre.
Si un message chiffré devait être intercepté par quelqu'un d'autre que le destinataire prévu, la cryptographie rendrait presque impossible pour l'intercepteur de comprendre quelles informations il contenait.
Un des premiers exemples de cryptographie remonte au 7ème siècle avant J.-C. lorsque les Grecs anciens enroulaient des bandes de cuir avec des messages secrets écrits dessus autour de bâtons – une méthode de chiffrement connue sous le nom de scytale. Une fois déroulée, la bande de cuir aurait une gribouille de lettres dessus que seule une personne ayant un bâton similaire de diamètre égal pourrait déchiffrer.
En temps de guerre, la cryptographie a joué un rôle vital dans la sécurisation des communications qui peuvent être interceptées entre des forces dispersées. Pendant la Seconde Guerre mondiale, l'utilisation de la cryptographie pour déchiffrer les transmissions radio nazies chiffrées de la machine de chiffrement Enigma s'est révélée décisive pour mettre fin à l'invasion en Europe.
Avançons jusqu'à aujourd'hui et la cryptographie joue désormais un rôle fondamental dans la sécurité et l'émission de cryptomonnaies comme le bitcoin.
La cryptographie est un composant important des cryptomonnaies, utilisé pour :
- Créer des paires de clés de portefeuille crypto
- Émettre de nouveaux bitcoins par le biais du processus de minage
- Signer numériquement les messages de transaction
Comment Bitcoin utilise-t-il la cryptographie ?
Sécurité du réseau
La somme totale des ressources informatiques dirigées vers le minage de bitcoin aide à sécuriser le réseau contre les cyberattaques. Cela est connu collectivement comme le "taux de hachage" d'un réseau. Plus il y a de mineurs sur le réseau, plus le taux de hachage est élevé et plus la puissance de calcul nécessaire pour submerger le réseau par une majorité de 51 % est grande.
Une attaque à 51 % est l'une des plus grandes menaces pour les réseaux blockchain publics. Les agents malveillants capables de regrouper suffisamment de ressources pour contrôler au moins 51 % du taux de hachage d'une blockchain obtiennent la capacité de bloquer les transactions entrantes, de changer l'ordre des transactions et de dépenser deux fois des fonds. Cependant, en rendant le processus difficile sur le plan computationnel, le réseau bitcoin empêche les acteurs malveillants de prendre le contrôle du réseau.
Immutabilité
Le hachage SHA-256 est également responsable de rendre les transactions basées sur la blockchain immuables.
Une fois que les transactions sont regroupées dans de nouveaux blocs et vérifiées par tous les autres bénévoles du réseau, chaque message de transaction est haché à l'aide de l'algorithme cryptographique SHA-256.
Ces transactions déjà hachées sont ensuite systématiquement hachées ensemble par paires pour créer quelque chose connu sous le nom de "Merkle Tree". Les paires de transactions sont hachées ensemble jusqu'à ce que finalement toutes les transactions dans le bloc soient représentées par une seule valeur de hachage. Cette valeur unique devient la racine Merkle et est stockée dans l'en-tête du bloc.
Parce que les hachages sont déterministes – ce qui signifie que la même entrée créera toujours la même valeur de sortie unique – toute tentative d'acteurs malveillants de modifier un bloc de transactions entraînera une toute nouvelle valeur de racine Merkle. D'autres bénévoles dans le système seraient capables de voir la racine Merkle altérée par rapport au bloc valide et de la rejeter, empêchant ainsi à l'unanimité la corruption.
Fonctionnement sans confiance
La nature déterministe des algorithmes cryptographiques permet aux utilisateurs du réseau de transiger des bitcoins sans avoir besoin d'un intermédiaire de confiance pour vérifier et traiter les paiements.
En restant décentralisés et en éliminant l'implication humaine, les transactions peuvent être traitées beaucoup plus rapidement et les frais sont souvent beaucoup moins chers que les solutions bancaires traditionnelles.
Quelle cryptographie utilise Bitcoin ?
Génération de clés privées et publiques
Bitcoin utilise la cryptographie à courbe elliptique (ECC) et l'Algorithme de Hachage Sécurisé 256 (SHA-256) pour générer des clés publiques à partir de leurs clés privées respectives.
Une clé publique est utilisée pour créer une adresse de portefeuille crypto pour recevoir des transactions entrantes, tandis que la clé privée est nécessaire pour signer des transactions et prouver la propriété des fonds.
Vous pouvez penser à la clé privée comme à votre code PIN bancaire et à la clé publique comme à votre numéro de compte bancaire. Un hacker a besoin des deux pour faire quelque chose de malveillant avec vos finances.
La clé privée est la partie cruciale de la paire de clés et est stockée dans un portefeuille crypto. Techniquement, un portefeuille crypto stocke l'accès d'une personne à ses fonds crypto – pas la cryptomonnaie elle-même. Les fonds eux-mêmes ne sont que des entrées de données enregistrées sur la blockchain et peuvent être identifiés et déverrouillés à l'aide des clés stockées dans votre portefeuille.
Cryptographie à courbe elliptique
L'ECC est l'utilisation d'une courbe mathématique spéciale qui est symétrique horizontalement. Si vous tracez une ligne à travers cette courbe, elle interceptera la forme jusqu'à un maximum de trois fois. L'ECC est une partie importante de la cryptomonnaie et permet aux utilisateurs de générer une clé publique.
Pour générer une paire de clés Bitcoin, vous devez d'abord créer une clé privée.
Une clé privée bitcoin est un nombre aléatoire de 256 bits (entre 1 et 2²⁵⁶, ou deux à la puissance de deux cent cinquante-six – un nombre incroyablement grand !). Sur des services comme Kraken, ce nombre est créé automatiquement lors de la configuration d'un nouveau portefeuille crypto.
La clé publique est ensuite générée à partir de ce nombre en utilisant la multiplication de courbe elliptique. Cela implique de prendre un point de départ sur une courbe elliptique (appelé point générateur) et de le multiplier par le nombre aléatoire de clé privée pour produire un nouveau point sur la courbe.
Ce nouveau point devient la clé publique avec des coordonnées x et y spécifiques. Trouver la clé privée tout en connaissant la clé publique est presque impossible en raison de la difficulté à deviner un nombre aléatoire de 256 bits. Il y a environ une chance sur 150 000 milliards de milliards de milliards de milliards de milliards de milliards de milliards d'obtenir la bonne réponse.
Théoriquement, il faudrait un ordinateur quantique avec plus de 13 000 000 qubits physiques pour trouver ce nombre en une journée. À ce jour, l'un des ordinateurs quantiques les plus avancés au monde, le processeur IBM Eagle, ne possède que 127 qubits (soit 0,00097 % de la quantité de qubits requise).
En d'autres termes, les systèmes utilisés par les cryptomonnaies sont, du moins pour l'instant, complètement sécurisés.
SHA-256
Pour créer une adresse de portefeuille bitcoin, les coordonnées x et y sont passées par l'algorithme SHA-256.
Cette fonction de hachage cryptographique a été développée et publiée par l'Agence nationale de sécurité des États-Unis (NSA) en 2001, et transforme essentiellement toute entrée (dans ce cas, les coordonnées de la clé publique) en un code unique de longueur fixe de 256 bits.
Ce code est présenté au format hexadécimal de 64 caractères, contenant un mélange de chiffres de 0 à 9 et de lettres A-F.
Les fonctions cryptographiques ECC et SHA-256 sont connues sous le nom de fonctions « à porte dérobée » ou « déterministes ». Cela signifie qu'elles ne fonctionnent que dans un sens et ne peuvent pas être inversées pour révéler les entrées originales.
Bien qu'il soit possible de créer une clé publique à partir d'une clé privée, il est impossible d'inverser le processus et de révéler la clé privée. Il en va de même pour essayer de découvrir quelle clé publique a été utilisée pour créer une adresse de portefeuille bitcoin. Seul le détenteur de la clé publique a cette information et peut l'utiliser pour prouver la propriété de l'adresse de portefeuille bitcoin.
Besoin d'une meilleure façon de comprendre cela ? Imaginez que quelqu'un ait mélangé une variété de peintures de différentes couleurs à partir d'une sélection de, comme nous l'avons noté précédemment, 150 000 milliards de milliards de milliards de milliards de milliards de milliards d'options pour créer une couleur unique.
Si vous connaissiez les quantités exactes des bonnes peintures, vous pourriez reproduire exactement la même couleur. Mais que se passerait-il si vous ne le saviez pas ? Essayer d'inverser le processus serait presque impossible.
C'est, en essence, comment ces fonctions cryptographiques à porte dérobée fonctionnent et ce qui permet à leurs entrées d'être méconnaissables par rapport à la sortie.
Émission de nouveaux bitcoins
De nouvelles unités de bitcoin entrent dans la circulation par un processus appelé minage.
L'exploitation minière fait partie du mécanisme de consensus de preuve de travail utilisé par la blockchain de Bitcoin pour sélectionner des participants honnêtes afin d'ajouter de nouveaux blocs de données.
Cela se fait par l'utilisation du hachage SHA-256. Des milliers de bénévoles du réseau – connus sous le nom de nœuds mining – s'affrontent les uns contre les autres en utilisant des ordinateurs spécialement conçus pour générer des trillions de hachages par seconde.
Les mineurs prennent d'abord l'en-tête du bloc – la partie qui contient toutes les informations de niveau supérieur sur le bloc, y compris son horodatage, la valeur cible que les mineurs doivent battre et d'autres composants clés – du bloc le plus récent de la chaîne et ajustent le nombre de quelque chose appelé nonce.
Nonce est un mnémonique qui représente un nombre utilisé une seule fois. C'est la partie d'un en-tête de bloc qui peut être modifiée pour créer une nouvelle valeur hachée.
L'objectif de la compétition d'exploitation minière basée sur la cryptographie est simple. Les mineurs utilisent leurs machines pour ajuster automatiquement le numéro de nonce dans l'en-tête du bloc et le faire passer par l'algorithme de hachage SHA-256 pour produire une valeur.
Le mineur qui produit une valeur ayant le même nombre ou plus de zéros devant par rapport à la valeur cible remporte la compétition. Si la valeur ne dépasse pas la valeur cible, les mineurs ajustent à nouveau le numéro de nonce, rehashent l'en-tête du bloc et produisent une nouvelle valeur.
Ce processus est répété jusqu'à ce que quelqu'un réussisse.
Le bitcoin nouvellement frappé est attribué à chaque mineur réussi en fonction d'un calendrier d'émission fixe préprogrammé dans le code source de Bitcoin par son créateur, Satoshi Nakamoto.
La cryptographie joue un rôle vital dans le traitement des transactions bitcoin et le maintien de la sécurité du réseau grâce au processus de minage. Vous pouvez consulter l'article du Kraken Learn Center Qu'est-ce que l'exploitation minière de Bitcoin ? pour en savoir plus.
Signatures numériques
Les signatures numériques sont cruciales pour permettre aux expéditeurs de prouver qu'ils possèdent la clé privée correspondante à une clé publique spécifique sans avoir à révéler leur clé privée à quelqu'un.
Bitcoin utilise un algorithme de signature numérique à courbe elliptique (ECDSA) pour approuver cryptographiquement et envoyer des transactions depuis un portefeuille crypto.
Cela implique que l'expéditeur prenne un message de transaction haché – qui comprend l'adresse du portefeuille du destinataire, le montant de BTC envoyé, les frais attachés et d'où provient le bitcoin à l'origine – ajoute sa clé privée et crée une signature numérique en utilisant un autre processus mathématique unidirectionnel.
Plus précisément, cela implique un processus similaire à la création de la clé publique à partir d'une clé privée mentionnée précédemment, avec l'ajout de quelques étapes supplémentaires.
Un nombre aléatoire est créé (similaire à une clé privée), qui est ensuite multiplié par le même point générateur utilisé pour créer la clé publique du portefeuille, afin de créer un nouveau point sur une courbe elliptique. Appelons cela le Point A.
La coordonnée X du Point A est ensuite multipliée par la clé privée de l'expéditeur et ajoutée au message de transaction haché. Tout cela est ensuite divisé par le nombre aléatoire généré au début pour produire une nouvelle valeur. Cette valeur sert de signature numérique.
Pour vérifier la signature numérique, le destinataire dérive deux points sur une courbe elliptique. Tout d'abord, le message est divisé par la valeur de la signature numérique pour obtenir le point générateur. Ensuite, la coordonnée X du point générateur est divisée par la valeur de la signature numérique pour révéler le deuxième point sur la courbe.
Enfin, tracer une ligne à travers ces deux points produit un troisième et dernier point sur la courbe elliptique. Ce point final doit avoir exactement la même coordonnée X que le Point A, prouvant ainsi que la signature numérique a été créée en utilisant la clé privée correspondante correcte.
Heureusement, un portefeuille crypto numérique effectue tout ce processus de vérification automatiquement, sans aucune intervention de l'utilisateur.
Pourquoi la cryptographie est-elle importante ?
La cryptographie joue un rôle essentiel non seulement dans la sécurisation des réseaux de crypto-monnaies contre la corruption, mais aussi dans la fourniture d'un moyen irréfutable de prouver la propriété des fonds sans obliger les utilisateurs à renoncer à leurs informations sensibles de clé privée.
Sans cela, les réseaux de crypto-monnaies seraient probablement contraints de s'appuyer sur des intermédiaires centralisés de confiance pour sécuriser leurs informations et faciliter les paiements, ce qui contredit complètement la nature décentralisée des crypto-monnaies basées sur la blockchain publique.
Maintenant que vous comprenez la technologie qui alimente les crypto-monnaies, il est temps de commencer avec l'échange d'actifs numériques le plus transparent et le plus fiable.
Lancez-vous avec Kraken
Prêt à passer à l’étape suivante de votre expérience crypto avec une plateforme d’échange fiable et transparente ? Cliquez sur le bouton ci-dessous et lancez-vous avec Kraken dès aujourd’hui !