Hard forks i altres "rivals" de Bitcoin

Fa uns quants mesos vaig dedicar una entrada a parlar sobre Bitcoin, del seu funcionament i de la tecnologia que hi ha darrere. Aquella entrada em va servir també per a parlar de passada sobre l'existència d'altres xarxes i criptomonedes, avui en parlaré més en detall. Com que n'hi ha moltes, a aquesta entrada només parlaré d'aquelles que, suposadament, són rivals o competidores directes de Bitcoin (incloent els anomenats hard forks de Bitcoin).

Hard forks de Bitcoin, Litecoin, Monero, Zcash, Ripple, etc

Per a aclarir termes, no considero rivals o competidores directes aquelles xarxes i criptomonedes que ofereixen altres funcionalitats diferents a les teòricament oferides per Bitcoin (como ara totes aquelles que estiguin més enfocades cap als smart contracts, dels que parlaré en un futur), si no aquelles que únicament pretenen servir com a mitjà per a realitzar transaccions electròniques entre usuaris de manera descentralitzada a través de l'ús de la tecnologia blockchain i la criptografia. Aquesta funcionalitat, servir com a mitjà de pagament (una de les propietats bàsiques del diner, les altres dues són servir com a unitat de compte i com a dipòsit de valor), és la funcionalitat més bàsica (i la original) de bitcoin i de les criptomonedes en general.

També, com ja explicava a l'entrada abans esmentada, acostumo a fer diferenciació entre la xarxa pròpiament dita (tot allò que permet que es puguin realitzar les transaccions) i la criptomoneda (allò que es transfereix, és a dir, la unitat de compte dins de la xarxa en qüestió), encara que habitualment s'utilitzen ambdós conceptes de manera indistinta.

Millores en la escalabilitat, seguretat o facilitat d'ús de Bitcoin com a mitjà de pagament

Un cop feta aquesta introducció, anem a veure en que consisteixen aquestes altres xarxes i què ofereixen per a competir (o, com a mínim, intentar-ho) amb Bitcoin. El que tenen en comú les xarxes blockchain que mencionaré a aquesta entrada és que totes pretenen millorar la funcionalitat de Bitcoin com a mitjà de pagament a nivell global, millorant la seva escalabilitat (una de les principals limitacions tècniques de Bitcoin avui dia), seguretat o facilitat d'ús.

L'escalabilitat fa referència a la capacitat de Bitcoin per a créixer i funcionar de manera òptima a mesura que més usuaris (eventualment tota la població mundial) vagin incorporant-se a la xarxa. Més usuaris suposen més transaccions i, actualment, Bitcoin té un límit pel que fa al nombre de transaccions que pot processar en un període determinat de temps. S'acostuma a dir que aquest límit és 4,6 transaccions per segon (encara que el límit teòric és 7 transaccions per segon). Per a fer-nos una idea de l'ordre de magnitud, és habitual comparar aquest límit amb les 1.700 transaccions per segon que processa una xarxa global però centralitzada com la de Visa (i aquest nombre és només el que processa de mitjana cada segon, el límit teòric se suposa que és 24.000 transaccions per segon).

El límit de Bitcoin ve determinat pel nombre de transaccions que "caben" dins de cada block i el temps que es triga a validar un nou block. Evidentment, hi ha diferents propostes per a augmentar aquest límit dins de la pròpia xarxa de Bitcoin: augmentant la mida del block, optimitzant l'espai que ocupa cada transacció, reduint el temps que es triga a validar nous blocks o mitjançant una mena de xarxes paral·leles a Bitcoin (és el que vindria a ser el que es coneix com a Lightning Network, de la qual parlaré a la propera entrada). Algunes d'aquests propostes no han estat acceptades per la comunitat Bitcoin per diferents motius, fet que ha provocat l'aparició de hard forks que s'han separat de la xarxa de Bitcoin o la creació d'altres xarxes sense cap relació amb Bitcoin.

