Block chain

De Bitcoin Wiki
Révision datée du 12 décembre 2013 à 02:47 par Panda (discussion | contributions)
Aller à : navigation, rechercher
Les blocs dans la chaîne principale (en noir) est la plus longue série de blocs qui va du bloc de genèse jusqu'au bloc courant. Les blocs orphelins (violet) sont ceux qui ne font pas partie de la chaîne la plus longue

Un block chain (ou chaîne de blocs en français) est une base de données partagée entre tous les nœuds participant à un système basé sur le protocole Bitcoin. Il s'agit de l'innovation principale du Bitcoin qui permet d'établir un historique horodaté de toutes les transactions assurant ainsi à quiconque le possédant de connaitre l'état des provisions de chaque adresse du systèmes.

Chaque bloc de la chaîne contient contient le hash du bloc précédent à l'exception du premier bloc aussi appelé bloc de genèse. Ceci permet d'assurer que les blocs se succèdent dans un ordre chronologique en effet il est impossible de générer le hash du bloc n sans connaitre le hash du bloc n-1. De plus il est impossible de changer un bloc passé sans que cela n'affecte tous les blocs le succédant garantissant ainsi qu'une même unité monétaire ne peut pas être dépensé plusieurs fois.

L'activité de minage "honnête" consiste à chercher un bloc n+1 par rapport au dernier bloc de la chaîne existante la plus longue. La "longueur" de la chaîne de blocs est calculé en fonction de la difficulté de la chaîne, ainsi la chaîne la plus longue n'est pas forcément la chaîne qui compte le plus de blocs mais celle dont la création a nécessité la plus grande puissance de calcul.

Il n'est pas possible que plusieurs chaînes de blocs valides coexistent simultanément. Cependant il peut exister des branches avec des blocs orphelins. Une branche peut être crée lorsque deux blocs sont générés dans un intervalle de temps très réduit. Les mineurs du réseau tentent alors de calculer un nouveau bloc en se basant sur le bloc qu'ils ont reçu en premier. Ce type de branche prend fin rapidement lorsqu'un nouveau bloc est découvert faisant ainsi de cette chaîne de blocs la plus longue et invalidant l'autre. Des branches bien plus grandes sont apparues lors de modifications du protocole Bitcoin nécessitant une mise à jour du client Bitcoin.

Lorsqu'une branche de la chaîne de blocs est invalidé car elle n'est plus la plus longue les transactions de celle-ci sont remis dans la file d'attente et inclus dans un autre bloc. La récompense que les mineurs ont obtenu en trouvant des blocs dans la branche invalide sera elle perdu.