La sempiterna lucha de Bitcoin - Cómo Bitcoin prospera en el filo entre el orden y el caos

Nota del traductor

A diferencia de la mayoría del contenido de mi web, este no es un contenido original escrito por mí. Se trata de una traducción del artículo escrito por Gigi y publicado originalmente aquí el 22 de diciembre del 2019.

A pesar de la "antigüedad" del artículo (4 años en Bitcoin es toda una eternidad) sigue siendo muy vigente e interesante en el 2023.

La traducción y la publicación en mi propia web ha sido posible gracias a que el autor ha creado generosamente el contenido bajo licencia CC BY-SA 4.0 como también describe en su web. En consecuencia, esta traducción se distribuye también bajo la misma licencia.

He intentado hacer una traducción fiel de contenido y forma, así que la primera persona del artículo se corresponde a Gigi y no a mí.

Disfrutadlo.

- Iván


Bitcoin funciona. Sin importar cuáles sean las opiniones que tengas sobre este extraño fenómeno, indudablemente funciona, avanza o, como yo, y otros, hemos argumentado anteriormente, está vivo. Incluso si la mayor parte del mundo se detuviera, la red de Bitcoin continuaría produciendo bloques válidos cada 10 minutos aproximadamente.

Bitcoin funciona debido a muchas cosas: teoría de juegos, incentivos económicos, criptografía, ingeniería ingeniosa, resistencia a nivel de red, entre otros. Matar a Bitcoin es difícil. Realmente difícil. Matar a Bitcoin es como matar una idea. Una idea que está arraigada en las mentes de cientos de miles de individuos apasionados.

En primer lugar, es bastante difícil cerrar Internet a nivel global; y en segundo lugar, Bitcoin puede trascender Internet. Todo lo que puede transmitir datos puede utilizarse para transmitir transacciones de Bitcoin y todo lo que puede almacenar datos puede guardar una copia de la cadena de bloques de Bitcoin. Es simplemente un libro mayor (un ledger); todo el sistema es solo información.

Curiosamente, la red de Bitcoin encarna la lucha eterna de la vida: la lucha contra la entropía; una batalla en el filo entre el orden y el caos.

Para entender esta lucha caótica, y cómo Bitcoin prospera debido a ella, es útil discutir brevemente los siguientes conceptos: entropía, aleatoriedad e información. Espero convencerte de que estos conceptos están relacionados y que son esenciales en la continua lucha por la supervivencia de Bitcoin.

Adentrémonos.


Entropía

En informática, la entropía puede utilizarse para medir la aleatoriedad de una fuente de datos. En criptografía en general, y en Bitcoin en particular, una buena fuente de entropía es esencial para mantener la seguridad. Si se arruina la entropía de tu clave privada (también conocida como frase semilla), tus bitcoins pronto serán mis bitcoins.

La entropía es un concepto bastante complicado, pero en términos generales, describe cuán aleatorio o cuán compresible es algo. Nótese que "compresible" es sinónimo de "comprimible", que se puede comprimir; no es una errata de "comprensible".

  • Alta entropía: aleatoriedad.
  • Baja entropía: orden.

O, en otras palabras, con un guiño a Tsachy Weissman:

  • Alta entropía: poco compresible.
  • Baja entropía: muy compresible.

Existen fórmulas complicadas y varias definiciones más o menos ambiguas de entropía. El concepto tiene aplicaciones en termodinámica clásica, termodinámica estadística, física cuántica estadística, orden y desorden, vida, astrofísica y más. También es una medida de irreversibilidad.

En Bitcoin, la reversibilidad y la irreversibilidad son probabilísticas. Si suficientes personas con suficiente poder de hash colaboran, las transacciones podrían revertirse. La irreversibilidad absoluta no existe en Bitcoin. La liquidación final nunca es definitiva, sino siempre probabilística. Sí, las posibilidades de reversión pueden ser astronómicamente bajas, pero aun así, la liquidación final no existe y no debería existir en Bitcoin. El consenso de Nakamoto lo prohíbe.

