‘Bitcoin, a peer to peer electronic cash system’
Un système établi sur réseau ‘pair à pair’. Qu’est-ce que cela signifie ?

Pour Bitcoin, cette forme de réseau est incontournable, une caractéristique fondamentale, une nécessité. Il s’agit d’une infrastructure spécifique qui permet à la fois la résistance et la résilience d’un système de communication.

Voyons comment.

Arpanet, les universités américaines et la guerre froide


C’est une histoire qui commence comme un film d’espionnage en noir et blanc.

Au début des années ‘60, l’US Air Force cherche à ‘informatiser’ le commandement de ses bombardiers stratégiques au moyen d’un ordinateur IBM. Au même moment, d’autres branches militaires US envisagent aussi le recours à l’informatique pour améliorer la gestion du temps de réponse en cas de conflit (Nda : les Américains sont restés longtemps traumatisés par le fiasco du relais d’information lors de Pearl Harbor)

À l’époque, les premiers ordinateurs prennent une place considérable et coûtent une fortune. Leur maîtrise implique en outre le recrutement d’experts de très haut niveau que l’on ne trouve que dans les milieux académiques des grandes universités américaines, seules autres entités capables de s’offrir de tels joujoux.

Très vite, ces experts s’aperçoivent des avantages qu’ils peuvent tirer du partage des ressources et des données de leurs recherches entre les différents ordinateurs, ces monstres onéreux dispersés au quatre coins du pays. Ils commencent alors à développer des méthodes et des règles d’intercommunication unifiées (des ‘protocoles’) entre les ordinateurs civils… et militaires.

En pleine guerre froide, on pourrait imaginer un veto rapide de l’armée américaine. Bien au contraire. Elle, de son côté, y voit une formidable opportunité de délocaliser sur n’importe quelle machine existante ses moyens d’action, de sorte que si par exemple son ordinateur IBM est détruit par une attaque ennemie, l’USAF reste en mesure de réagir à partir de n’importe quel autre ordinateur ayant partagé les données avec lui.

Moins de dix ans plus tard, Arpanet, le premier réseau d’ordinateurs au monde, considéré par beaucoup comme l’ancêtre d’Internet, est né. C’est une avancée considérable pour le monde civil comme pour le militaire, car lorsqu’un ordinateur (appelé ‘nœud de réseau’) ne répond plus, les données à transmettre peuvent malgré tout emprunter d’autres chemins via d’autres ordinateurs – d’autres nœuds – pour atteindre leurs destinataires. La CIA conclura même à l’invulnérabilité d’Arpanet…

Avec le temps et les développements techniques, les ordinateurs deviendront de plus en plus abordables – donc nombreux – auront des capacités de calcul et de stockage de plus en plus importantes, des règles d’intercommunications de plus en plus efficaces, une meilleure redondance des informations disponibles et une absence de point de faiblesse. L’ère du ‘pair à pair’ (‘peer to peer’ ou encore ‘P2P’) est née.

‘Mon nom est Légion, car nous sommes nombreux’ (Marc 5,9)


Bitcoin est donc un protocole qui emploie cette structure de réseau.

Au départ, c’est son créateur qui fait tourner le programme. Il est bientôt rejoint par d’autres, au début des informaticiens et des cryptographes, puis de plus en plus de monde divers et varié. Ainsi, depuis 2009, il n’arrête pas de grandir en parallèle avec son adoption : de nouveaux nœuds viennent en permanence augmenter sa taille et, en conséquence, sa résistance de manière géométrique. Une infrastructure immuable, inarrêtable, dont la valeur d’usage ne tient pas seulement dans la rareté du jeton qu’il produit (nous y reviendrons) mais encore dans sa robustesse de réseau. La loi de Metcalfe démontre de manière empirique que la valeur d’un réseau évolue au carré de sa taille.

Il y a enfin ce consensus de réseau, cette façon de se mettre d’accord sur les règles et d’accepter de les suivre, aussi bien dans l’intérêt des uns que dans celui des autres. Imaginez un instant que tous les filons d’or présents sur terre se mettent d’accord pour imposer un rythme d’extraction dégressif et fixer une quantité maximale de métal que nous pourrions extraire… Et bien, c’est entre autres ce que fait Bitcoin !

