Cet article est un parcours complet qui vous permettra de découvrir le processus de création d'un bloc Bitcoin et les tenants et aboutissants qui rendent possible le minage de Bitcoin.
Dans les articles précédents, nous avons analysé la technologie blockchain y comment est-il constitué. Nous avons également un article dédié à bloques qui composent la blockchain et une autre dédiée à relations, qui à leur tour constituent les blocs. Si vous ne connaissez pas ces termes, nous vous invitons à jeter un œil à ces trois articles avant de continuer à avoir une connaissance plus claire et plus large de ces éléments qui vous aideront à comprendre: Comment miner un bloc?
Sur la blockchain, les mineurs sont chargés de générer les nouveaux blocs en les ajoutant en bout de chaîne. Et comment le protocole établit-il Bitcoin, ils doivent effectuer ce processus toutes les 10 minutes environ. Chaque bloc extrait contient un enregistrement détaillé des différentes transactions effectuées au cours de chaque période. Et que lorsqu'ils sont ajoutés à la fin de la blockchain, ils mettent à jour leur registre.
Processus d'extraction de blocs
Pour créer un nouveau bloc, les mineurs doivent passer par un processus pour résoudre un problème mathématique. Après avoir trouvé une solution valide pour le réseau, un nouveau bloc peut être extrait qui sera ajouté à la blockchain par consensus. Et pour lequel, le mineur qui a trouvé la solution, recevra une récompense pour le nouveau bloc. Cette récompense est connue sous le nom de récompense de blocage.
Un nouveau bloc Bitcoin est généré environ toutes les 10 minutes.. Ainsi, chaque fois que l'on en trouve un, cela signifie le début de l'exploitation minière pour un autre. Puisque ceux-ci sont mathématiquement liés ou enchaînés. Mais voyons plus en détail comment ce processus est effectué :
Première étape: transaction
Le processus d'extraction d'un nouveau bloc commence lorsqu'un utilisateur souhaite envoyer une certaine quantité de crypto-monnaie à une autre personne. Alors envoie le bonheur transaction avec les données de votre portefeuille, attendre que le réseau fonctionne et confirme. Ils y restent jusqu'à ce qu'un bloc soit exploité où ils peuvent être inclus et validés.
Deuxième étape: compilation
Ces transactions en attente sur le réseau sont collectées et regroupées en un bloc de transactions par le nœuds miniers. Il est très probable que plusieurs mineurs collectent les mêmes transactions. Et tout ne sera pas confirmé jusqu'à ce que le bloc soit miné.
Troisième étape: formation
Chaque mineur sélectionnera les transactions qu'il souhaite inclure et créera son propre bloc. S'il y a des transactions déjà validées et incluses dans le bloc précédent, elles seront supprimées de celui-ci. Ce nouveau bloc est dit candidat, car il n'est pas encore valide car il n'a pas de preuve de travail valide.
Lors de la formation de ce nouveau bloc, il faut inclure un en-tête contenant le hachage du bloc précédent, le Racine de merkle et des données pour la concurrence minière. C'est le horodatage, le but de l'algorithme PoW pour ce bloc (les bits), la version du logiciel et le Nonce.
Quatrième étape: essai de travail
Une fois que chaque mineur a effectué son propre bloc de transactions, il devra en trouver un signature valide pour ce bloc. Autrement dit, effectuez une preuve de travail. Chaque mineur doit effectuer un processus de calcul mathématique unique à chaque bloc qu'il a formé. Par conséquent, bien que la procédure soit la même, le résultat sera totalement différent pour chacun. Ce calcul complexe implique beaucoup de puissance de calcul, et donc, une grande dépense d'énergie électrique. Cela dépendra également de la difficulté du système pour le temps de l'exploitation minière.
La solution que les mineurs doivent trouver est connue sous le nom de hachage. Cette fonction est très difficile à trouver, mais une fois trouvée, elle est facile à vérifier par d'autres noeuds. Afin qu'ils puissent vérifier que le hachage de sortie se conformer aux conditions du système établies.
Pour trouver une sortie valide, les mineurs de hachage effectuent à plusieurs reprises des calculs mathématiques encore et encore via un Nonce. C'est un nombre aléatoire qu'ils utilisent et changent constamment jusqu'à ce qu'ils trouvent une signature de sortie ou un hachage valide en fonction de la condition. Il n'y a aucun moyen de prédire quel nonce résoudra le problème, ils doivent donc en utiliser autant que nécessaire. Et on parle de milliards de valeurs ! Incroyable, non ?
Dans le cas du réseau Bitcoin, le système conditionne que le hachage de sortie doit contenir un certain nombre de zéros au début du hachage.
Cinquième étape: transmission
Lorsqu'un nœud de minage parvient à trouver un hachage de sortie valide pour un bloc, il transmet ledit bloc avec la signature aux autres nœuds du réseau afin qu'ils puissent le valider.
En ce moment, tant que les 21 millions de bitcoins n'ont pas été émis, le mineur reçoit la récompense établie pour le minage, mettant de nouveaux bitcoins en circulation. Ceci est enregistré sur son propre nœud, les autres nœuds du réseau le feront à l'étape suivante.
De plus, que tous les bitcoins aient été émis ou non, le mineur reçoit également toutes les commissions minières que les utilisateurs ont placées dans les transactions qui composent ce bloc.
Sixième étape: vérification
Les autres nœuds du réseau sont chargés de valider et vérifier que le bloc et le hachage répondent aux conditions du système, en vérifiant sa légitimité et s'il contient effectivement le nombre indiqué de zéros.
Ici aussi, la preuve de travail est confirmée, c'est-à-dire la puissance de calcul qui a été dépensée pour trouver la solution, et il est à noter que le mineur qui a découvert le bloc peut en effet utiliser les bitcoins nouvellement reçus.
Septième étape: confirmation
Une fois le nouveau bloc ajouté à la blockchain, tous les autres ajoutés par-dessus compteront comme une confirmation. À ce stade, nous pouvons en venir à penser que puisque chaque mineur a commencé le processus avec son propre bloc, il peut continuer à miner. Mais ce n'est pas comme ça. Une fois qu'un bloc est généré, tous les nœuds de minage doivent démarrer le processus en formant un nouveau bloc de transactions. Ils ne peuvent pas continuer à miner le bloc précédent car chaque bloc doit ajouter le hash de sortie du bloc qui le précède.
C'est pourquoi nous connaissons cette technologie comme une chaîne de blocs ou blockchain. Ensuite, au moment où le mineur obtient un hachage valide, un autre nombre de nouveaux blocs peut avoir été extrait. Ainsi, le hachage de sortie de votre bloc extrait ne correspondra pas au hachage de sortie du dernier bloc ajouté dans la chaîne. Il sera rejeté.
De plus, il est très probable que la totalité ou la plupart des transactions incluses dans ce bloc aient déjà été ajoutées à d'autres. Même si vous réussissez à miner le bloc, la plupart de vos transactions incluses ne pourront pas être validées ou confirmées.
Caractéristiques des blocs minés
Les blocs extraits dans le système Bitcoin doivent répondre à certaines caractéristiques et conditions pour être considérés comme valides. Voyons ce qu'ils sont:
- Le hachage d'en-tête de bloc miné doit être inférieur à la cible. S'il est supérieur, il ne sera pas considéré comme valide.
- La taille du bloc doit être dans des limites acceptables. En Bitcoin, un bloc doit avoir une taille maximale de 2 Mo.
- La horodatage du bloc doit être moins de deux heures dans le futur.
- La première transaction ajoutée au bloc sera le transaction coinbase. Cela accordera au nœud minier la récompense du réseau. Et il n'y aura qu'une seule transaction coinbase par bloc.
- Toutes les transactions ajoutées au bloc sont valides.
- L'en-tête de chaque bloc contiendra le hachage du bloc précédent et le hauteur de bloc du même.
Toutes ces fonctionnalités sont vérifiées pour confirmer un blocage. Et chaque nœud de minage valide indépendamment de nouveaux blocs en suivant exactement les mêmes règles. Donc, s'assure qu'aucun nœud de minage ne peut tricher. Ce qui apporte robustesse et sécurité au réseau. Une fois le bloc validé, les autres nœuds du réseau l'ajouteront à leur copie de la blockchain. Et lorsque cela se produit, il ne peut pas être modifié ou changé.
Maintenant tu connais le processus de création qui ont suivi chacun des bitcoins qui existent en circulation. Chacun des bitcoins existants a été émis à la suite de ce processus, pour être ensuite utilisé ou vendu par le mineur à d'autres personnes, jusqu'à ce qu'ils atteignent vos mains.