La primera ley de la termodinámica, también conocida como la ley de conservación de la energía, establece que la energía no puede ser creada ni destruida en un sistema aislado. La segunda ley establece que la entropía de cualquier sistema aislado siempre aumenta, y la tercera ley establece que la entropía de un sistema se aproxima a un valor constante a medida que la temperatura se acerca al cero absoluto.- Knut Svanholm

En Bitcoin, la entropía es importante por varias razones:

  1. La información secreta debe generarse a partir de fuentes de datos de alta entropía.
  2. Los nuevos bloques invierten localmente la entropía, es decir, crean orden a partir del caos.
  3. El modelo de seguridad de Bitcoin se basa en procesos caóticos.
  4. La validación se basa en procesos deterministas.
  5. Todos pueden validar datos estructurados.
  6. Nadie puede adivinar datos aleatorios.

Aunque lo anterior se exprese en términos absolutos (todos y nadie), la verdad es más matizada: de nuevo, Bitcoin es probabilístico por naturaleza, por lo tanto, en teoría, se podría adivinar una clave privada así como en teoría se podrían encontrar mil millones de bloques válidos en un milisegundo.

Dejando de lado los detalles, vamos a intentar mantenerlo simple en esta artículo. En general, si tienes dos monedas, la entropía de este sistema es dos. Es decir: puedes describir todo el sistema con dos bits: 00, 01, 10, 11.

Entropía de 2 bits

Voltea ambas monedas al mismo tiempo, y terminarás con ya sea cruz-cruz, cruz-cara, cara-cruz o cara-cara. Si eres un lanzador de monedas equilibrado, la probabilidad de cada combinación será del 25%. Imagina un sistema que voltea cientos de monedas a la vez, y tendrás algo que podría usarse para generar una clave privada.


Aleatoriedad

La aleatoriedad es esencial para la criptografía. En la raíz de toda comunicación secreta hay alguna forma de asimetría de información: tú sabes algo que un posible espía no sabe.

Un buen secreto es como una buena contraseña: generado de forma aleatoria, es decir, proveniente de una fuente de datos con un alto grado de entropía.

Ruido aleatorio. ¿Cuánta información contiene esta imagen?

Si algo está "perfectamente" cifrado, un espía no puede distinguir lo que se dijo a partir de los datos aleatorios. Ese es el propósito del cifrado: quieres ocultar lo que se dijo y, si es posible, incluso ocultar el hecho que su hubiera dicho algo inteligible en absoluto.

  • Aleatoriedad "buena": no compresible / alta entropía / secreta / segura.
  • Aleatoriedad "mala": compresible / baja entropía / adivinable / insegura.

Bitcoin no utiliza cifrado per se. El libro mayor es público y transparente por diseño, lo que permite a cualquiera auditar todo el sistema si así lo desea. Bitcoin utiliza firmas criptográficas y funciones hash criptográficas, ambas de las cuales producen resultados cuasi-aleatorios. Y si conoces el secreto, puedes desbloquear algunas monedas (usando tu clave privada), agregar nuevos bloques a la cadena de bloques (utilizando el nonce que pudiste computar) o demostrar que eres quien dices ser (firmando un mensaje, lo que al menos demuestra que tienes el control de una o varias claves).

Solo tú conoces tu clave privada. Nadie más debería conocer tu clave privada. Solo tú, el minero exitoso, encontraste el nonce para el siguiente bloque. Esa es la asimetría de información. Eso es lo que hace que Bitcoin funcione.

Todos los sistemas criptográficos funcionan debido a la asimetría de información. Y curiosamente, los datos cifrados adecuadamente son indistinguibles de datos aleatorios. De lo contrario, un espía podría comprender algo del mensaje cifrado, lo que a su vez significaría que el cifrado utilizado no es demasiado bueno.


Información

¿Qué es la información, en cualquier caso?

