3 Commentaires

Bonjour j'aimerais savoir c'est quoi les calculs qu'il faut faire pour trouver le Hash si tu pouvais me donner quelques exemples avec des explications ça serait très sympa de ta part

Expand full comment

Hello ! Ahah tu as raison, ca mérite un sujet ! je vais me pencher dessus ! merci de ta question ❤️

Expand full comment

En fait Bitcoin inclus une fonction de hachage , la sha256.

Tu passes n'importe quel texte dans la fonction sha256 et ça te sors une clé de 256 chiffres

chaque bloc de transaction passe donc dans la fonction sha256 pour être validé (on obtient une clé à la sortie de la fonction de hachage )

seulement le protocole impose une condition sur la clé. Par exemple les 5 premiers chiffres doivent être égal à 1

chaque mineur doit donc rajouter un morceau de texte pour que la fonction de hachage commence par 5 fois 1

ce morceau de texte rajouté c'est ce qu'on appel la preuve de travail ( proof of work)

et donc chaque mineur va essayer plein de morceaux de textes jsuqu'a trouver une clé qui commence par 5 fois 1

le premier qui réussit valide le bloc et remporte la récompense des 3 BTC

en gros un bloc se compose comme suit :

transaction 1

transaction 2

.

.

transaction n

+

preuve de travail

= (fonction de hachage) =>

clé commençant par 11111...

admettons la première transaction c'est juste un 1 , la deuxième juste un 2

ton bloc c'est donc :

1

2

on a une fonction de hachage qui aditionne toutes les lignes et la condition du protocole fait que la clé doit commencer par un 1

premier essai tu fais juste 1+2 = 3 ça ne marche pas donc

deuxième essai tu rajoutes 5 en preuve de travail

ça fait donc 1+2+5 = 8 , ça ne marche pas non plus

3 ème essai, tu mets 9 en preuve de travail, ça fait 1+2+9 = 12 , ça commence donc par 1 donc tu valides le bloc

la preuve de travail est égale à 9

et la clé du bloc est égal à 12

tu reportes la clé dans l'entête du bloc suivant

et donc si tu modifies le bloc de transaction la clé de ton bloc ne correspondra plus a la clé du bloc suivant

donc ça devient impossible de modifier les blocs

Expand full comment