Masterclass #12 : tout comprendre sur le hashing crypto et les signatures
Après avoir fait une introduction sur le fonctionnement du Bitcoin, de la blockchain et des transactions, découvrez tout sur la fonction de hash et la signature.
Le hash crypto, qu’est-ce que c’est ?
Après avoir fait une introduction sur le fonctionnement du Bitcoin, de la blockchain et des transactions, concentrons-nous sur la fonction de hash et de signatures.
“Les hachages cryptographiques sont utilisés partout dans Bitcoin. Essayer d’apprendre Bitcoin sans savoir ce que sont les hachages crypto, c’est comme essayer deapprendre la chimie sans savoir ce qu’est un atome.” écrit Kalle Rosenbaum dans son livre Grokking Bitcoin.
En effet, le hachage est un élément essentiel pour le fonctionnement du Bitcoin puisqu’il permet de vérifier et d’obtenir un écosystème exempt de toutes manipulations. Et le Bitcoin repose sur ce fondement, à savoir la transparence et la sécurité mais surtout la confiance.
Comme évoqué précédemment, le hash peut être vu comme une empreinte digitale. Elle permet donc de vérifier l’identité sans révéler d’autres informations compromettantes, comme un compte en banque ou même les passions de cette personne.
Le hashing crypto fonctionne de la même manière. Au lieu de scanner une empreinte digitale, dans le hashing crypto, les données sont envoyées à une fonction crypto de hashing qui elle à son tour va transformer cette information en un output sous la forme d’un “code” de 32-octets.
Dans le cadre du Bitcoin et des cryptos, les informations sont sous la forme d’un input d’hachage, un nombre de 256 bits ( qui est égale à 32 octets) et sont transformées en output par une fonction qui s’appelle SHA-256.
La hashing est un processus de coupage d’une information pour pouvoir la réduire et la rendre plus digeste, comme on pourrait le faire avec nos aliments.
En conséquence, chaque hash est unique et contient des informations plus petites pour faciliter le transfert d’informations. Ces informations seront toutes de la même taille, cette taille dépend de la fonction de hashing (ici 256 pour le Bitcoin soit 32 octets).
Le même input créera donc toujours le même hash. A l’inverse, des inputs de donnés légèrement différentes produiront des hachages très différents.
Alors est-il possible de falsifier une clé privée ?
Avant toute chose, il est important de comprendre comment est généré une clé privée . Une clé privée est générée totalement aléatoirement. Ce sont donc 256 chiffres qui sont tous créés aléatoirement rendant la tâche difficile pour ceux essayant de la falsifier et d’utiliser les fonds d’autrui. Mais il est donc important de la garder sécurisée, car si quelqu’un possède cette clé privée, il pourra alors utiliser vos fonds.
Mais ce qu’il est important de savoir c’est que personne de pourra générer lui même la même clé privée que vous même s’il le désirait. En effet, si par exemple 2 millions de robots pouvaient chacun créer 2 millions de clé privées par seconde, il faudrait des millénaire pour espérer générer une même clé privée que vous.
Chaque clé privée est donc unique et celle qui vous permet de prouver que vos fonds vous appartiennent.
Les signatures
Avant d’aborder les signatures, il est bon de s’attarder sur le fait que chaque clé privée vient également avec une clé publique. Comme son nom l’indique elle est donc publique et peut être partagée avec d’autres personnes.
En somme, elle sert donc à l’utilisateur de pouvoir recevoir ses bitcoins . C’est cette adresse que vous partagez aux autres pour recevoir des fonds.
La clé privée et la clé publique forment donc une paire. Et leur lien est calculé de manière mathématique qu’on appelle la “multiplication de courbe elliptique”.
Le processus est donc le suivant :
- Bob créé un nombre aléatoir (clé privée)
- La clé privée est transformée en une clé publique connectée à l’aide d’une fonction de dérivation mathématique.
Et c’est donc ici qu’interviennent les signatures. Cette connexion entre la clé publique et la clé privée et les signatures permet de déverrouiller et d’autoriser la dépense et l’utilisation des fonds.
Lorsque quelqu’un envoie des fonds, la clé publique est placée dans une sort de “verrou” au-dessus d’un output (le lock). Elle ne pourra donc être ouverte qu’en utilisant la clé privée qui correspond à l’image (la clé publique) qui prouve que vous êtes bien le propriétaire de cette clé publique.
“La clé publique peut être utilisée pour chiffrer les messages que seule la clé privée peut déchiffrer et que la clé privée peut chiffrer les messages que seule la clé publique peut déchiffrer.”
La signature est donc créée lorsque l’on veut utiliser notre clé privée, mais seule la clé publique est utilisée dans le processus, protégeant ainsi la clé privée et donc vos fonds. Cette image créée est donc votre protection contre tout vol et utilisation de vos fonds sans votre consentement.
Les étapes avec la signature sont donc désormais :
- Créer un message, donc une transaction.
- Vous devez utiliser votre clé privée pour signer la transaction et créer la signature.
- La signature est ensuite remise à l’intérieur de la transaction dans ce qu’on appelle le lock avec la clé publique.
Comment sont créées les signatures ?
Avant de tout simplement créer une signature, il est nécessaire de “préparer” les données et donc la clé privée.
Et cette préparation est basée sur deux algorithmes qui permettent de les remettre dans le lock :
- “Algorithme Legacy” : pour déverrouiller uniquement les locks encryptés avec les fonctions : P2PK, P2PKH, P2MS et P2SH.
- Algorithme SegWit : pour déverrouiller uniquement les locks encryptés avec les fonctions : P2WPKH et P2WSH.
La fonction SegWit provient d’une mise à jour permettant de rendre les transactions plus sécurisées et avec un temps de minage de bloc réduit. Les signatures sont probablement le processus le plus difficile à comprendre d’un point de vue théorique.
“Un problème résolu par segwit est le hachage de signature inefficace. Si le nombre d’entrées double, le temps nécessaire pour vérifier la transaction quadruple à peu près.”
Afin d’être déposées, les signatures sont elles aussi “hachées” afin d’être déposées dans le lock. Et chaque hashing permet de vérifier à quelle signature correspond à quelle tansaction.
Sur le même sujet :
- Des Bitcoiners sauvent une école pour orphelins en Ouganda, découvrez leur histoire
- Il invente un signal d’achat Bitcoin révolutionnaire qui ne s’est jamais trompé, faut-il acheter ?
- Masterclass #11 : comment fonctionne le réseau Bitcoin
Sur le même sujet :
- Des Bitcoiners sauvent une école pour orphelins en Ouganda, découvrez leur histoire
- Il invente un signal d’achat Bitcoin révolutionnaire qui ne s’est jamais trompé, faut-il acheter ?
- Masterclass #11 : comment fonctionne le réseau Bitcoin
- Des Bitcoiners sauvent une école pour orphelins en Ouganda, découvrez leur histoire
- Il invente un signal d’achat Bitcoin révolutionnaire qui ne s’est jamais trompé, faut-il acheter ?
- Masterclass #11 : comment fonctionne le réseau Bitcoin
- Des Bitcoiners sauvent une école pour orphelins en Ouganda, découvrez leur histoire
- Il invente un signal d’achat Bitcoin révolutionnaire qui ne s’est jamais trompé, faut-il acheter ?
- Masterclass #11 : comment fonctionne le réseau Bitcoin
Avertissement : le contenu de cet article reflète uniquement le point de vue de l'auteur et ne représente en aucun cas la plateforme. Cet article n'est pas destiné à servir de référence pour prendre des décisions d'investissement.
Vous pourriez également aimer
Croissance explosive de 29 000 % prévue pour le nouveau jeton Meme
Le géant du capital-risque a16z met fin à ses investissements dans des projets de cryptographie britanniques
Le Bitcoin pourrait augmenter de 20 % d’ici les célébrations du Nouvel An chinois
Nouveaux éléments dans le segment memcoin : top 3 des pièces pour remplacer Dogecoin