A menudo se dice que Bitcoin está asegurado termodinámicamente. Si bien esto es cierto, me gustaría profundizar un poco más. ¿Qué significa estar "asegurado termodinámicamente", exactamente?

Significa que, hasta donde sabemos, cambiar cosas en nuestro universo requiere energía. Cuando digo "cambiar cosas", lo digo en serio: cambiar cualquier cosa en nuestro universo requiere que "uses" energía, que hagas un trabajo.

¿Mover una silla? Tienes que hacer un esfuerzo. ¿Hacer crecer un árbol? Necesitarás la energía del sol para convertir CO2 en madera. ¿Realizar un cálculo? Se requiere energía para manipular lo que contiene los datos. ¿Almacenar el resultado? Necesitarás energía para organizar (y proteger) los átomos para el almacenamiento, sin importar qué medio se use.

Bitcoin vive principalmente en el ámbito de la información, y al igual que todos los demás sistemas de información, necesita almacenar y procesar la información a través de un medio físico. Por lo tanto, si cambias información en Bitcoin, cambias efectivamente una cosa en el mundo real. Ya sea un disco de estado sólido, una memoria USB, un disco duro, un medio de almacenamiento óptico o cualquier otra cosa, no importa.

El hecho que cambiar cosas, o en otras palabras: hacer un bitflip, requiera energía, es la raíz del enigma de toda la computación. Es la razón por la cual tu ordenador hace ruido y se calienta si están "pensando" demasiado. Es la razón por la que los estudiantes de informática tienen que estudiar la notación Big O y las empresas de software adoran hacer preguntas al respecto. Cambiar un cero por un uno requiere trabajo, y no importa cuán rápido trabajes, aún así necesitarás gastar alguna cantidad de energía. Según la física, no hay nada gratis. Hacer bitflips es un trabajo que requiere energía.

Y aquí está el quid de la cuestión: Bitcoin utiliza el hecho que la diferencia entre los problemas computacionales difíciles y los problemas computacionales exponencialmente difíciles es grande. Increíblemente grande.

De acuerdo. Volvamos a nuestra pregunta original: ¿qué es la información, de todos modos?

Colores ordenados. ¿Cuánta información contiene esta imagen?

La información se relaciona tanto con el conocimiento como con el significado. Es lo opuesto a no saber, y lo opuesto a la información en los datos es la aleatoriedad. En otras palabras: si no puedes comprender algunos datos, podría parecer aleatorio para ti.

  • Información coherente: bastante compresible.
  • Información sin sentido: no muy compresible.

Pi puede ayudar a aclarar lo que estoy tratando de decir: 3.141592653589793... se puede "comprimir" en π, o la circunferencia de un círculo con un diámetro de uno.

Como programador, podrías pensar en este concepto de la siguiente manera: ¿puedo escribir un programa que genere la información que estoy tratando de transmitir, que en realidad sea más corta que la información misma? (Eso es a lo que me refiero cuando digo "compresible".)

En resumen: sentido y sin sentido, orden y caos, o información y aleatoriedad, están íntimamente relacionados. Se podría decir que son dos caras de la misma moneda, y ambos conceptos están relacionados a través de lo que llamamos entropía.

La información implica estructura y la estructura se beneficia de la redundancia. Las estructuras más antiguas de la naturaleza se han adaptado para sobrevivir por evolución. En su raíz se encuentra el ADN, dos cadenas que se enroscan entre sí para formar una doble hélice. Información simétrica y redundante. Las propiedades que permiten que el ADN sobreviva y prospere están incorporadas en sus procesos: estructura redundante, un mecanismo de copia que depende de esta estructura, la corrección de errores que conduce a cuatro bases en lugar de dos, etc.

