Bitcoin: Gobernanza

Bitcoin está sufriendo de una división tecnico/política en este momento, por practicidad se resume el dilema con “Bigblockers y Smallblockers”. No me siento cómodo con esta simplificación, porque me parece que ignora el problema de fondo que es la ausencia de un mecanismo de consenso. A continuación voy a detallar cual, en mi opinión, es el verdadero problema que estamos enfrentando en Bitcoin.


Hace poco tiempo me topé con este meme en Facebook que me hizo reir pero a la vez reflexionar.

Hay dos tipos de personas en este mundo: aquellos que creen que hay dos tipos de personas y otros los suficientemente inteligentes como para entender mejor el mundo.

Resulta que terminamos siempre en una falsa dicotomía, Bigblockers vs Smallblockers, BTC vs BCH, Bitcoin Core vs Bitmain o Jihan Wu, Roger Ver, etc. La decentralización contra los corruptos estados o despiadas corporaciones, los “usuarios” vs los mineros. El bien y el mal basicamente.

Me parece sano que se ponga en cuestionamiento el rol de cada uno de los que participa y que haya espacio para la diversidad de opiniones. El problema es cuando empieza el fanatismo por un lado determinado y se da batalla contra los jugadores más que contra los argumentos y me temo que esto mismo está sucediendo en Bitcoin ahora.

Bitcoin Core

A mi entender, como programador, son excelentes desarrolladores con mucha capacidad para resolver problemas técnicos.

Su postura es la de tener un Bitcoin orientado a la reserva de valor y disponible para que todo el mundo pueda correr un nodo en su casa. De ésta manera tendríamos un ecosistema descentralizado como originalmente plantéo nuestro “mesías”. Para lograrlo deberíamos evitar aumentos de tamaño de bloque y escalar off-chain, con mecanismos como sidechains, drivechain, Lightning network, etc. El primer paso para concretar la visión fué la activación de SegWit.

El resto

Sí, puse el resto porque la oposición a Bitcoin Core es muy diversa y no puedo nombrarlos a todos. No estan todos alineados ni mucho menos con los mismos intereses. Tampoco estan agrupados.

Entre “el resto” tenemos propuestas variadas de escalabilidad, incluyendo off-chain, on-chain, tamaño de bloques, segwit, implementaciones contra malleability, quadratic hashing, flextrans, etc.

Tenemos algunos más duros que otros, como Bitcoin Cash, que me pareció irresponsable el modo que tuvo de hacer el fork, casi “sin preguntar” y dividiendo el Bitcoin en 2 para siempre, pero eso es largo y amerita un nuevo post.

Consenso

De la infinidad de discusiones que se hicieron al respecto de este asunto de escalabilidad (lleva unos cuantos años en vista), no pudo haber un acuerdo. Lo más cercano que tuvimos a un consenso fue el NYA (New York Agreement) que consiste en activar Segwit como softfork para luego en Noviembre hacer un hardfork de 2MB. Los mineros cumplieron con su parte implementando el BIP 91 para llevar acabo despues el BIP 141.

Este fué a mi parecer, la representación y punto medio más cercano que se podía pedir (Segwit para mediano plazo, 2MB para bajar la presión de las fees que a día de hoy son rídiculas, haciendo LN inviable tambien). El equipo de Bitcoin Core no está de acuerdo con ningún tipo de consenso distinto al de sus ideales, aceptan cualquier tipo de aporte que siga sólo sus principios. Hicieron oídos sordos a cualquier tipo de consenso, han declinado e ignorado BIPs incluyendo el de Sergio Lerner, importante colaborar de Bitcoin.

Como saber lo que quieren los usuarios?

Se han discutidos varias formas:

  • Cantidad de Nodos (Se pueden reproducir indefinidamente)
  • Poder de Minería (Sólo votan los mineros)
  • Proof of stake — https://vote.bitcoin.com/
  • Votaciones en redes sociales
  • Voto de pools

Ninguna de estas propuestas parece ser válida según Bitcoin Core, estuvieron de acuerdo con algunas hasta que dejó de favorecerles.

Aquí tenemos a uno de los desarrolladores de Core, los invito a que lean toda la conversación. Están sugiriendole un mecanismo de consenso.

Que no necesitamos un mecanismo de consenso? El único que tenemos es el de hashing power, por protocolo, y si perdieran parte de este harían un hardfork para cambiar el POW (Como dice en el tweet del thread). Yo no digo que sean corruptos ni malvados, simplemente no están dispuestos a escuchar lo que quiere la gente, quieren darle lo que supuestamente necesitan. Atornillados en 1MB de bloque, un tamaño arbitrario que fué impuesto para combatir el spam, resulta que ese veneno ahora nos mata a nosotros también. Jamas hicieron un estudio de por qué sí 1MB y no 2, 3, 50KB o 5 transacciones por bloque. Es ridículo que terminemos con una regla que no fué creada con ese propósito, y ahora la defendamos como si tuviera otro en realidad.

Es open source, cada uno puede hacer su fork y listo

El propósito es hacer una gran red con una gran comunidad. Ese argumento tan usado presenta sus dificultades.

En primer lugar, Bitcoin Core tiene la marca Bitcoin, si! así de loco como suena. Heredaron y ganaron (como se quiera) el derecho al trono. Son lo más cercano a un gobierno que tenemos. Cualquiera que quiera hacer un fork, deberá inventarse un nuevo nombre, deberá implementar un replay protection y arrancar de cero. Es casi como tener el código fuente de Facebook, sin los usuarios, no valdría de mucho no? Yo pensé que el Bitcoin era de todos.

En segundo lugar, no es práctico hacerlo y se requieren muchísimos recursos. Si fueran los desarrolladores actuales de Bitcoin core los que hicieran el fork, no sería suficiente para darle confianza a la gente a cambiar de rumbo, necesitarian aliarse con capitales fuertes. Hay empresas detras del fork? Entonces es una altcoin centralizadora, corrupta, illuminati y traidora a la patria de Bitcoin.

No quisiera tildar a la comunidad de ignorante, no puedo esperar que todos tengan tiempo y dedicación para leer todo lo que sucede. Pero la realidad es que muchos descansan en el status-quo, confían ciegamente en los “descendientes de Satoshi”. Y la realidad es que si hubieran formado parte del NYA, este fork y el de Bitcoin Cash probablemente no estarían pasando.

Gobernanza

Necesitamos de manera urgente un mecanismo de gobernanza. Algún parámetro a medir la voluntad de la gente y así poder definir como resolver estos conflictos. Si queremos un Bitcoin libre, tenemos que organizarnos para no dejar en las manos de unos pocos, por más leales o buenos que nos parezcan. Sino no es más que una dictadura del bueno, por ahora…