Quelle est cette histoire avec Bitcoin Cash ?

Des problèmes de nomenclature

Le 1er août 2017, une nouvelle entité appelée Bitcoin Cash est apparue dans le monde des crypto-monnaies. Les publications de référence ainsi que les observateurs extérieurs ont de la peine à identifier la nature de ce « Bitcoin Cash », à savoir, est-ce un altcoin ou une hardfork de Bitcoin ? C’est-à-dire : est-ce que Bitoin Cash est une nouvelle crypto-monnaie différente de Bitcoin, ou est-ce qu’elle est une variante ? La différence n’est pas anodine.

Des choses sont cependant sûres : Bitcoin Cash utilise le même historique de la blockchain Bitcoin jusqu’au bloc n°478’558. À partir du bloc 478’559, la blockchain de BCash n’a plus rien à voir avec celle de Bitcoin. BCash n’utilise pas des bitcoins mais des bitcoin cash. Il existe désormais donc deux crypto-monnaies différentes (parmi une myriade d’autres) : Bitcoin et Bitcoin Cash.

 

Aux origines du problème : Segregated Witness

Aux alentours de mai 2017, le réseau Bitcoin commençait sérieusement à être congestionné : il y avait trop de transactions par jour par rapport à ce qu’il était possible pour les mineurs de traiter, faisant que le temps d’attente pour les transactions augmentait, et avec lui les coûts de transfert également. Cela est en partie dû à la taille des blocs de la blockchain, qui est d’1 mega-octet : à l’origine de cette limitation, la volonté de se prémunir contre des mineurs qui créeraient de faux blocs immenses pour arnaquer les utilisateurs.

Le problème est que, si vous avez l’équivalent de 8 mega-octets de transactions en attente sur le réseau, il est, en théorie, plus rapide et efficace de les mettre dans un seul bloc de 8 mega-octets que dans huit blocs d’1 mega-octet. Or changer la taille des blocs est une affaire difficile : il faudrait changer le code de Bitcoin et forcer ainsi les utilisateurs et les mineurs à accepter ce changement unanimement, au risque pour eux de ne plus pouvoir utiliser Bitcoin.

La solution eut un nom : SegWit pour Segregated Witness, nom qui vient du fait que cette solution propose d’isoler (en anglais segregate) la portion de code qui a pour fonction de déverrouiller les signatures et qui s’appelle justement le witness data. Les transactions auront désormais deux parties distinctes, et les données originelles dites witness sont mises en quelque sorte comme un appendice à la fin de la structure codée.

Segregated Witness (BIP141) – BIP est l’acronyme de Bitcoin Improvement Proposition ou « proposition d’amélioration de Bitcoin » – permet pratiquement de doubler la taille des blocs de la blockchain, sans pour autant changer fondamentalement le code source et éviter ainsi une fork trop dure. Une simple mise à jour du programme suffit à implémenter universellement la modification. SegWit a été activé le 24 août 2017 avec succès. Il s’agit d’une softfork.

 

Une solution qui fâche

Mais pour de nombreux développeurs et investisseurs, SegWit ne fait que repousser le problème. Ils se basent sur les propos de Satoshi Nakamoto selon lesquels Bitcoin possède déjà le potentiel nécessaire pour remplacer des systèmes de paiements par carte de crédit comme VISA et que pour débloquer ce potentiel, il faut supprimer les limitations artificielles de taille sur les blocs.

Des développeurs – il n’y pas une seule team de développeurs pour le coup – ont ainsi décidé de refuser l’implémentation de SegWit et de créer une nouvelle branche à partir de la blockchain de Bitcoin. Jouissant à la base de soutien de la part de Bitmain – qui s’est plus tard rétracté – et les chinois ViaBTC, Bitcoin Cash a littéralement fait une copie conforme de la blockchain Bitcoin et a ensuite continué selon sa propre technologie à partir du 1er août.

Cela eut pour effet que tous ceux qui possédaient des bitcoins ont également eu des bitcoin cash. Si vous aviez 0.5 bitcoin le 31 juillet, le 1er août vous aviez aussi 0.5 bitcoin cash. L’autre nouveauté est que les blocs de la blockchain font désormais 8 mega-octets en taille.

 

Une solution qui fâche encore plus !

L’on pouvait observer alors trois camps de réactions à l’arrivée de Bitcoin Cash : ceux qui soutiennent mordicus Bitcoin et appellent au boycott de Bitcoin Cash ; ceux qui voient dans Bitcoin Cash une continuation honnête du projet Bitcoin, voire le préfèrent à son parent ; ceux qui ne choisissent pas et se disent « que le meilleur gagne ». En effet, si l’une des deux branches était de moins en moins usitée, elle finirait par disparaître au profit de l’autre. Pour l’instant, les deux crypto-monnaies coexistent.

Toutefois, prendre position est une affaire autrement plus grave quand il s’agit des exchanges. Ce fut le cas pour Coinbase, qui a refusé bec et ongles d’inclure BCash dans ses transactions. Suite à un retour de flammes des utilisateurs qui ont menacé l’exchange de les poursuivre en justice pour détenir illégalement des fonds appartenant à des particuliers, Coinbain a finalement annoncé accepter les transactions en BCash le 1er janvier 2018, et que les clients détenant des bitcoins lors du 1er août se verraient attribuer le montant équivalent en BCash au moment de la « fork ».

Les exchanges restent par ailleurs passablement indécis concernant BCash, ce qui témoigne d’un manque de confiance envers cette crypto-monnaie. Pour donner des exemples, Kraken, Bitfinex et Poloniex acceptent BCash ; BitMEX, Exodus, and Bitstamp ne l’acceptent pas.

Quoi qu’il en soit, d’un point de vue externe, sans rentrer dans les débats idéologiques, BCash peut également apparaître comme une simple nouvelle crypto-monnaie, entièrement indépendante de Bitcoin. Le fait que les deux continuent à ce jour d’exister pourrait tant prouver que le système Bitcoin était assez fort et ancien pour surmonter un tel aléa sans dommage, et que BitcoinCash n’était pas une si mauvaise idée après tout puisqu’il y a suffisamment de supporters pour en faire une crypto-monnaie viable.

 

Un dernier mot sur SegWit

En parallèle de la proposition SegWit, il avait été convenu que SegWit2x serait activé dans un intervalle de 6 mois à compter du 23 mai 2017. SegWit2x doublerait de fait la taille limite des blocs de la blockchain, pour passer à 2 mega-octets. Toutefois, cela se passerait via une hardfork, puisqu’un tel changement implique de modifier le code source. Nonobstant, il semblerait que SegWit soit si bénéfique pour Bitcoin que la hardfork SegWit2X soit en vérité inutile et ainsi n’arrivera pas.