Le réseau Bitcoin est distribué et acéphale. Il fonctionne grâce aux utilisateurs et pour les utilisateurs, sans l'intervention d'aucune autorité centrale. L'hébergement et la gestion du protocole sont donc dédiés aux utilisateurs qui sont représentés sur le réseau par des nœuds.
Dans cette première partie nous allons étudier le rôle technique de ces nœuds, nous allons voir en quoi ils sont importants pour le réseau Bitcoin et pourquoi vous devriez en faire tourner un.
Dans la seconde partie de cet article, nous verrons comment mettre en place facilement son propre nœud Bitcoin.
Pour accéder directement à la seconde partie, vous pouvez cliquer ici : Le nœud Bitcoin - Partie 2/2 : Comment mettre en place un nœud Bitcoin ?
Qu'est-ce qu'un nœud Bitcoin ?
Un nœud Bitcoin est un ordinateur qui va exécuter le logiciel open source Bitcoin afin de prendre part au réseau.
Chaque nœud du réseau Bitcoin va héberger sa version de la chaine de preuve de travail et va se synchroniser avec ses pairs. Pour rappel, la chaine de preuve de travail est le registre distribué rassemblant l'ensemble des historiques de transactions.
Toute interaction avec le protocole Bitcoin nécessite la connexion à un nœud du réseau. Que ce soit pour effectuer une transaction ou pour s'adonner au mécanisme de minage, l'ordinateur devra héberger un nœud ou se connecter à un nœud tiers.
Ainsi, lorsque vous utilisez un portefeuille Bitcoin, votre wallet se connecte généralement automatiquement à un nœud tiers afin de pouvoir diffuser vos transactions et établir un état présent de votre portefeuille.
Il est impossible de déterminer précisément le nombre de nœuds Bitcoin étant donné que la grande majorité d'entre eux tournent sous Tor et sont donc indétectables. Le nombre de nœuds publics Bitcoin est actuellement de 15 300 ordinateurs. En sachant cela, nous estimons que le nombre total de nœuds Bitcoin se situe entre 40 000 et 150 000 nœuds.
Quel est le rôle d'un nœud Bitcoin ?
Les nœuds Bitcoin sont des éléments essentiels du réseau. Ils disposent ainsi de plusieurs rôles.
Le premier rôle du nœud va être d'héberger la chaine de preuve de travail. En effet, Bitcoin ne dispose d'aucun organe central maîtrisant l'hébergement de la base de données. Il faut donc que le registre des transactions soit distribué auprès de tous les utilisateurs.
Dans le cas de Bitcoin, ce sont les nœuds qui se chargent de télécharger, de mettre à jour, de diffuser et de stocker tout l'historique des transactions. Aujourd'hui, cette chaine pèse environ 380 Go pour presque un milliard de transactions passées.
Le deuxième rôle du nœud Bitcoin est de vérifier et diffuser les transactions. Dans le processus de validation d'une transaction, les nœuds font le lien entre les portefeuilles qui construisent la transaction et les nœuds miniers (les mineurs) qui incluent la transaction dans un bloc.
Ainsi, lorsque vous créez une nouvelle transaction sur votre wallet préféré, vous allez devoir la diffuser à un nœud du réseau. Ce nœud va vérifier sa validité, c'est-à-dire vérifier que votre signature est bien valide. Puis le nœud va la diffuser à ses pairs qui vont également la vérifier puis la diffuser... Le processus se répète jusqu'à que tous les nœuds du réseau soient informés de votre transaction. Celle-ci est alors dans la Mempool en attendant d'être inclue dans un bloc par un mineur victorieux.
Pour en savoir plus sur le mécanisme du minage, nous vous conseillons de lire cet article : Qu'est-ce que le minage de bitcoins ?
Le troisième et dernier rôle des nœuds Bitcoin va être de vérifier et diffuser les nouveaux blocs de la chaine de preuve de travail.
Lorsqu'un mineur trouve un bloc valide, il va le diffuser aux nœuds avec qui il est connecté qui vont vérifier que le hash de l'entête du bloc soit bien inférieur numériquement au facteur de difficulté. Si le nœud estime que le bloc est valide, il va l'ajouter à sa version de la base de données et le diffuser à ses pairs qui vont le vérifier à leur tour... Le processus se répète jusqu'à que tout le réseau fasse consensus sur ce nouveau bloc.
Stratégie de distribution.
Nous avons donc pu voir que les nœuds traitent de l'information, la vérifient, la stockent et la diffusent à leurs pairs.
Cette distribution de l'information, de façon synchronisée et consensuelle, est une composante essentielle de la distribution du réseau Bitcoin. Ainsi, au plus il y a de nœuds, au plus le réseau est sécurisé face à certaines attaques visant à le stopper.
Cette distribution n'est possible que si chaque utilisateur est en capacité de faire tourner son propre nœud. En effet, si faire tourner son nœud nécessite une machine trop puissante ou trop d'espace de stockage, comme dans le cas d'Ethereum, la grande majorité des utilisateurs ne fera pas tourner son propre nœud et se reposera sur des nœuds tiers. Cela pose non seulement un problème d'inclusion pour les utilisateurs les plus modestes, qui ne disposent alors pas des mêmes droits que les utilisateurs les plus aisés, mais cela empêche également la distribution du réseau.
Pour Ethereum par exemple, le fait que les nœuds soient couteux à mettre en place pousse les utilisateurs à se tourner vers des solutions de cloud. En conséquence, 70% des nœuds d'Ethereum sont hébergés chez des grandes entreprises de cloud comme AWS (Amazon), Google ou encore OVH. Le réseau Ethereum n'est donc pas distribué puisqu'il repose sur quelques grandes entreprises. Pour la grande majorité des autres blockchains, ce constat est encore pire.
Sur Bitcoin, au contraire, l'idée est de limiter le réseau à des fonctionnalités essentielles, tout en limitant drastiquement la taille des blocs, afin que chaque utilisateur puisse faire tourner son propre nœud indépendant. C'est une des grandes différences entre Bitcoin et les autres cryptomonnaies : Bitcoin ne peut techniquement pas mourir grâce à sa forte distribution, les autres peuvent disparaitre du jour au lendemain si un état autoritaire ou une grande entreprise le décide.
Ainsi, ce n'est pas parce que nous manquons de connaissances qu'il n'y a pas de DeFi, de NFT ou encore de "smart contract" complexes sur Bitcoin. Au contraire, c'est un choix délibéré et courageux afin d'assurer que Bitcoin reste toujours un réseau égalitaire pour tout individu et robuste face aux différentes autorités. Toutes ces fonctionnalités supplémentaires seront alors introduites, si il y en a la demande, sur des surcouches du réseau principal afin de ne pas impacter le réseau de base.
Grâce à ces limitations, quiconque dispose d'un ordinateur quelconque, de 400 Go de stockage, d'une source d'électricité et d'une connexion avec le réseau, peut faire tourner son propre nœud Bitcoin. Le ticket d'entrée est donc très abordable, et la plupart des personnes dans le monde peuvent se l'offrir.
Avantages à utiliser son propre nœud Bitcoin.
Nous avons donc pu voir qu'il est abordable pour l'utilisateur de faire tourner son propre nœud Bitcoin. Mais finalement, ça sert à quoi de faire tourner son nœud ? Qu'est-ce qu'on y gagne en tant qu'utilisateur ?
Si vous utilisez un nœud non minier, c'est à dire simplement un nœud complet qui ne s'adonne pas au processus de minage de bitcoins, alors vous ne serez pas rémunérés pour faire tourner ce nœud. En revanche, vous disposez de nombreux avantages dans votre utilisation de Bitcoin.
Confidentialité.
L'utilisation de son propre nœud permet d'optimiser sa confidentialité lors de la diffusion des transactions.
Comme expliqué précédemment, lorsque vous réalisez une transaction avec votre wallet, cette transaction doit être transmise à un nœud du réseau afin qu'elle soit diffusée puis inclue dans un bloc.
Si vous n'utilisez pas votre propre nœud, ce nœud d'entrée sur le réseau sera un nœud géré par un tiers. Ce tiers pourra donc voir passer l'ensemble de vos transactions et il pourra faire un lien entre vous, votre adresse IP et vos bitcoins.
Cette perte de confidentialité peut parfois mener à des problèmes de sécurité. Par exemple, si ces informations sont subtilisées par un état autoritaire ou par une personne malveillante, vous pouvez potentiellement être victime d'une agression visant à vous voler vos bitcoins.
Si vous faites tourner votre propre nœud Bitcoin sous Tor (ou autre), il n'y aura plus de perte de confidentialité sur ce point là.
Indépendance.
Le deuxième avantage qui vient avec le fait de faire tourner son propre nœud est le gain d'indépendance.
La diffusion de vos transactions passe nécessairement par la connexion à un nœud. Si le nœud tiers que vous utilisez actuellement décide, pour n'importe quelle raison, de censurer vos transactions, alors vous ne pourrez plus utiliser Bitcoin du moment que vous ne serez pas connecté à un autre nœud.
Bitcoin est incensurable seulement pour les utilisateurs qui roulent leur propre nœud. Si c'est votre cas, alors personne ne peut vous empêcher d'utiliser Bitcoin.
En plus de la liberté de transaction, vous serez également libre de faire valoir votre "droit de maj" en acceptant les mises à jour que vous souhaitez adopter et en refusant les autres. On ne peut alors plus vous imposer de changement.
Confiance.
Le troisième avantage est le gain de confiance. En effet, lorsque vous utilisez un nœud tiers vous faites confiance à l'acteur qui le fait tourner quant à la véracité des informations qu'il vous transmet.
Par exemple, lorsque votre logiciel de portefeuille veut afficher votre solde total de bitcoins, il va interroger le nœud avec qui il est connecté afin d'observer sa base de données (la chaine de preuve de travail) et ressortir une somme de tous les UTXOs (tous les petits bouts de bitcoins) qui vous appartiennent.
Si vous utilisez un nœud tiers, vous faites confiance à l'acteur qui le gère pour avoir une base de données à jour et pour vous retourner les bonnes informations.
En revanche, si vous utilisez votre propre nœud, vous hébergez alors votre propre version de la chaine de preuve de travail, vous n'avez donc plus besoin de faire confiance à personne.
Ce gain de confiance est vrai pour le solde des UTXOs, mais il est également vrai pour de nombreuses autres informations essentielles comme par exemple le nombre de confirmations d'une transaction entrante.
Distribution du réseau.
Enfin, le dernier avantage est le gain en distribution pour le réseau.
Comme vu précédemment, au plus il y a de nœuds au plus Bitcoin est distribué et robuste. Si vous êtes un utilisateur du réseau Bitcoin, vous souhaiterez que Bitcoin soit le plus sécurisé possible. Vous pouvez mettre votre pierre à l'édifice et participer volontairement à cette distribution en faisant tourner votre propre nœud Bitcoin.
Faire tourner son nœud c'est joindre l'utile à l'agréable.
Conclusion.
Nous avons donc pu voir que les nœuds représentent la structure du réseau Bitcoin. Leur multiplication et leur accessibilité est très importante pour assurer la distribution du réseau.
Pour l'utilisateur, faire tourner son propre nœud lui apporte un gain de confidentialité, un gain d'indépendance et un gain de confiance.
Dans la seconde partie de cet article, nous verrons comment mettre en place facilement son propre nœud Bitcoin. Pas d'inquiétude, aucune connaissance poussée en informatique n'est nécessaire pour faire cela. Pour y accéder, cliquez ici.