Un réseau d’une très grande fiabilité donc, très difficile à détruire, qui s’apparente en image au ‘blob’, cet être vivant ni animal ni végétal, dépourvu de cerveau central, mais qui est capable de se ramifier, de se déplacer, de se développer et même d’évoluer par l’apprentissage. Ou encore à un essaim de sauterelles dispersé au quatre vents. En tuer une ou même plusieurs ne servirait à rien, tant l’essaim est vaste et peut se régénérer. Aujourd’hui, le réseau Bitcoin est un ‘essaim’ de 15000 nœuds (https://bitnodes.io/ – pour ceux qui se laissent identifier, il y en a sûrement d’autres) répartis au peu partout autour de la planète.

Le client a toujours raison

Mais comment devient-on un nœud de réseau pair à pair ?

Nul besoin d’être un informaticien, c’est assez simple : à partir d’un ordinateur banal muni d’Internet, il suffit de télécharger un programme appelé le ‘client’ (pour Bitcoin par exemple, ici https://bitcoin.org/en/full-node#what-is-a-full-node). Une fois installé, il se mettra à communiquer avec d’autres machines faisant tourner le même programme, recevant, enregistrant et envoyant aux autres les données qui transitent par lui et qui respectent ses règles, son ‘protocole’. Voilà, vous avez votre nœud. C’est aussi simple que cela.

Pour être un nœud du réseau Bitcoin, c’est pareil.

Notez bien que le ‘client’ est très souvent un programme open source qui est scruté et vérifié par un grand nombre d’acteurs. C’est le cas du ‘client’ Bitcoin, qui sert également de portefeuille cryptographique.

Et si vous l’éteignez ? Pas de problème ! Une fois rallumé, il se reconnecte à ses pairs et se met à jour en se téléchargeant l’historique des données qui s’est déroulé pendant son absence.  Et si cet historique est falsifié ? Aucun risque ! Les règles du protocole sont vérifiées au niveau de chaque nœud. Toute information qui déroge aux règles n’est tout simplement pas propagée. Dans Bitcoin, les règles sont importantes. Elles imposent entre autres que chaque nœud effectue pour les données qu’il reçoit la vérification des signatures cryptographiques et des solutions proposées pour les preuves de travail (nous en reparlerons). Il s’agit d’opérations archi simples pour un ordinateur.

Ainsi, personne ne se fait confiance, tout le monde vérifie les informations de chacun – le fameux ‘don’t trust, verify’. C’est par ce procédé que l’on peut se fier au résultat final : un registre de transactions infalsifiable qui a été tant et tant vérifié par son réseau qu’il en est devenu un objet vertueux.

Nda : on entend souvent dans les médias que ce sont les mineurs qui valident les transactions. C’est FAUX ! Chaque noeud du réseau valide les données qui passent par lui. Si les mineurs dépensent de la puissance de calcul, c’est pour obtenir la récompense qui accompagne l’écriture de la prochaine page du registre, c’est à dire le prochain bloc de la blockchain.

Bitcoin adore les ragots


Bitcoin est un réseau pair à pair dit ‘structuré’ : votre nœud n’est interconnecté directement qu’à quelques autres, pas à tous en même temps. Il échange avec eux, et eux échangent avec d’autres. Et ces connexions ne sont pas exclusives, elles varient au cours du temps et au mieux des circonstances.

Votre nœud émet lui-même et vérifie les informations transmises ou relayées par l’un ou l’autre de ces ‘pairs proches’ puis les communique, et eux font de même. Cette transmission n’est donc pas réellement instantanée, mais se produit malgré tout à la vitesse télécom. Ainsi, on considère aujourd’hui que, pour qu’une transaction atteigne tous les nœuds du réseau Bitcoin, il faut compter une quinzaine de secondes.

Cette manière de communiquer s’appelle le ‘gossip’ (le ragot)

Tactique de survie en milieu hostile

En bâtissant son réseau sur une structure ‘pair à pair’, le créateur de Bitcoin s’est assuré de la survie future de son invention. Il le fait ‘vivre’ dans chaque nœud, dans chaque ordinateur qui fait tourner son programme. Pour l’arrêter, il faudrait les éteindre tous en même temps partout sur la planète… Et ne plus jamais les redémarrer !

Au début encore petit, discret, pas pris au sérieux, moqué même, il est probablement devenu la structure la plus résistante et la plus résiliente de l’ère informatique.

Un invulnérable.