Comment
Author: Admin | 2025-04-27
Générons un hachage pour ce bloc. À tout moment, il existe une exigence spécifique selon laquelle le hachage généré doit avoir x nombre de zéros au début. Supposons qu'un hachage généré par bloc soit 03a5x4bh34bh2jkiig243gh . Conformément à l'exigence, nous avons besoin des quatre premiers chiffres comme zéro. C'est là que le nonce entre en scène. Le nombre de zéros dont nous avons besoin dans notre hachage est appelé difficulté . L'extraction de Bitcoin est le processus de deviner un nonce qui génère un hachage avec le premier nombre X de zéros. Il consiste en des calculs complexes où nous essayons de trouver la valeur nonce requise. Quel est l'avantage de l'extraction d'un Bitcoin? Les mineurs de Bitcoin reçoivent du Bitcoin pour l'extraction d'un bloc. En 2009, pour l'extraction d'un bloc, vous recevriez 50 BTC. En 2012, il a été réduit à 25 BTC. Tous les quatre ans, la récompense est réduite de moitié pour l'extraction d'un bloc. En 2020, la récompense a été réduite à 6,25 BTC. Mais le bitcoin s'est beaucoup apprécié ces dernières années. Même 6,25 BTC par bloc signifie 190000 dollars. C'est beaucoup d'argent pour faire un tel travail. De nombreuses personnes dans le monde font de l'extraction de bitcoins. Ce n'est pas très difficile, mais c'est une tâche qui prend du temps. Il faut beaucoup de puissance de calcul pour obtenir la bonne valeur. Si 10 personnes font le travail de devinettes, celui qui obtient le premier résultat remporte la récompense. Par conséquent, il faut du temps et de la chance pour gagner la récompense dans l'extraction de bitcoins. Faisons du minage de Bitcoin avec Python Les concepts dont nous avons discuté jusqu'à présent étaient importants pour comprendre le vrai travail de l'extraction de bitcoins. Passons au code qui nous aide à extraire du bitcoin: from hashlib import sha256MAX_NONCE_VALUE = 100000000000def SHA256(text): return sha256(text.encode("asci")).hexdigest()def mine(block_number, transactions, previous_hash, prefix_zeros): prefix_str = '0'*prefix_zeros for nonce in range(MAX_NONCE_VALUE): text = str(block_number)+transactions+previous_hash+str(nonce) new_hash = SHA256(text) if new_hash.startswith(prefix_str): print("Bitcoin mined for nonce value of {nonce}") return new_hash Procédure pas à pas du code Ligne 1 : Importez la bibliothèque sha256 dans notre projet. Ligne 2 : Déclarez une variable avec la valeur maximale de nonce jusqu'à laquelle vous voulez deviner. Il peut être augmenté ou diminué en fonction de la puissance de calcul de votre système. Ligne 3-4 : Nous définissons une fonction SHA256 pour générer une valeur de hachage. Ligne 5 : Définissez une autre fonction pour l'extraction où nous prenons les paramètres d'entrée du numéro de bloc, des transactions, de la valeur de hachage précédente et de la difficulté (le nombre de zéros doit être ajouté comme préfixe dans le hachage généré). Ligne 6 : Nous créons une
Add Comment