Qui décide des améliorations de Bitcoin ?

1
353

Bitcoin est un protocole libre et Bitcoin Core, l’implémentation de référence du protocole Bitcoin, est un logiciel Open Source.

Le laboratoire de R&D de Bitcoin Core c’est un dépôt Github administré par un développeur principal (actuellement Wladimir J. Van Der Laan) qui peut fusionner les différentes propositions dans le code principal.

Par autant son rôle ne constitue pas un point de vulnérabilité car si ce dépôt Github tombe entre de mauvaises mains ou si ce développeur principal fusionne des lignes de code qui n’ont pas été approuvées par le consensus d’autres développeurs renommés dans la communauté, il sera désavoué et n’importe qui pourra proposer un autre dépôt. De la même façon, n’importe qui peut contribuer, même anonymement, à l’amélioration du code.

Par ailleurs, le consensus des développeurs ne suffit pas. Aussi réputés qu’ils soient, les développeurs qui travaillent autour du protocole Bitcoin n’ont aucun pouvoir de décision, ils ne sont qu’une force de proposition. Lorsqu’une nouvelle version est proposée (généralement après de longues discussions, de nombreuses relectures et de nombreux tests), le code est proposé aux nœuds du réseau qui sont libres de l’adopter ou pas.

Sauf exceptions (et avec le consensus de la communauté), le code proposé est toujours rétro-compatible, ce qui signifie que les blocs de transactions produits par des noeuds de minage mis à jour avec une nouvelle version sont reconnus comme valides par les anciens noeuds qui n’ont pas accepté la mise à jour (l’inverse n’est pas forcément vrai, ce qui incite les noeuds à se mettre à jour).

Au final c’est le consensus de l’ensemble des nœuds [1] (pas seulement des nœuds de minage) qui a le dernier mot.


[1] N’importe qui peut faire tourner un nœud, sans demander la permission à qui que ce soit et pour un coût assez dérisoire (un Raspberry pi, un disque dur et une connexion internet).