En comparación, Bitcoin es más simple: una cadena, dos bits, sin corrección de errores (la información se copia perfectamente). Sin embargo, al igual que con el ADN, las propiedades que permiten que Bitcoin sobreviva (y prospere) están incorporadas en el proceso de replicación: una carrera caótica para encontrar nuevos bloques, replicación de bloques en la red y replicación del software (y el libro mayor) en tantos nodos como sea posible. Además, cuando hablamos del organismo Bitcoin, la corrección de errores equivale a estar vivo. La red se autovalida con cada latido del corazón, aproximadamente cada diez minutos. Esto es lo que hace que el organismo Bitcoin sea extremadamente robusto. Está diseñado para sobrevivir.

En Bitcoin, la información de alta entropía generalmente se mantiene en secreto. Tu clave privada, como su nombre indica, debe mantenerse privada. Es solo para tus ojos. Qué nonce en particular acabas de probar, es decir, el trabajo que ya has realizado al minar un nuevo bloque, generalmente se mantiene privado también. No quieres que tus competidores sepan qué números producen bloques inválidos y se puedan omitir.

Caos a la izquierda, orden a la derecha

Bitcoin utiliza tanto el orden como el caos para crear un sistema que crece, e incluso prospera, entre estos extremos. Utiliza la asimetría de información y una ingeniosa estructura de incentivos que conduce a una competencia global para descubrir los secretos de Bitcoin.

Los procesos que son ordenados, los que son caóticos y cómo Bitcoin puede crecer en el límite entre el orden y el caos se explorarán en la siguiente sección.


Crecimiento entre el orden y el caos

¿Qué hace que la red de Bitcoin funcione? Nuevamente, puede haber muchas respuestas a esta pregunta, pero lo único que realmente está "funcionando" en la red de Bitcoin es el reloj global: un "reloj de bloques", donde cada bloque es una unidad de tiempo.

Actualmente, llamamos a este proceso "minería" porque se generan nuevos bitcoins por cada bloque válido que es "minado" (léase: encontrado). Llamamos a esto la "recompensa de bloque", y es una estructura de incentivos para poner en marcha la red en su fase inicial.

En cierto sentido, el organismo de Bitcoin "crece" en el borde entre el orden y el caos: encontrar nuevos bloques es un proceso caótico, y su resultado es una lista muy ordenada de transacciones: la cadena de bloques de Bitcoin, también conocida como el libro mayor (ledger).

Desde el punto de vista de "encontrar nuevos bloques", todavía estamos en una etapa extremadamente temprana. Solo ~10 años en. La era de recompensa de bloque continuará hasta el año 2140 aproximadamente, lo que significa que estamos aproximadamente al 13% de la fase de arranque de Bitcoin: la era de recompensas.

Sin duda, Satoshi sabía que esto era un juego a largo plazo. La era en la que los bloques recién encontrados están asociados con una recompensa es solo una fase del juego de Bitcoin. Ten en cuenta que esta fase tiene una longitud de 6930000 bloques. Con un tiempo promedio de bloque de ~10 minutos, resulta que la era de recompensas tiene una duración de 131 años.

2019: Primeros días de la Era de Recompensas de Bitcoin

Habrá un momento en el que aquellos encargados de encontrar nuevos bloques serán recompensados principalmente a través del mercado de comisiones de la red, como argumentó brillantemente Dan Held en Bitcoin's Security is Fine (La seguridad de Bitcoin está bien). El momento en el que el mercado de comisiones tome el relevo está en algún momento entre los años 2020 y 2140. O eso, o Bitcoin morirá, o algunos ordenadores obsoletos de museo intentarán encontrar nuevos bloques asumiendo pérdidas económicas.

Después de este punto en el tiempo, probablemente seguiremos hablando de "minería" de bitcoin, aunque ningún "minero" estará produciendo nuevos bitcoins. Los 21 millones de BTC, o 2.099.999.997.690.000 sats, para ser precisos, ya habrán sido minados. No se agregarán nuevos bitcoins al grupo de monedas existentes en circulación.

