
Dans la section précédente, nous avons compris comment Bitcoin utilise un réseau P2P pour distribuer des informations entre ordinateurs sans dépendre d'un serveur central.... Mais une question fondamentale se pose maintenant.
Si n'importe quel participant peut transmettre des informations sur le réseau, comment savons-nous que ces informations sont exactes et que personne n'essaie d'introduire des opérations invalides ?
Pour répondre à cette question, nous devons connaître l'un des éléments les plus importants de Bitcoin : le nœud complet, ou Full Node.
Un nœud complet est un ordinateur qui exécute un logiciel capable de vérifier de manière indépendante si les transactions et les blocs respectent les règles de Bitcoin.
L’un des programmes les plus utilisés à cette fin est Bitcoin Core, un logiciel open source qui permet de participer au réseau et d’en vérifier les informations.
QUE SIGNIFIE VÉRIFIER DE MANIÈRE INDÉPENDANTE ?
Imaginons qu’un ordinateur reçoive un bloc qui vient de circuler sur le réseau.
Ce bloc contient des informations sur certaines transactions et sur leur lien avec les blocs précédents.
Mais le recevoir ne signifie pas qu’il doit l’accepter automatiquement....
Le nœud complet analyse son contenu et effectue différentes vérifications pour déterminer s’il respecte les conditions exigées par Bitcoin.
Par exemple, il peut vérifier que les transactions ont une structure correcte, que les dépenses sont dûment autorisées au moyen des vérifications cryptographiques correspondantes et que personne ne tente d’utiliser des fonds déjà dépensés.
Il vérifie également que le bloc est correctement lié à son prédécesseur, qu’il respecte les exigences techniques nécessaires à son ajout et qu’il se conforme aux règles monétaires du système.
Ces vérifications ne dépendent pas simplement de ce que déclare l’ordinateur qui a transmis les informations...
ET C’EST LÀ L’UNE DES DIFFÉRENCES LES PLUS IMPORTANTES PAR RAPPORT À UN SYSTÈME CENTRALISÉ.
Un nœud complet n’a pas besoin de demander à une entreprise, à une banque ou à un autre participant si un bloc donné est valide.
Il peut le vérifier lui-même à l’aide du logiciel et des informations qu’il a validés.
Supposons que quelqu’un tente d’introduire un bloc contenant des opérations qui enfreignent les règles de Bitcoin.
Même si ce bloc parvient à de nombreux ordinateurs, cela ne les oblige pas à l’accepter.
Chacun peut le vérifier de manière indépendante et le rejeter s’il constate qu’il ne respecte pas les conditions nécessaires.
C’est pourquoi nous devons distinguer des notions qui semblent similaires, mais qui ne le sont pas :
Recevoir des informations ne signifie pas les accepter comme valides.
Cette capacité de vérification indépendante est l’un des fondements de la décentralisation de Bitcoin.
Elle permet à différents participants de vérifier les informations sans avoir à faire aveuglément confiance à une autorité centrale ou aux affirmations d’autres participants.
Cependant, il nous reste encore une question importante...
Nous savons que les nœuds complets reçoivent des informations, les vérifient et peuvent les transmettre sur le réseau.
Mais avec qui communiquent-ils directement ? Comment appelle-t-on ces connexions et de quelle manière permettent-elles aux informations de continuer à circuler ?
Pour le comprendre, nous devons découvrir un autre concept fondamental des réseaux P2P : les PAIRS...