Començaré parlant dels hard forks. Un fork (bifurcació en anglès) és una situació que es pot donar a qualsevol blockchain quan es produeix un canvi del seu protocol o regles de funcionament, en tenim de dos tipus: soft forks (quan el canvi no requereix que tots els nodes de la xarxa s'actualitzin d'acord al nou protocol per a poder funcionar) i hard forks (quan sí que és necessari que tots els nodes de la xarxa s'actualitzin). Si davant un hard fork no tots els nodes acaben acceptant els canvis (al trobar-se amb la "bifurcació" alguns decideixen seguir recte pel mateix "camí" mentre que altres decideixen agafar la "desviació") es produeix la creació d'una nova xarxa separada de la xarxa original.

Hard forks de Bitcoin: Bitcoin Cash, Bitcoin SV i Bitcoin Gold

Un dels exemples més coneguts de hard fork és Bitcoin Cash (van haver-hi altres propostes similars abans però no van tenir gaire èxit: Bitcoin XT, Bitcoin Classic o Bitcoin Unlimited). Quan es va proposar augmentar la mida del block de Bitcoin d'1 MB a 8 MB la comunitat es va dividir, molts usuaris de Bitcoin van argumentar (i segueixen fent-ho) que augmentar la mida dels blocks va en detriment de la descentralització de la xarxa, ja que fer-ho suposa que la mida de la blockchain també augmenti, fent que als petits usuaris els resulti més costós o fins i tot inviable constituir-se com a nodes de la xarxa. Així doncs, aquest desacord va provocar que la xarxa Bitcoin patís un hard fork l'any 2017, que va donar lloc a una xarxa diferent a Bitcoin anomenada Bitcoin Cash (i la seva corresponent criptomoneda, coneguda per les sigles BCH). Actualment, el block dins de la xarxa de Bitcoin Cash té una mida màxima encara major: 32 MB.

Però fins i tot aquesta mida és insuficient per a alguns usuaris, fet que (juntament amb altres detalls de caràcter tècnic sobre els protocols de funcionament de las xarxa) ha provocat que el propi Bitcoin Cash també patís un hard fork, que va donar lloc a una nova xarxa anomenada Bitcoin SV (i la seva corresponent criptomoneda, coneguda per les sigles BSV) amb la proposta d'augmentar la mida dels blocks fins a 128 MB.

No tots els hard forks han estat motivats per la voluntat de millorar l'escalabilitat de Bitcoin i augmentar el nombre de transaccions per segon que pot processar. En el cas de Bitcoin Gold, que es va separar de la xarxa de Bitcoin l'any 2017, el canvi consistia en descentralitzar i democratitzar el procés de minat. Per a fer-ho es va modificar la tècnica criptogràfica utilitzada per a validar blocks (Bitcoin Gold utilitza una funció hash anomenada Equihash en comptes de SHA-256 que es la que utilitza Bitcoin) que impossibilita que el minat pugui ser realitzat per ASICs (Circuits integrals d'aplicació especifica). D'aquesta manera, teòricament, es descentralitzaria el minat evitant les grans "granjes" de minat formades per una infinitat d'ASICs en favor dels petits usuaris que podrien minar utilitzant qualsevol targeta gràfica (com la del seu propi PC de sobretaula). No es pot parlar de Bitcoin Gold sense mencionar que ha sigut víctima de diferents atacs on un usuari o grup d'usuaris han aconseguit arribar a assolir un poder de computació superior al 51% del total de la xarxa i, per tant, han pogut modificar la blockchain lliurement i sostreure criptomonedes a altres usuaris.

Xarxes que parteixen del codi de Bitcoin: Litecoin i Monero, Dash i Zcash

Una altra xarxa similar a l'anterior (tot i que ha tingut molt més èxit) és Litecoin, creada l'any 2011 a partir del codi de Bitcoin (va néixer com una xarxa independent de Bitcoin, no com a hard fork). Cal recordar que el codi font de Bitcoin és totalment obert, així que tothom (que sàpiga programació, clar) pot veure com funciona i també pot modificar-lo lliurement i crear les seves pròpies xarxes. En el cas de Litecoin, també es va modificar la funció hash (s'utilitza una funció anomenada scrypt), aquesta modificació implica que el temps que es triga de mitjana per a minar un block nou sigui de 2,5 segons (quatre vegades menys que Bitcoin) i també que sigui més difícil utilitzar ASICs per a minar.

Monero (la seva criptomoneda es coneix per les sigles XMR) també utilitza una funció hash diferent a SHA-256, en aquest cas la funció s'anomena RandomX. L'objectiu d'aquesta funció també és dificultar la utilització d'ASICs. El temps que triga de mitjana a crear-se un block nou és 2 segons. Però la principal particularitat de Monero és l'ús d'una sèrie de tècniques criptogràfiques per a ocultar els detalls de les transaccions ("ofuscant" les dades relatives a les quantitats transferides, adreces d'origen i destinació, balanços de les adreces, etc.). És per tant una xarxa molt més anònima que Bitcoin (on, recordem-ho, totes els detalls són visibles públicament), fet que ha provocat diverses acusacions sobre l'ús de Monero per a activitats il·lícites.

Una altra xarxa a tenir en compte és Dash. La seva particularitat, a més a més d'utilitzar una funció hash anomenada X11 i tenir un temps de creació de nous blocks de 2,5 segons, és que funciona com una organització autònoma pel que fa a la pressa de decisions relativa al seu desenvolupament. Resumidament, altres xarxes implementen els canvis directament a través de la validació de nous blocks per part dels nodes, en canvi a Dash existeixen els anomenats masternodes (qualsevol node que disposi d'un balanç mínim de 1.000 DASH, la criptomoneda d'aquesta xarxa) que poden votar les propostes realitzades per canviar les regles i protocols de Dash. Aquesta particularitat també es tradueix en que la recompensa per la creació dels nous blocks no la reben només els miners, si no que es reparteix també entres els masternodes i la organització de Dash.

També cal mencionar Zcash que, igual que Monero, també facilita l'anonimat de les transaccions realitzades. Zcash utilitza la mateixa funció hash que Bitcoin Gold (Equihash), així que també impossibilita el minat per part d'ASICs. També té trets en comú amb Dash pel que fa al funcionament com a organització autònoma i a les recompenses pel minat de nous blocks. Però la seva principal particularitat és que el temps que triga de mitjana a crear-se un nou block és de només 75 segons.

Xarxes radicalment diferents a Bitcoin: Ripple i Stellar

Per últim, vull mencionar dues xarxes més: Ripple i Stellar, encara que són molt diferents a Bitcoin convé saber de la seva existència. La seva principal particularitat és que no utilitzen la prova de treball (proof-of-work o PoW) com a mecanisme de validació dels nous blocks, tampoc utilitzen la prova la prova de participació (proof-of-stake o PoS) ni cap altre mecanisme similar, en el seu lloc utilitzen un mecanisme de consens. Aquest mecanisme implica que no hi ha procés de minat per a validar blocks i és molt més ràpid i eficient en termes d'ús d'energia i de recursos que el PoW o el PoS. A canvi, és un mecanisme molt més centralitzat en comparació.

La conclusió més evident és que el nombre de xarxes és enorme i no para de créixer. A aquesta entrada només n'he parlat d'un percentatge ínfim, tot i així ja veiem que les possibilitats a l'hora de crear diferents xarxes (decidint la mida del block, el tipus de funció hash, el mecanisme de validació, etc.) són infinites. El fet que el codi font de Bitcoin i tota la resta sigui lliure en facilita la modificació i la creació de noves xarxes per part dels programadors.

Algunes propostes de millora van en detriment de la descentralització de la xarxa 

El gran nombre de xarxes també ens pot fer dubtar que sigui realment possible que totes elles tinguin un grau de descentralització suficient per a garantir el correcte funcionament de la xarxa i la seguretat de les transaccions. Una xarxa que no tingui prou èxit i, per tant, no hi hagi un nombre suficient de nodes que validin els blocks pot comportar que sigui massa vulnerable i poc segura. Ja hem vist l'exemple amb els diferents atacs que ha patit recentment la xarxa de Bitcoin Gold.

La descentralització és, al meu parer, el que dóna sentit a la tecnologia blockchain. Trobo que qualsevol altre mecanisme (organismes de govern, entitats reguladores, mecanismes de consens, etc.) que no sigui prioritzar la seva descentralització per a garantir la seguretat de la xarxa és poc eficient. Una blockchain centralitzada però segura és un malbaratament de recursos.

Per tant, qualsevol intent de millora que comporti una major dificultat per a que la xarxa es mantingui completament descentralitzada pot ser contraproduent. L'augment de la mida dels blocks o la disminució del temps de validació en poden ser un exemple (per això la comunitat Bitcoin ha rebutjat majoritàriament aquestes propostes). Com deia a l'inici, la pròpia xarxa Bitcoin ja compta, directament o de manera paral·lela a la xarxa, amb diferents alternatives o propostes per a millorar la seva utilitat com a mitjà de pagament, sense perjudicar la seva descentralització.

Evidentment, aquests darrers paràgrafs són només una opinió personal (i hi ha molta gent que no la comparteix), l'objectiu principal d'aquesta entrada era simplement donar a conèixer algunes xarxes i que cadascú pugui extreure'n les seves pròpies conclusions. Us animo a deixar els vostres comentaris (què us ha semblat l'entrada? què opineu d'aquestes alternatives? en coneixeu alguna altra que hagi d'incloure a la llista? hi ha alguna errada o alguna idea no hagi quedat prou clara?), moltes gràcies per la lectura!

Comentaris