Les blocs sont des structures de données au sein de la blockchain. C’est là que les données de transaction d’une blockchain de cryptomonnaies sont enregistrées de manière permanente. Un bloc enregistre les transactions les plus récentes qui ne sont pas encore validées par le réseau. Une fois les données validées, le bloc est fermé et ajouté à la blockchain. Ensuite, un nouveau bloc est créé pour que les nouvelles transactions soient saisies et validées. Découvrons ensemble les spécificités des blocs.
Comment fonctionne un bloc ?
Un réseau de blockchain enregistre un nombre important de transactions. Dans le cadre des cryptomonnaies, le maintien d’un registre de ces transactions aide l’écosystème à suivre les montants envoyés et les personnes impliquées. Les transactions effectuées sur une période donnée sont enregistrées dans un fichier appelé bloc, qui constitue la base du réseau blockchain.
Les informations présentent dans un bloc
La fonction d’un bloc est donc de stocker des informations. Chaque bloc peut être considéré comme une page d’un grand livre. Les blocs individuels sont composés de plusieurs éléments :
- La tête de bloc (Block header) : contient les informations sur le bloc
- Les transactions : la liste complète des transaction incluses dans le bloc
- Le compteur de transaction : le nombre de transactions présentent dans le bloc
- La taille du bloc : pour définir la taille maximale du bloc
- Le nombre magique : un nombre contenant des valeurs spécifiques qui identifient ce bloc comme faisant partie du réseau d’une cryptomonnaie définie.
Les données de transactions dans un bloc
Les données de transactions constituent la majorité des informations présentent dans un bloc. La première transaction contenue dans un bloc s’appelle la transaction coinbase (à ne pas confondre avec la plateforme d’échange). Par exemple sur la blockchain Bitcoin, c’est cette transaction qui sera responsable de la génération de nouveaux BTC qui serviront de récompenses au mineur du bloc.
Alors que ls transactions Bitcoin traditionnelles contiennent des informations d’entrée et de sortie, une transaction coinbase créée de nouveaux BTC à partir du protocole lui-même.
Les autres transactions présentent elles les adresses des expéditeurs et destinataires, la quantité de cryptomonnaie, les signatures de clés privées autorisant la transaction et l’horodatage de la transaction.
Le « Block Header » ou tête de bloc
Les transactions dans un bloc sont l’élément qui prennent le plus de place. En deuxième position on retrouve la tête de bloc qui rassemble les éléments suivants :
- Version : la version de la crypto-monnaie utilisée
- Timing : un horodatage pour placer le bloc dans la blockchain
- Le Hash du bloc précédent : un hachage de l’en-tête du bloc précédent
- La racine de Merkle : hachage des transactions dans l’arbre de Merkle du bloc actuel
- Le nonce : nombre crypté que le mineur doit trouver pou vérifier et fermer le bloc
- Bits : indice de difficulté du hachage cible (résolution difficile du nonce)
Une fois que le nonce a été trouvé par un mineur, le hachage est résolu. Le bloc est ensuite vérifié et fermé. Un nouveau bloc est créé avec un nouveau Block Header et le processus se répète.
Pour parvenir à un consensus, plusieurs mécanismes sont utilisés, comme la Proof-of-Work et la Proof-of-Stake.
Le minage et les blocs
Le minage est le procédé qui permet de valider les transactions sur une blockchain. Le but des mineurs est de résoudre un problème mathématique complexe afin de trouver le nonce, le seul chiffre pouvant être modifié dans la tête de bloc.
Il s’agit donc de retrouver un nombre qui a été aléatoirement généré par hachage. Le hachage cryptographique permet de générer une suite de caractères de longueur fixe à partir d’un ensemble de données de n’importe quelle taille. Cet ensemble de données peut être un mot, une phrase, un texte ou encore un fichier entier.
Par exemple, le bitcoin utilise SHA256 pour son algorithme de cryptage. Pour qu’un mineur puisse générer le nombre « gagnant », le programme de minage doit utiliser SHA 256 pour hacher des nombres aléatoires et les placer dans le nonce pour voir s’il y a une correspondance.
- Cantina Royale : Le nouveau P2EFree-To-Play sur la BLOCKCHAIN Elrond - juin 24, 2022
- Spring GAME – un GameFi innovant - mai 3, 2022
- Cours FRAX SHARE (FXS) - mars 29, 2022