Qu’est-ce que la notion de nœuds ?

La définition du concept de nœud peut considérablement varier en fonction du contexte dans lequel il est employé. Quand il s’agit de réseaux informatiques ou de télécommunication, les nœuds peuvent être utilisés de différentes façons, et agir soit comme point de redistribution soit comme terminal de communication. En général, un nœud est un périphérique physique d’un réseau, mais dans certains cas précis des nœuds virtuels sont utilisés.

En termes simples, un nœud de réseau est un point de ce réseau où un message peut-être créé, reçu ou transmis. Dans ce document, nous aborderons les différents types de nœuds Bitcoin : les nœuds complets, les super nœuds, les nœuds de minage, ainsi que les clients VPS.


Les nœuds Bitcoin

Quand on s’immerge dans l’univers des « blockchains » ou chaîne de blocs – qui sont conçues en tant que systèmes décentralisés – le réseau de nœuds informatiques est ce qui rend possible l’utilisation du Bitcoin comme une monnaie digitale décentralisée de pair-à-pair (PAP), résistante à toute censure dans sa conception, et qui ne nécessite pas d’intermédiaire pour être échangée d’utilisateur à utilisateur (et ce quelle que soit la distance qui les sépare dans le monde).

Ainsi, les nœuds de la chaîne de blocs jouent un rôle de point de communication pouvant remplir différentes fonctions. Tout ordinateur ou périphérique qui se connecte à l'interface Bitcoin peut être considéré comme un nœud, dans le sens où il communique avec les autres d'une manière ou d'une autre. Ces nœuds sont aussi capables de transmettre des informations relatives aux transactions et aux blocs, au sein du réseau distribué d'ordinateurs en utilisant le protocole pair-à-pair Bitcoin. Cependant, chaque nœud (ou ordinateur) du réseau est défini au regard de ses fonctions particulières,  il existe ainsi différents types de nœuds Bitcoin.


Les nœuds complets

Les nœuds complets sont ceux qui prennent réellement en charge et  sécurisent le Bitcoin, ils sont indispensables au réseau. Ces nœuds sont également désignés sous le nom de nœuds de validation complets, car ils participent au processus de vérification des transactions et des blocs en lien avec les règles de consensus du système. Les nœuds complets sont également capables de transmettre les nouvelles transactions et les blocs vers la chaîne de blocs.

Généralement, un nœud complet télécharge une copie de la chaîne de blocs Bitcoin comportant l’intégralité des blocs et des transactions, mais cela n’est pas une obligation pour  considérer un nœud comme complet (une copie réduite de la chaîne de blocs peut être utilisée à la place).

Un nœud complet Bitcoin peut être installé via différentes configurations logicielles, mais la plus courante et la plus populaire est celle de Bitcoin Core. Voici la configuration minimale requise pour exécuter un nœud complet avec Bitcoin Core:

  • Ordinateur de bureau ou ordinateur portable avec une version récente de Windows, Mac OS X ou Linux.

  • 200 Go d’espace disque disponible.

  • 2 Go de mémoire vive (RAM).

  • Connexion Internet haut débit avec une vitesse d’envoi d’au moins 50 KB/s.

  • Un accès internet illimité ou une connexion avec des limites de téléchargement élevées. Les nœuds complets activés peuvent en effet atteindre ou dépasser une capacité de téléchargement de 200 Go/mois en réception et de 20 Go/mois en émission. Vous aurez également besoin de télécharger environ 200 Go de données lorsque vous démarrerez  votre nœud complet pour la première fois.

  • Votre nœud complet devra fonctionner au moins 6 heures par jour. C’est encore mieux si vous le faites tourner continuellement (24/7).

De nombreux organismes et utilisateurs bénévoles font fonctionner de cette façon des nœuds complets Bitcoin afin de soutenir l'écosystème Bitcoin. Actuellement, environ 9 700 nœuds publics fonctionnent sur le réseau Bitcoin. Notez que ce nombre n'inclut que les nœuds publics, qui font référence aux nœuds Bitcoin « à l'écoute », qui sont visibles et accessibles (également appelés nœuds d'écoute).