Los "mineros", si todavía los llamamos así, seguirán intentando encontrar nuevos bloques. Pero los bitcoins movidos por estos bloques tendrán una larga historia económica. Largo tiempo habrá pasado desde que los mineros se otorgaban a sí mismos nuevos bitcoins, para gastarlos después de 100 bloques.

¿Seguirá existiendo Bitcoin en 5000 años y eventualmente superará al oro como el dinero de facto de la humanidad? No lo sé, pero la información importante es extremadamente difícil de eliminar. Espero que Bitcoin viva por mucho tiempo, al igual que las antiguas escrituras y textos religiosos que sobreviven hasta hoy. Todo en Bitcoin no es más que información y como tal, la información puede trascender el medio en el que está impresa.

Por supuesto, espero que algo parecido a la hiperbitcoinización haya sucedido para ese momento. Tendremos una economía circular de bitcoin, y los bancos de bitcoin liquidarán globalmente vastas cantidades de valor entre sí. Lo que usarán los ciudadanos privados —o individuos soberanos, para usar un término más adecuado— aún está por verse. Dudo que la capa base de Bitcoin sea utilizada por personas como tú y yo. Y eso está perfectamente bien.

Con el escenario preparado y conceptos como el orden, la información, el caos y la entropía en mente, echemos un vistazo a algunos conceptos de Bitcoin. Los distinguiremos visualmente: de caótico (izquierda) a ordenado (derecha).

Bitcoin crece entre el orden y el caos

Si bien el marco de orden y caos es útil, no es preciso ni universalmente aplicable. Sin embargo, creo que pensar en las partes que hacen que Bitcoin funcione de esta manera es un ejercicio útil, y creo que el punto central —que Bitcoin vive, crece y prospera en el borde entre el orden y el caos— es profundamente cierto.

Conceptos de Bitcoin y el orden y el caos

