Le réseau est donc lui distribué en plusieurs nœuds et chaque nœud détient une copie du réseau ou une capacité de validation/vérification des transactions. Ce sont chacune de ces structures individuelles (bloc) du registre qui par leur rassemblement constitue le réseau blockchain (chaîne de bloc). Donc chaque nœud occupé soit un rôle de validateur (Vérification/Validation des transactions) ou un rôle de registre (Entretien du registre de transaction pour permettre la robustesse du réseau. Les nœuds s’assurent du respect des règles de consensus en téléchargeant des copies du réseau).
Pour faire tout cela, il faut une grande puissance de calcul afin de trouver la solution mathématique de chaque bloc. Ce travail est rémunéré par la distribution de token et est ce qu’on appelle « Proof-of- Work ». Les nœuds validateurs sont plus communément appelés mineurs. Il existe plusieurs types de blockchain, publiques, privées ou de consortium.
Les blockchains publiques dont proviennent les crypto-monnaies, ne requièrent pas permission spécifique à l’entrée, ni lors de la réalisation des transactions. Tous les acteurs sont au même niveau et les nœuds sont contrôlés en Peer to Peer (P2P). Pour ce qui est des blockchains privées elles ont d’autres but et son par exemple étudiés pour d’autres aspects avec des modèles de consensus différent des blockchains publiques.
Le premier lien avec les crypto-monnaies remonte à 2008 avec le célèbre Bitcoin, cette dernière est la première blockchain appliquée à une cryptomonnaie, conceptualisée par Satoshi Nakamoto en 2008. Elle avait le rôle de composant principal du bitcoin, où elle sert principalement de registre public à toutes les transactions sur le réseau. De nombreuses autres crypto-monnaies ont été créées par la suite, toutes avec un mécanisme particulier mais elles ont toutes une chose en commun, la blockchain comme colonne vertébrale.
Les blockchains sont décentralisées et opèrent grâce au réseau de nœuds, c’est comme cela que la blockchain a permis de créer des systèmes entiers exempts de confiance, où les transactions sont opérées naturellement sans organe de contrôle. Les participants du réseau doivent se mettre d’accord sur l’état de la blockchain (réalisation de consensus), mais atteindre un consensus sur des réseaux distribués de manière fiable est très compliqué.
De là se pose une question, comment les nœuds s’accordent sur une décision alors que certains peuvent être défaillants ou malhonnête ? Cette question a donné naissance au problème des généraux byzantins qui a suivi le concept de tolérance aux pannes byzantines.
Problème des généraux byzantins et BFT (Byzantine Fault Tolerance) :
Le problème des généraux byzantins est un dilemme logique qui a pour mise en scène des généraux ayant des problèmes de communication pour s’accorder sur une décision stratégique.
Le dilemme suppose que chaque général, est situé à différents endroits autour d’une ville à assiéger, ces mêmes généraux doivent se mettre d’accord, attaquer ou partir, ici peu importe la décision, ce qui compte est la prise de décision commune, un consensus afin d’être coordonné
Donc, chaque général doit prendre une décision (Oui ou non), la prise de décision est définitive et les généraux doivent se mettre d’accord et exécuter le choix de manière synchronisée.