El consenso de Bitcoin

Cuando hablamos de Bitcoin utilizamos conceptos que no son muy comunes en nuestra vida cotidiana, pero que sin embargo son enormemente importantes para los individuos que buscamos la soberanía personal y que trabajamos por desarrollar una preferencia temporal baja.

Uno de estos conceptos es la descentralización, sin la cual sería imposible que funcionase un dinero digital en el que no se pueda realizar el doble gasto y que sea resistente a la censura.

Mucha gente descarta automáticamente la moneda electrónica como una causa perdida debido a todas las empresas que fracasaron desde la década de 1990. Espero que sea obvio que fue solo la naturaleza centralizada de esos sistemas lo que los condenó" Satoshi Nakamoto

El otro concepto que resulta tremendamente importante en Bitcoin, pero que sin embargo está muy poco desarrollado en nuestra cultura occidental es el consenso, ya que aceptamos a ciegas las decisiones que toman otros por nosotros en el nombre de la democracia sin plantearnos siquiera si puede existir un modelo mejor para la toma de decisiones.

En la cultura japonesa, especialmente en el ámbito de la empresa, está muy desarrollado el concepto denominado nemawashi que consiste en un proceso mediante el cual se hacen consultas previas antes de proponer un cambio en la organización. Considerando que los japoneses buscan siempre el consenso y la armonía, el uso del nemawashi les permite eliminar discrepancias y llegar a un acuerdo con el que esté contento todo el mundo.

¿No te parece que con los medios de comunicación y participación ciudadana tan avanzados que tenemos en la actualidad, daría mejor resultado un sistema político en el que se consultara a los ciudadanos cada vez que es necesario tomar decisiones importantes, como puede ser la puesta en marcha de nuevas leyes?

En Bitcoin esto está más que resuelto, tanto desde el punto de vista de la tecnología como en lo que se refiere a la comunidad que colabora en el sostenimiento y evolución de dicha tecnología. Se trata del mecanismo de consenso, como un conjunto de reglas sobre las que funciona la minería basada en prueba de trabajo, lo cual permite añadir nueva información a la cadena de bloques y gracias a esto llegar a una única verdad entre todos los nodos que tienen replicada la base de datos.

De esta forma Bitcoin se constituye como un sistema con gobernanza pero sin gobernantes. La gobernanza se desarrolla a través de un mecanismo de consenso totalmente automatizado, donde nadie tiene que tomar decisiones al respecto porque las normas son conocidas y cualquiera que quiera participar de ello debe aceptarlas desde un principio. Esto genera una disonancia cognitiva en la gente porque se ha acostumbrado a que las reglas las crean y las aplican los gobernantes, lo cual lleva a la típica pregunta del que aún no entiende Bitcoin sobre cuál es su respaldo o quién hay detrás de ello. En el sistema económico tradicional confiamos en las reglas porque confiamos en las que las crean, o al menos si les hemos votado deberíamos confiar en ellos. Por eso a la gente le cuesta aceptar que un sistema puede funcionar con reglas pero sin reguladores.

Hablamos entonces de que Bitcoin se comporta como sistema determinista, gobernado por las matemáticas, porque pase lo que pase todo seguirá funcionando del mismo modo que fue concebido mientras al menos exista un nodo validando las transacciones. Excepto si la comunidad que sustenta la red decide lo contrario, para lo cual será necesario alcanzar otro modelo de consenso, no el basado en la tecnología del que hemos hablado hasta ahora sino el consenso de las personas.

Dicho esto podemos decir que en un sistema descentralizado de tipo blockchain para poder llegar a un consenso se necesita conocer con anterioridad cuáles serán las reglas que debemos aplicar y que deberán cumplir los bloques que contienen el registro de las transacciones para ser admitidos en la cadena. 

Ahora bien, ¿cómo se llega al consenso en el sistema tradicional? por ejemplo cuando hablamos del registro de la propiedad de un bien, tenemos que recurrir a un notario, que realizará un registro siguiendo un cauce oficial y para ello habrá tenido que demostrar unos méritos, como aprobar una oposición, lo cual requiere un esfuerzo e inversión importante, ya que por ejemplo en un examen de notario en España aprueban solo el 10% de las personas que se presentan y para conseguirlo han tenido que estudiar de media 50 horas semanales durante 5 años.

El equivalente en el sistema Bitcoin es la prueba de trabajo y la inversión en forma de gasto energético necesaria para poder escribir transacciones en la cadena de bloques, lo cual es una representación de un mérito adquirido por parte de aquellos que se dejan la piel en el juego, equivalente a los que deciden encerrarse en su casa durante 5 años para aprobar una oposición a notario, además de haber hecho lo propio cuando estudiaron la carrera de derecho.

Esta es la forma en la que Satoshi Nakamoto resolvió magistralmente el problema de los generales Bizantinos, consciente de que entre estos generales podía haber un traidor que enviase mensaje contradictorios que pusieran en riesgo el ataque en el asedio de una ciudad, en el caso de Bitcoin se aseguró de establecer un sistema por medio del cual todos los integrantes del sistema puedan llegar al consenso, tanto para el registro de las transacciones por parte de los mineros como para la validación de las mismas por parte de los nodos.