Reflexionemos sobre estos conceptos por un momento.

  • Clave privada: información caótica, con entropía muy alta. Información secreta que es mejor mantener privada. Máxima entropía para máxima seguridad. Si tu clave privada no es aleatoria, tendrás problemas.
  • Nonce: información caótica, con alta entropía. Un nonce es un número específico. Los mineros están en constante competencia para encontrar el siguiente nonce que produce un bloque válido. Varios números pueden cumplir con los criterios, pero el proceso de minería es muy similar a encontrar un número aleatorio.
  • Bloque recién construido (antes de su difusión): los bloques recién encontrados son el resultado del proceso caótico de encontrar un nonce. Antes de que se difundan los bloques, se pueden entender como información secreta. Los bloques recién construidos pueden ser ambiguos, ya que varios bloques pueden el próximo bloque válido simultáneamente (formar parte del extremo de la cadena). Está en tu mejor interés difundir un bloque recién encontrado de inmediato para obtener la recompensa. Los bloques recién encontrados no se publican únicamente si eres un atacante o estúpido, o ambos.
  • Extremo de la cadena: formar parte del extremo de la cadena es un proceso principalmente ordenado, pero nuevamente, es generado por un proceso caótico. Como se mencionó anteriormente, el extremo de la cadena puede ser ambiguo. Una versión sobrevivirá, las versiones perdedoras se convertirán en bloques huérfanos. Puedes validar la corrección de toda la información en todos los bloques hasta el extremo de la cadena. El extremo de la cadena refleja el tiempo actual en Bitcoin.
  • Bloques huérfanos: los bloques huérfanos son parte del proceso ordenado y natural de crecimiento de la cadena de bloques de Bitcoin. Los bloques válidos se descartan regularmente. Si se encuentran dos bloques válidos aproximadamente al mismo tiempo, luchan en una batalla probabilística por su supervivencia. A la larga, solo un bloque puede ganar esta carrera. El bloque perdedor se convierte en un bloque huérfano y muere en soledad.
  • Transacciones no confirmadas: estructura ordenada que se puede validar fácilmente. Una transacción no confirmada puede ser válida o inválida. Las transacciones válidas se incluyen en bloques basados en incentivos económicos, que es, nuevamente, un proceso probabilístico impulsado por el mercado. Las transacciones inválidas se descartan.
  • Bloques enterrados: estructura ordenada generada por un proceso caótico, hace algún tiempo. La posibilidad de una reorganización (reorganización de bloques enterrados) se vuelve exponencialmente improbable debido a que las probabilidades en contra se multiplican. Ejemplo: si cada bloque tiene un 50% de probabilidad de reorganizarse, la probabilidad de una reorganización de 6 bloques sería del 1.5%. Los números reales son cercanos a 0.31% por bloque y 0.0000000000008875% para una reorganización de 6 bloques.
  • Transacciones confirmadas: estructura ordenada que se puede validar muy fácilmente. La irreversibilidad es probabilística y depende de la profundidad del bloque. Una vez que una transacción está confirmada, se vuelve más definitiva cuanto más enterrada esté en la cadena de bloques.
  • Claves públicas: las claves públicas extendidas (xpub, ypub, zpub) se generan mediante un proceso determinístico a partir de una semilla aleatoria, tu clave privada.
  • Tiempo de bloque: los bloques válidos se encuentran, en promedio, cada 10 minutos. Esto es lo que hace que la red de Bitcoin funcione. El ritmo de Bitcoin es extremadamente regular cuando se mide en bloques. Aunque sigue siendo regular cuando se mide en tiempo humano, la minería es un proceso fundamentalmente probabilístico, y por lo tanto, existe la posibilidad real de que algunos bloques se encuentren muy rápidamente y otros comparativamente más tarde.
  • Ajuste de dificultad: aunque el ajuste de dificultad es un proceso muy ordenado, puede ser un poco caótico si la capacidad de hash cambia drásticamente (como ocurrió en agosto de 2017, debido al conflicto por el hard fork de bcash). El ajuste de dificultad se basa en el tiempo de bloque, que solo está vinculado probabilísticamente al tiempo humano.
  • Suministro de Bitcoin: el suministro de Bitcoin está fijo desde su inicio. La emisión de nuevos bitcoins está incorporada en el código de consenso de Bitcoin y, por lo tanto, es virtualmente imposible de cambiar.
  • Todo el libro mayor (ledger) y los bloques profundamente enterrados (también conocido como la cadena de bloques de Bitcoin): estructura ordenada, secuencial y prácticamente inequívoca hasta el extremo de la cadena y que puede ser validada por todos.
  • Validación del libro mayor (ledger): la validación es un proceso ordenado y secuencial. El resultado de este proceso es un valor booleano simple para cada bloque: verdadero o falso, válido o inválido. Cada nodo verifica de forma independiente hasta el último bloque, lo que forma el consenso de Nakamoto.

El hecho de que todo lo anterior, toda la maquinaria, funcione en conjunto para proporcionar una respuesta "sí" o "no" a la pregunta "¿Es esto lo que realmente sucedió?" nunca dejará de asombrarme.

Permíteme repetirlo. El propósito completo del organismo de Bitcoin es decidir qué sucedió, cuándo y a quién. ¿Cuánto tiene cada persona, y cómo llegó a tenerlo? El cómo es importante, porque permite que todos auditen todo y lleguen a la misma conclusión.

En resumen, Bitcoin utiliza procesos caóticos (minería, generación de claves privadas) y asimetría de información (información pública que se comparte ampliamente, información secreta que no se comparte en absoluto) para construir un registro estructurado, ordenado y permanente, que puede ser auditado y verificado por todos.

Esto es Bitcoin. Esto es el consenso de Nakamoto. Esto es la innovación, y esto también es lo que hace que Bitcoin sea la mejor y más sólida moneda que jamás haya existido en el planeta Tierra.

Podrías llamarlo abierto, descentralizado, sin fronteras, neutral, resistente a la censura, público, sólido, antifrágil y algunos otros adjetivos.

Yo lo llamo Vida. Y todos lo llamamos Bitcoin.