- Retour au menu
- Retour au menuTarifs
- Retour au menuRecherche
- Retour au menuConsensus
- Retour au menu
- Retour au menu
- Retour au menu
- Retour au menuWebinaires et Événements
Le débat sur la liste noire : quand est-il acceptable de toucher au code de Bitcoin ?
Un développeur qui a mis sur liste noire des sites de jeux d'argent avec un code Bitcoin personnalisé a suscité des colères et quelques questions intéressantes.
Une polémique qui a éclaté en ligne ce mois-ci a soulevé une question importante à propos du Bitcoin: les gens devraient-ils être autorisés à coder leurs propres règles, et même leurs opinions, dans leurs propres versions du logiciel qui gère le réseau ?
Le débat a été lancé parmi les utilisateurs deGentoo– une variante du système d’exploitation Linux qui se targue d’être hautement configurable pour répondre aux différentes exigences des utilisateurs – lorsqu’un utilisateur a signalé un problèmesur le forum des bugs Gentoo le 5 octobre.
La version de bitcoind (le client de référence officiel pour interagir avec le réseau Bitcoin ) distribuée avec Gentoo bloquait des adresses Bitcoin particulières, selon le rapport, ce qui signifie que les transactions avec elles ne fonctionneraient T .
La publication a montré que la sortie Gentoo bloquait une transaction avec unSatoshiDiceadresse qui avait été mise sur liste noire.
« PEBCAK », répondit Luke_Jr (ce qui signifie « Un problème existe entre la chaise et le clavier »). « Rien n'indique que quelque chose soit réellement cassé ici. On LOOKS juste un troll. Statut : INVALIDE ou FONCTIONNE ? »
Et ainsi la tempête de feu a commencé.
« Spammer » la blockchain
Luke_Jr estLuke Dashjr, un développeur qui gère son propre pool de minage et as'est présenté aux élections Il est membre du conseil d'administration de la Fondation Bitcoin . Il gère également les progiciels Gentoo et contribue à l'équipe de développement CORE de Bitcoin .
Dashjr avait écrit un patch pour la version Gentoo de bitcoind qui mettait spécifiquement sur liste noire les adresses Bitcoin utilisées par plusieurs sites, dont la majorité étaient des sites de jeux d'argent :SatoshiDice,BitcoinDice,Satoshibones, et Luckybit. Il a également bloqué les adresses exploitées parMastercoin, et Contrepartie. Et l'adresse discutéeicicar une attaque de spam sur le réseau était également sur la liste noire.
Une liste de codes pour le patch peut être trouvéeici.
Dashjr a fait valoir qu'il avait codé en dur la liste noire dans son patch parce que des sites comme SatoshiDice utilisent la blockchain de Bitcoin de manière dommageable. SatoshiDice et certains autres sites de jeux d'argentutiliser la blockchainpour renvoyer le résultat d’un pari. Cela crée un grand nombre de petites transactions sur le réseau, ce qui peut le mettre sous pression.
Dans la discussion ultérieure sur le forum des bugs, Dashjr a qualifié ce modèle de «Attaque DDoS sur le réseau Bitcoin« Les sites qui fonctionnent de cette manière rendent l'exploitation d'un nœud Bitcoin plus coûteuse en créant des transactions aussi inefficaces que possible », a-t-il déclaré à CoinDesk. Il a donc inclus la liste noire dans un correctif conçu pour limiter le « spam » de la blockchain.
Dashjr a expliqué :
Bien que nous n'ayons pas encore de solution appropriée à ce problème, la plupart de ces messages peuvent être identifiés en réutilisant des adresses spécifiques. J'ai donc mis au point une astuce QUICK pour les filtrer selon ce critère. Bien sûr, cette astuce est inappropriée pour le code de référence, mais elle constitue un moyen simple d'améliorer le filtre anti-spam en production en attendant la mise en œuvre d'une meilleure solution (qui pourra alors être proposée sous forme de Request de fusion et publiée ultérieurement avec le code de référence).
Divulgation des modifications
La modification apportée par Dashjr était une implémentation tierce du code CORE de Bitcoin . Elle contraste avec une modification « en amont » de la version de référence officielle du code, qui ne peut être approuvée que par quelques membres de la communauté de développement de Bitcoin . Néanmoins, elle a suscité des réactions mitigées.
Une partie du problème, comme l'a suggéré le développeur CORE de Bitcoin , Mike Hearn, sur un Chat IRC pour développeurs Bitcoin, était une Déclaration de transparence inadéquate. Le correctif était activé par défaut dans la dernière mise à jour du logiciel.
Hearn a dit :
« S'ils veulent distribuer un bitcoind avec des correctifs comme celui de Luke (qui modifient le comportement de manière assez fondamentale), alors ils devraient faire un fork en amont approprié avec un nouveau nom, afin que vous soyez toujours sûr de ce que vous obtenez. »
Dashjr a concédé qu'il aurait pu fournir une meilleure documentation sur l'effet du correctif. Lorsque les utilisateurs ont mis à jour leur logiciel Gentoo, ils ont vu un message indiquant qu'un correctif pour bitcoind était en cours d'installation, a-t-il déclaré, ajoutant :
Malheureusement, il semble que tous les utilisateurs ne l'aient pas remarqué, et certains se sont même sentis trompés. De plus, j'ai négligé de documenter correctement cette option, de sorte que d'autres utilisateurs n'ont pas su qu'elle étendait le filtrage anti-spam à la correspondance d'adresses (en fait, lorsque j'ai ajouté le correctif au paquet Gentoo, j'avais moi-même oublié qu'elle le faisait).
À l'avenir, je m'efforcerai d'améliorer la documentation et la sensibilisation des utilisateurs afin de répondre à leurs attentes.
Dashjr a posté unexcuses publiqueset j'ai désactivé le correctif par défaut, en plus de séparer la partie gestion du spam dans un correctif séparé. Pour certains utilisateurs indignés, tout va à nouveau bien au pays de Gentoo.
Des questions plus profondes
Cependant, la discussion a soulevé des questions intéressantes. Certains participants au forum de discussion sur les bugs de Gentoo ont estimé que l'intégration d'une liste noire d'adresses dans une implémentation de Bitcoin constituait une censure, et se sont demandé où cela s'arrêterait et qui déciderait de ce qui serait mis sur liste noire ou non.
Est-il juste d’essayer de coder vos propres règles sur la façon dont quelque chose fonctionnera dans une version du logiciel Bitcoin ?
Cela dépend, a déclaré Gregory Maxwell, membre de l'équipe de développement du CORE Bitcoin , expliquant :
Certaines parties de Bitcoin doivent concorder parfaitement, BIT par BIT, dans tous les nœuds du réseau, sinon le système ne fonctionne T . Nous appelons cela des « règles de consensus », qui couvrent des aspects tels que : « Ce bloc est-il valide ? » Tout désaccord ou divergence dans les règles de consensus est techniquement dangereux pour le système. »
D'autres éléments sont tout simplement meilleurs s'ils sont bien connus et globalement uniformes, a-t-il ajouté, mais ils ne doivent T nécessairement concorder. Cela inclut des éléments tels que les transactions qu'un nœud transmettra.
Maxwell qualifie ces éléments de « Juridique». Une certaine diversité est utile à ce niveau, a-t-il déclaré, car elle peut protéger le réseau contre les attaques à grande échelle. Une diversification excessive peut nuire à l'expérience des utilisateurs de Bitcoin . « Mais la diversité ici ne peut T briser le système », a-t-il souligné.
Même si Maxwell n'était T personnellement d'accord avec le correctif de Dashjr, il a souligné que ce n'était que son Analyses. Les utilisateurs devraient pouvoir exécuter ce qu'ils veulent sur leurs nœuds Bitcoin . Après tout, bitcoind est distribué sous une licence de logiciel libre du MIT qui offre cette possibilité aux développeurs.
Regard vers l'avenir
À l'avenir, Dashjr aimerait voir une variable encodée dans Gentoo qui permettrait d'installer différents correctifs avec différentes politiques sur le système d'exploitation.
Il a dit :
« De telles politiques resteraient des correctifs et ne seraient pas codées directement dans le code de référence (qui deviendrait lui-même une option de Juridique « vanille »). »
Dashjr travaille également sur une extension du CORE de Bitcoin qui déplacerait toutes les décisions Juridique vers une nouvelle « classe ». discussion en ligne pour cette fourchette, il plaide pour avoir des nœuds Bitcoin avec plusieurs politiques.
Mike Hearn adopte une position plus dure sur l'exécution de code personnalisé qui valide les transactions Bitcoin à sa manière, arguant que ce n'est T parce qu'une licence vous permet de faire quelque chose que vous devez le faire :
Luke défend cette idée de « Juridique», mais il ne peut y avoir de Juridique dans la gestion des transactions Bitcoin . Si les mineurs ou les commerçants divergent, cela entraîne une fraude aux paiements. Ce n'est pas acceptable, car le but même du Bitcoin est de bloquer les doubles dépenses.
Dashjr soutient qu'il peut être dangereux que les gens modifient ou réimplémentent le code de consensus Bitcoin , et donnelibbitcoin et btcdà titre d'exemple. Il ne pense T que les expériences avec du code consensuel devraient être arrêtées, tant que les gens sont conscients des dangers.
Il ne considère T les expériences de changement de Juridique comme dangereuses, affirmant au contraire qu'elles sont bénéfiques.
« Des changements de Juridique sont particulièrement attendus des nœuds, en particulier des mineurs, et le code de référence pour la Juridique est intentionnellement maintenu assez conservateur et n'est pas du tout destiné à être utilisé tel quel », a-t-il déclaré.
Quand le recyclage est mauvais
Ils devront peut-être accepter de ne pas être d’accord, mais il y a un autre problème en jeu : les adresses Bitcoin réutilisées.
De nombreux sites qui ajoutent du matériel à la chaîne de blocs, comme SatoshiDice, réutilisent les adresses Bitcoin , et de nombreux développeurs, dont Dashjr et Maxwell, Considérez cela comme une mauvaise chose.Après tout, ce sont les adresses réutilisées qui ont permis à Dashjr de bloquer certains sites.
Si une organisation ou un individu réutilise continuellement une adresse Bitcoin , cela le rend plus facilement identifiable sur le réseau et facilite également l'identification des personnes effectuant des transactions avec lui.
Cela peut entraîner toutes sortes de problèmes, prévient Maxwell, y compris la censure. Après tout, c'est ainsi que Dashjr a identifié les sites à mettre sur liste noire.
Si la réutilisation des adresses prolifère parmi les bitcoiners, alors la censure par des correctifs comme celui de Dashjr sera le cadet de leurs soucis, prévient Maxwell.
Il a expliqué :
« Si les gens utilisent Bitcoin de manière paresseuse et facilement censurée, en réutilisant des adresses – qui ont toujours été conçues pour être uniques dans la conception du système – alors cela crée un risque systémique sérieux dans la mesure où quelqu'un pourrait essayer d'ordonner aux nœuds, aux développeurs et/ou aux mineurs de censurer le système. »
La sensibilisation et la création de meilleurs outils sont une solution pour atténuer le problème, a suggéré Maxwell. Mais qu'en est-il de la liste noire des correctifs de Dashjr ?
« Je comprends certains de la logique qui consiste à inciter les gens à corriger leurs vulnérabilités en les attaquant », a-t-il conclu. « Ce sera peut-être efficace, mais attaquer les gens n'est T une chose que je soutiens. »
Liste noireimage via Shutterstock
Danny Bradbury
Danny Bradbury est écrivain professionnel depuis 1989 et travaille en freelance depuis 1994. Il couvre la Technologies pour des publications telles que le Guardian.