En lo que se refiere a Bitcoin los mensajes contradictorios introducidos por un general serían el equivalente al intento de realizar un doble gasto por parte de un atacante de la red y la forma de evitarlo se articula a través de la mempool donde se almacenan las transacciones a la espera de la verificación y confirmación por parte de los nodos de la red, proceso por el cual se alcanza el consenso, registrando en la cadena de bloques únicamente aquellas transacciones que se han considerado como válidas.

Considerando que el problema de los generales bizantinos se enuncia con la siguiente pregunta ¿cómo podemos estar seguros que múltiples partes, que están separadas entre sí, pueden llegar a un acuerdo sobre un resultado o acción a tomar? la respuesta a esta pregunta llega a través de la descentralización y la puesta en práctica de la prueba de trabajo, por eso es tan importante que en cualquier red de blockchain exista un número suficiente de mineros y de nodos, porque de no ser así existirá un problema real de seguridad que tirará al traste cualquier intento por establecer un sistema de dinero digital en el que no pueda producirse el doble gasto.

La solución del problema de los generales bizantinos en Bitcoin permite, por primera vez en la historia, transferir propiedad digital a otra persona, de manera que solo el propietario pueda hacerlo, únicamente el destinatario pueda recibirla, todo el mundo pueda validar la transferencia y esta sea reconocida por todos los participantes de la red, todo ello ocurriendo de manera totalmente distribuida.

Veamos entonces ahora con más detalle los dos tipos de sistema de consenso que presenta Bitcoin, el basado en en la tecnología a través de la prueba de trabajo, en el que nos hemos centrado hasta ahora, y el basado en la comunidad a través de los BIP (Bitcoin Improvement Proposals)

Tecnología de Consenso

El objetivo de la prueba de trabajo, como mecanismo de consenso de Bitcoin, es mantener la integridad y seguridad de la red distribuida. Gracias a ello podemos tener la seguridad de los siguientes aspectos: 

  • De quién es la propiedad de una moneda gracias al libro contable distribuido.

  • Saber que una moneda no ha sido gastada antes, solucionando el problema del doble gasto.

  • Tener la certeza de que no se pueden emitir más de 21 millones de monedas, porque está escrito en el código y este no se puede modificar sin el consenso de la comunidad.

  • Y que la emisión de Bitcoins se reduce a la mitad cada 4 años a través de los halvings, hasta alcanzar el límite de los 21 millones.

Consenso en la Comunidad

Además de la tecnología de consenso a través de la prueba de trabajo, en Bitcoin nos encontramos con el modelo de consenso humano, cuando se trata de tomar decisiones al respecto de la evolución que tendrá la tecnología, algo que de por sí es algo complicado ya que Bitcoin se plantea como un sistema conservador donde los cambios se introducen con cuentagotas con la premisa de no poner en riesgo ninguno de los elementos que lo conforman.

Para introducir estos cambios se plantea el sistema BIP como un documento de diseño para presentar características o información para la mejora de Bitcoin. El BIP se ha convertido desde entonces en la forma estándar de comunicar ideas sobre posibles mejoras de Bitcoin, que posteriormente derivan en actualizaciones del software como las introducidas a través de Segwit y Taproot.

Al respecto de Segwit vale la pena fijarnos en cómo se produjo esta actualización, que vino precedida por la denominada guerra del tamaño de los bloques entre aquellos que querían aumentar el tamaño de los bloques para mejorar la escalabilidad de la red y aquellos que no querían hacerlo porque ponía en riesgo la descentralización, al hacer que los nodos necesitasen de ordenadores más potentes para funcionar. La solución de compromiso encontrada por la comunidad permitió mejorar la escalabilidad sin tener que cambiar el tamaño del bloque y de esta forma se impuso la necesidad de mantener la red segura por su función de reserva de valor, frente a la alternativa de convertirse en un medio de pago enfocado en pequeñas transacciones.

Por otro lado encontramos la actualización más reciente, llamada Taproot, que está enfocada en introducir mejoras en la privacidad de los usuarios que utilizan la red y que se ha convertido en un buen ejemplo de cómo articular una estrategia para lograr el consenso por parte de la comunidad, con iniciativas como Taproot Activation que han permitido lograr el consenso de la comunidad para introducir estas mejoras sin que haya sido necesario una confrontación entre diferentes partes como ocurrió en la actualización anterior.

Finalmente para entender mejor cómo el propio funcionamiento de Bitcoin facilita el consenso podemos fijarnos en el concepto de Fork o bifurcación de la cadena, que puede hacerse tanto dentro del propio Bitcoin como cuando se crean clones a través de un Hard Fork. Ejemplo de ello son aquellos que han mantenido el nombre de Bitcoin pero creando nuevas leyes de consenso, como es el caso de Bitcoin Cash o por otro lado otras criptomonedas muy diferentes como Litecoin que amplía la masa monetaria en 4 veces y reduce el tiempo necesario para crear un bloque en la cadena.

De esta forma cuando hablamos de Forks, en relación con el consenso, lo que vemos es que el mecanismo establecido facilita que cualquiera pueda construir aquello en lo que realmente cree. Si considera que lo que tenemos actualmente en Bitcoin es suficientemente bueno permanece en su comunidad y contribuye a su desarrollo, proponiendo pequeñas mejoras pero sin alejarse de sus bases fundamentales. Y por otro lado si alguien considera que esto no satisface sus necesidades puede crear su propia criptomoneda o blockchain, intentando atraer hacia ella a su propia comunidad, algo que pocos consiguen, pero que tampoco nadie va a intentar impedir.