Hormis les nœuds publics, de nombreux autres nœuds cachés ne sont pas visibles (nœuds « non-écouteurs »). Ces nœuds fonctionnent généralement derrière un pare-feu, via des protocoles cachés comme Tor ou simplement parce qu'ils ont été configurés pour ne pas écouter les connexions.


Les nœuds d’écoute (ou super Nodes)

Concrètement, un nœud d'écoute ou un super nœud est un nœud complet visible publiquement. Il communique et fournit des informations à tout autre nœud qui décide d'établir une connexion avec lui. De ce fait, un super nœud est essentiellement un point de redistribution qui peut agir à la fois comme source de données et comme pont de communication.

Un super nœud fiable fonctionne généralement 24h/24 et possède plusieurs connexions permanentes, transmettant l'historique de la chaîne de blocs et les données de transactions à plusieurs nœuds du monde. Pour cette raison, un super nœud nécessitera probablement plus de puissance de calcul et une meilleure connexion Internet qu’un nœud complet qui serait masqué.


Les nœuds de minage

Pour pouvoir miner des Bitcoins dans le climat concurrentiel actuel, il faut investir dans du matériel et des programmes de minage spécialisés. Ces programmes de minage (logiciels) ne sont pas directement liés à Bitcoin Core et sont exécutés en parallèle pour essayer de miner des blocs Bitcoin. Un mineur peut alors choisir de travailler seul (mineur en solo) ou en groupe (mineur de pool).

Alors que les nœuds complets des mineurs solos utilisent leur propre copie de la chaîne de blocs, les mineurs en pool travaillent ensemble, chacun contribuant avec ses propres ressources de calcul (puissance de hachage). Dans un pool de minage, seul l’administrateur du pool est tenu d’exécuter un nœud complet, également appelé nœud complet du mineur du pool.


Clients légers ou VPS

Également appelés clients VPS (Vérification de Paiement Simplifiée), les clients légers sont ceux qui utilisent le réseau Bitcoin mais ne jouent pas vraiment le rôle de nœud complet. En effet, les clients VPS ne contribuent pas à la sécurité du réseau car ils ne conservent pas de copie de la chaîne de blocs, ni ne participent au processus de vérification et de validation des transactions

Pour faire court, la VPS est la méthode par laquelle un utilisateur peut vérifier si certaines transactions ont été incluses ou non dans un bloc, sans avoir à télécharger toutes les données du bloc. De cette façon, les clients VPS s'appuient sur les informations fournies par d'autres nœuds complets (super nœuds). Les clients légers fonctionnent comme des terminaux de communication et sont utilisés par de nombreux portefeuilles de crypto-monnaie.


Client vs nœuds de minage

Il est important de noter que faire fonctionner un nœud complet n'est pas la même chose que faire tourner un nœud de minage complet. Alors que les mineurs doivent investir dans du matériel et des logiciels de minage onéreux, tout le monde peut exécuter un nœud de validation complet. 
De plus, avant de miner un bloc, un mineur doit traiter les transactions en attente qui ont été auparavant admises comme valides par les nœuds complets. Ensuite, le mineur crée un bloc candidat (avec le groupe de transactions concerné) et tente de miner ce bloc. Si le mineur parvient à trouver une solution valide pour ce bloc, il la diffuse sur le réseau et les autres nœuds complets vérifient alors la validité du bloc. De cette façon, les règles de consensus sont prédéterminées et sécurisées par le réseau distribué de nœuds de validation et non par les mineurs.


Conclusion
Les nœuds Bitcoin communiquent les uns avec les autres via le protocole de réseau Bitcoin P2P, ce qui garantit l'intégrité du système. Un nœud qui se comporte mal ou essaie de propager des informations incorrectes est rapidement reconnu par les nœuds honnêtes puis déconnecté du réseau.

Bien que le fait de faire fonctionner un nœud de validation complet n'apporte pas de récompense financière, il est recommandé de le faire, car cela offre confiance, sécurité et confidentialité aux utilisateurs. Les nœuds complets garantissent que les règles soient respectées. Ils protègent la chaîne de blocs contre les attaques et les fraudes (comme les doubles dépenses). Enfin, un nœud complet n'a pas besoin de faire confiance aux autres nœuds et permet à l'utilisateur de contrôler totalement son argent.