Saltar al contenido

Bitcoin Es Una Idea

“No te preocupes si la gente te roba una idea. Si es original, tendrás que embutírsela por sus gargantas”. – Howard H. Aiken

 

“No hay carne o sangre dentro de esta capa para matar. Solo hay una idea. Las ideas son a prueba de balas.” – Alan Moore, V de Vendetta

 

El 31 de octubre de 2008, la trayectoria futura de nuestra sociedad global cambió para siempre. Se hizo un gran avance y se soltó una idea imparable en el mundo. Una idea tan profunda, tan escandalosa, que fue ignorada por casi todo el mundo durante los primeros años –y  todavía es rechazada por la mayoría: Bitcoin: un sistema de dinero efectivo electrónico de usuario-a-usuario.

El libro blanco publicado por Satoshi Nakamoto en esta noche de Halloween describe una idea que inevitablemente se llevará al mundo por delante. Si bien la mayoría de la gente todavía piensa en Bitcoin como nada más que un plan para hacerse rico rápidamente –sin tener en cuenta por completo el profundo cambio que seguirá teniendo en la sociedad– cada día es más obvio que no desaparecerá.

“Las ideas, a diferencia de las estructuras sólidas, no perecen”, nos recuerda Alan Moore. “Permanecen inmortales, inmateriales y en todas partes, como todas las cosas Divinas”.

En esta fatídica noche de 2008, Satoshi dejó salir al genio de la botella. Pasamos de un mundo donde el efectivo digital era solo una idea a un mundo donde existe Bitcoin. No solo la idea está aquí para quedarse, sino que con cada bloque que pasa, Bitcoin nos recuerda que esta idea ahora es una realidad. Como veremos, esta nueva realidad es más poderosa de lo que se podría pensar en un principio. Es poderoso porque marcará el comienzo de un nuevo paradigma económico. Es poderoso porque ha llegado el momento de hacerlo. Es poderoso porque no se puede detener. Como nos recuerda Víctor Hugo: nada es tan poderoso como una idea a la que le ha llegado el momento. Bitcoin llegó para quedarse; y el momento de Bitcoin es ahora.

 

Una idea cuyo tiempo ha llegado

“Uno resiste la invasión de ejércitos; uno no resiste la invasión de ideas”. – Victor Hugo

Contrariamente a la creencia popular, Bitcoin no surgió de la nada. La idea del efectivo digital tiene una larga y rica historia. En particular, un colectivo informal conocido como los cypherpunks escribió extensamente sobre el efectivo anónimo digital, cómo se podrían realizar tales sistemas y las implicaciones sociales de la criptografía sólida en general. De ahí el nombre: cypherpunks. [1]

Después de formar el grupo en 1992, Eric Hughes, Timothy C. May y John Gilmore crearon la lista de correo cypherpunk para discutir y compartir sus ideas sobre criptografía, reenvíos, anonimato, efectivo digital y “otras cosas interesantes” con un grupo más amplio de personas. Muchos años después, un cypherpunk con el nombre de Satoshi Nakamoto eligió publicar el whitepaper de Bitcoin en una lista de correo similar: la lista de correo de criptografía.

Como es evidente al estudiar sus escritos, a los cypherpunks les importaba mucho la idea del efectivo digital. En 1993, Eric Hughes discutió la idea del efectivo digital, su relación con la privacidad y su importancia para una sociedad libre en el Manifiesto de un Cypherpunk: “Dado que deseamos privacidad, debemos asegurarnos de que cada parte de una transacción tenga conocimiento solo de lo que es directamente necesario para esa transacción. Dado que se puede hablar de cualquier información, debemos asegurarnos de revelar lo menos posible. En la mayoría de los casos, la identidad personal no es relevante. Cuando compro una revista en una tienda y le doy dinero en efectivo al empleado, no hay necesidad de saber quién soy”.

La idea del efectivo digital (o efectivo electrónico, como Satoshi eligió llamarlo en el documento técnico de Bitcoin) es tener algo en el ámbito digital que se comporte como lo hace el efectivo en el mundo real. No se requiere identidad o registro, directamente intercambiable por bienes y servicios, y prácticamente imposible de rastrear.

Incluso IANA[2], una organización de estándares responsable de definir los códigos de estado HTTP (entre otras cosas), reconoce la idea del efectivo digital. Todos conocemos el infame código de error 404, que indica que no se puede encontrar un recurso. Pocas personas saben que también hay un código de error 402, que indica que no se puede acceder al recurso porque requiere pago. Sin embargo, dado que el efectivo digital no existía en ese momento, el código de estado estaba “reservado para uso futuro” y no se usa ampliamente en la actualidad.

Los cypherpunks se centraron principalmente en el aspecto de la privacidad del efectivo digital. Los aspectos monetarios y económicos fueron secundarios. Se dieron cuenta de que la privacidad es absolutamente primordial para una sociedad libre y abierta. Después de todo, lo contrario, la vigilancia completa, solo puede conducir a la opresión y el estancamiento, ya que no se permitirá que florezcan ideas nuevas y controvertidas. No importa qué libertades crea uno que tiene, al final, la vigilancia hace que todas las demás libertades sean inútiles.

“Por lo tanto, la privacidad en una sociedad abierta requiere sistemas de transacciones anónimos. Hasta ahora, el efectivo ha sido el principal sistema de este tipo. Un sistema de transacciones anónimo no es un sistema de transacciones secretas. Un sistema anónimo permite a las personas revelar su identidad cuando lo deseen y solo cuando lo deseen; esta es la esencia de la privacidad”. – Eric Hughes, Manifiesto de un Cypherpunk

Si bien Bitcoin es un gran avance en muchos sentidos, todas las partes técnicas que lo hacen funcionar ya existían:

  • Criptografía de clave pública
  • Redes de usuario-a-usuario (peer-to-peer; P2P)
  • Firmas digitales
  • Funciones hash criptográficas
  • Sellos de tiempo criptográficos
  • Cadenas hash
  • Prueba de trabajo (Proof-of-work; PoW)

Exploraremos todos estos conceptos con más detalle en puntos posteriores del libro.

Satoshi no inventó ningún nuevo algoritmo inteligente o base criptográfica. En cambio, encontró una manera de combinar las tecnologías existentes de una manera ingeniosa, utilizando incentivos económicos y teoría de juegos para arrancar y asegurar el sistema.

Los cypherpunks eran muy conscientes de que incluso si la tecnología base existía en teoría, algunas cosas simplemente necesitan tiempo para desarrollarse. En 1992, Timothy May escribió en El Manifiesto Anarquista de Crypto: “La tecnología para esto […] ha existido en teoría durante la última década. […] Pero solo recientemente las redes informáticas y las computadoras personales han alcanzado la velocidad suficiente para hacer que las ideas sean prácticamente realizables. Y los próximos diez años traerán suficiente velocidad adicional para que las ideas sean económicamente viables y esencialmente imparables”. [3]

Si bien creo que Bitcoin (la red) ya es esencialmente imparable, la idea de Bitcoin es realmente imparable. Después de todo, como Alan Moore lo expresó de manera tan sucinta, las ideas son a prueba de balas.

En la primera década de su existencia, Bitcoin pasó de la idea a la implementación, a la prueba de concepto a un activo monetario de nicho. En la próxima década, probablemente se convertirá en una fuerza por sí sola, trascendiendo fronteras y transformando nuestra comprensión del dinero y el valor en el proceso. Sin embargo, la idea no fue concebida en el nacimiento de Bitcoin: fue concebida por pensadores y entusiastas de la era electrónica, varias décadas antes de que Satoshi Nakamoto entrara en escena.

 

Historia del Efectivo Digital 

“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”. – Satoshi Nakamoto

La prehistoria de Bitcoin es tan larga como fascinante. Satoshi pudo construir sobre varias tecnologías y protocolos, algunos de los cuales se remontan a 50 años atrás o más. Si bien 50 años puede ser mucho tiempo en tecnología, el arte de la criptografía es mucho más antiguo que eso, y se remonta al 1900 a. C.

Es difícil decir cuáles fueron los bloques de construcción más importantes, pero los más fundamentales son probablemente las firmas digitales[4] (Diffie y Hellman, 1976) y la criptografía de llave pública[5] (Rivest, Shamir, Adleman, 1978). Sin estas ideas, Bitcoin no podría existir.

Se habían desarrollado varios sistemas de efectivo digital antes de Bitcoin. Todos ellos fracasaron eventualmente, y todos por razones similares. Los siguientes son particularmente interesantes en el contexto de Bitcoin:

  1. Ecash de David Chaum (1982)
  2. E-gold de Douglas Jackson y Barry Downey (1996)
  3. hashcash de Adam Back (1997)
  4. bit gold de Nick Szabo (1998)
  5. b-money de Wei Dai (1998)
  6. RPOW – Pruebas de trabajo reutilizables de Hal Finney (2004)

Echemos un vistazo más de cerca a estos sistemas, veamos qué aportaron y exploremos por qué fallaron.

 

Ecash (David Chaum, 1982)

Ecash utilizó firmas digitales para demostrar el derecho de propiedad, una idea que todavía se utiliza en Bitcoin en la actualidad. Propuesto por David Chaum en 1982, más tarde fue implementado por su empresa y estuvo operativo durante tres años antes de que la empresa se declarara en quiebra en 1998. Chaum sigue activo como criptógrafo. Fue pionero en muchas técnicas criptográficas e impulsó el desarrollo de tecnologías que preservan la privacidad. Una de las técnicas de transacción que mejoran la privacidad en Bitcoin, Chaumian CoinJoin, lleva su nombre. Si bien Ecash era interesante desde el punto de vista criptográfico y tecnológico, no fue una innovación monetaria y finalmente fracasó porque estaba operado por una entidad centralizada: DigiCash Inc., la compañía fundada por Chaum.

 

E-gold (Douglas Jackson y Barry Downey, 1996)

E-gold no fue particularmente innovador criptográficamente, pero fue una de las primeras monedas digitales que ganó tracción. Aunque existieron otros antes (OS-Gold, Standard Reserve, INTGold), se considera que el e-gold es la primera moneda digital exitosa que se hizo lo suficientemente popular como para tener una adopción comercial. En su apogeo, e-gold tenía cinco millones de usuarios y procesaba transferencias de valor del orden de $2.000 millones. Además de las fichas (tokens) de oro electrónico respaldadas por oro, se podrían adquirir otros metales electrónicos preciosos: plata electrónica, platino electrónico y paladio electrónico. La desaparición del efectivo electrónico, nuevamente, fue que era un servicio centralizado administrado por una empresa: Gold & Silver Reserve Inc. El gobierno de los Estados Unidos presentó una demanda alegando que la empresa tenía un negocio de transmisión de dinero sin licencia. Al final, el proyecto de E-cash fracasó porque lo operaba una empresa que podía ser cerrada.

 

Hashcash (Adam Back, 1997)

Propuesto originalmente en 1997, y publicado más formalmente como Hashcash – Una contramedida de denegación de servicio en 2002, Hashcash es una de las ideas esenciales que hicieron posible Bitcoin. Mientras que otros investigadores tuvieron la idea de la Fijación de Precios vía Procesamiento [6] antes de Adam Back (Dwork y Naor, 1992), Satoshi hizo referencia a su artículo en el whitepaper de Bitcoin y condujo a lo que hoy se conoce como proof-of-work de Bitcoin. Por lo que puedo decir, el término proof-of-work se introdujo por primera vez en el artículo de Hashcash.[7] Hasta donde sé, el término proof-of-work se introdujo en el libro blanco de Hashcash.

Hal Finney, una de las leyendas de los primeros días de Bitcoin, describió el hashcash de manera hermosa y sucinta de la siguiente manera: “Hashcash es una cadena textual en un formato particular que tiene una propiedad especial: cuando se ejecuta a través del algoritmo hash SHA-1, el resultado revela el número de primeros bits iguales a cero, este número (N) es típicamente alrededor de 20 a 30. La terminología utilizada para hashcash describe la cantidad de ceros iniciales de la cadena, como el tamaño de su “colisión”. Debido a las propiedades de SHA-1, la única forma de encontrar una cadena con un tamaño de colisión grande es mediante una búsqueda exhaustiva: probando una variación tras otra, hasta que tenga suerte”. [8]

 

Por ejemplo, el hash SHA1 de la siguiente cadena hashcash

1:20:040806:foo::65f460d0726f420d:13a6b8

produce una cadena con cinco ceros al inicio:[9]

00000f91d51a9c213f9b7420c35c62b5e818c23e

 

El número inicial de ceros en una cadena hashcash ejecutada con hash indica cuán valiosa es la cadena hashcash. Debido a que no hay otra forma que no sea la por la fuerza bruta, el número de ceros está directamente correlacionado con el costo de producción, que, en el ámbito digital, es el costo computacional.

En esencia, hashcash utiliza el hecho de que los ciclos de cálculo cuestan tiempo y recursos del mundo real. Back propuso que la introducción del equivalente electrónico de un sello postal a través de hashcash podría ser su principal caso de uso. Aunque la lucha contra el e-mail no deseado parecía estar en lo más alto de su mente, también propuso que podría usarse como efectivo digital, yendo tan lejos como para trazar una ruta de migración que podría conducir a su integración en el efectivo electrónico e-cash de Chaum. Si bien el algoritmo de proof-of-work de Bitcoin difiere ligeramente del de Hashcash (usando doble SHA256 en lugar de SHA1, por ejemplo), la idea sigue siendo la misma: calcular un hash no se puede hacer sin procesar bits reiteradamente, lo que a su vez no se puede hacer sin gastar tiempo y energía. Hashcash explota la propiedad peculiar de nuestro universo de que cualquier cálculo computacional, es decir, cualquier cambio de un sistema, requiere energía. En otras palabras: no se puede engañar a la física. La computación nunca será gratuita.

Lo ingenioso de Hashcash fue encontrar y describir funciones computacionales donde la computación es costosa pero la verificación es barata. Puedes pensar en acertijos de hashcash como resolver Sudokus o Cubos de Rubik: difíciles de resolver, fáciles de verificar. Si bien se usaron varias implementaciones de Hashcash para prevenir el spam, el concepto no se aplicó ampliamente a las monedas antes de que Satoshi lo usara en Bitcoin.

 

Bit gold (Nick Szabo, 1998)

Sobre la base del trabajo de Adam Back y Hal Finney, “bit gold” puede describirse como un predecesor directo de “bit coin”[10]. Si bien el sistema nunca fue implementado, la forma en que Szabo lo imaginó para que funcione en teoría está sorprendentemente cerca a la manera en que Bitcoin funciona en la actualidad.

El propósito de bit gold, como su nombre lo indica, era crear un bien monetario digital independiente de cualquier autoridad central, que a su vez se pueda utilizar como reserva de valor, al igual que el oro en el mundo físico. Szabo escribe: “El objetivo, que defendí vigorosamente, era crear un depósito de valor a largo plazo independiente de cualquier autoridad central, pero mucho más seguro que el oro tradicional”. [11]

“Los metales preciosos y los objetos coleccionables [12] tienen una escasez infalsificable debido al alto costo de su creación. […] Por lo tanto, sería muy bueno si existiera un protocolo mediante el cual se pudieran crear en internet bits infalsificablemente costosos con mínima dependencia de terceros de confianza, y luego almacenados, transferidos y verificados de manera segura con una confianza mínima similar”. Nick Szabo

 

Un punto que Szabo señala repetidamente es que el oro físico tiene varios problemas y es bastante inseguro en comparación con las soluciones basadas en la criptografía. El almacenamiento, por ejemplo, es solo tan seguro como las puertas y paredes que lo protegen. Y al final, alguien siempre puede entrar y llevárselo. Lo mismo ocurre con el transporte. No puede enviarlo de forma segura sin un esfuerzo extraordinario, y sin importar su esfuerzo, alguien siempre podría interceptarlo. Incluso la validación es problemática, como atestigua una gran cantidad de barras de “oro” hechas predominantemente de plomo o tungsteno. Con el tiempo, estas insuficiencias de oro conducen inevitablemente a la centralización en bóvedas y bancos, lo que conlleva su propio conjunto de problemas.

“Bit Gold logra todas las propiedades esenciales del oro, mientras evita la inseguridad del oro que ha plagado a la civilización durante milenios”. Nick Szabo

 

El propósito previsto de bit gold no es lo único que será familiar para los bitcoiners de hoy. La forma en que se suponía que debía funcionar el sistema también le resultará familiar. Por supuesto, hay algunas diferencias cruciales, pero la idea básica es inquietantemente similar.

Los siguientes siete pasos se toman directamente del libro blanco de bit gold y describen cómo funcionaría el sistema:

  1. Se crea una serie pública de bits, la “serie de desafío” (consulte el paso 5).
  2. Alicia genera en su computador la serie de proof-of-work (ŕueba de trabajo) de los bits del desafío usando una función de referencia.
  3. La prueba de trabajo tiene una marca de tiempo segura. Esto debería funcionar de manera distribuida, con varios servicios de marca de tiempo diferentes, de modo que no sea necesario depender sustancialmente de ningún servicio de marca de tiempo en particular.
  4. Alicia agrega la serie de desafío y la serie de prueba de trabajo con marca de tiempo a un registro de título de propiedad distribuido para bit gold. Aquí, tampoco se depende sustancialmente de ningún servidor para operar correctamente el registro.
  5. La última serie de bit gold creada proporciona los bits de desafío para la siguiente serie creada.
  6. Para verificar que Alicia es la propietaria de una serie particular de bit gold, Bob comprueba la cadena de títulos infalsificable en el registro de títulos de bit gold.
  7. Para verificar el valor de una serie de bits de oro, Bob comprueba y verifica los bits de desafío, la serie de prueba de trabajo y la marca de tiempo.

 

Hay dos diferencias cruciales entre el enfoque de Szabo y Bitcoin. La primera es que bit gold requiere dos registros separados: uno para registrar marcas de tiempo (para anotar cuándo se creó el bit gold) y otro para registrar títulos de propiedad (para ver quién es el propietario del bit gold). La segunda es que se supone que bit gold se basa en funciones de referencia (a diferencia de funciones unidireccionales) para generar una prueba de trabajo. Las funciones de referencia son funciones propuestas por Szabo que son computacionalmente estables, es decir, un conjunto de funciones que mantienen un grado similar de dificultad entre todos los mineros. Hizo un esfuerzo considerable en definir y explorar estas funciones, tratando de formular pruebas matemáticas de que cada cálculo tomará al menos una cierta cantidad de tiempo sin importar qué arquitectura de computadora se use. [13] Sin embargo, dado que las computadoras se vuelven más rápidas todo el tiempo, comentó que encontrar una función de este tipo será difícil: “Sigue existiendo un gran problema potencial: […] El mundo carece de un problema criptoanalíticamente estable”.

La falta de una función de referencia estable conduce a una multitud de problemas: las “monedas” más antiguas creadas por los usuarios tendrían un costo diferente que las más nuevas, ya que las computadoras se vuelven más rápidas a medida que avanza la tecnología. Por lo tanto, dos monedas diferentes –o  series de bit gold, como las llamó Szabo– no tendrían el mismo valor. Si la ley de Moore aplicara aquí, una moneda que es dos años más antigua que otra podría considerarse el doble de valiosa porque la duplicación de la potencia de procesamiento hizo que acuñar la más nueva fuera dos veces más fácil. Otro problema es que –si  bit gold se volviera lo suficientemente valioso– quienes los hicieron podrían mantener en secreto los avances informáticos, por lo que las series válidas de bit gold se pueden acumular y vender en el mercado con una prima. Esto agravaría el problema de la inflación, que es otro problema que Szabo identificó pero que no resolvió.

Además, Szabo identificó correctamente los problemas de enfoques anteriores como Hashcash y MicroMint [14]: (1) su valor dependía de una autoridad central, (2) las funciones hash que utilizan son criptográficamente vulnerables, es decir, carecen de estabilidad criptoanalítica. Como se describió anteriormente, el último problema todavía está presente en bit gold.

 

b-money (Wei Dai, 1998)

Como el bit gold de Szabo, el b-money de Wei Dai nunca se implementó. Seguía siendo una propuesta teórica de cómo podría funcionar un protocolo monetario. Si bien Bitcoin es una implementación funcional de la visión que describe b-money, parece que Satoshi no estaba al tanto del b-money mientras ideó el diseño central de Bitcoin. Como escribió Wei Dai en respuesta a un artículo de LessWrong: “tengo entendido que el creador de Bitcoin […] ni siquiera leyó mi artículo antes de reinventar la idea él mismo. Se enteró después y me dio crédito en su artículo. Así que mi conexión con el proyecto es bastante limitada”. En 2013, Adam Back comentó sobre esto, mencionando que le presentó a Satoshi el b-money de Wei Dai después de que Satoshi se acercó a él.

En su propuesta, Dai es muy franco con respecto a la motivación de su sistema. Citando las ideas de Tim May sobre la criptoanarquía, escribe que “en una criptoanarquía, el gobierno no se destruye temporalmente, sino que está permanentemente prohibido y permanentemente innecesario. Es una comunidad donde la amenaza de violencia es impotente porque la violencia es imposible y la violencia es imposible porque sus participantes no pueden ser vinculados a sus verdaderos nombres o ubicaciones físicas”.

Dai continúa describiendo un sistema en el que cada participante mantiene una base de datos separada de cuánto dinero pertenece a cada usuario. Los usuarios se identifican mediante seudónimos (llaves públicas), las unidades monetarias se crean en relación con el esfuerzo computacional, el dinero se transfiere mediante la firma de mensajes y los contratos se ejecutan automáticamente mediante el protocolo. Describiendo, en espíritu, pero no en detalle, cómo funciona Bitcoin en la actualidad.

Él describe cinco cosas que son necesarias para que funcione un sistema de este tipo:

  1. La creación de dinero
  2. La transferencia de dinero
  3. La realización de contratos
  4. La celebración de contratos
  5. La ejecución de contratos

Si bien el b-money resuelve muchos de los problemas inherentes al dinero electrónico, el problema descrito por Szabo en bit gold permanece. Dai menciona esto en su propuesta de la siguiente manera: “Una de las partes más problemáticas del protocolo b-money es la creación de dinero. Esta parte del protocolo requiere que todos los responsables de la cuenta decidan y acuerden el costo de cómputos particulares. Desafortunadamente, debido a que la tecnología informática tiende a avanzar rápidamente y no siempre públicamente, esta información puede no estar disponible, ser inexacta o estar desactualizada, todo lo cual causaría serios problemas para el protocolo”.

Dai propone una solución a este problema describiendo un subprotocolo que es el único responsable de la creación de dinero. Los participantes acordarían periódicamente cuánto dinero debería crearse, trabajando colectivamente en un ciclo impulsado por el mercado que consta de cuatro pasos: planificación, licitación, computación y creación. Dado que el b-money nunca se implementó en la forma propuesta por Dai, no está claro si este elaborado esquema de creación de dinero habría funcionado como se esperaba.

 

RPOW – Pruebas de Trabajo Reutilizables (Hal Finney, 2004)

Como sugiere el nombre, Hal Finney encontró una manera de hacer que los tokens de prueba de trabajo del hashcash de Adam Back fueran reutilizables.

Así es como funciona, parafraseando el anuncio original del propio Hal Finney: el sistema recibe hashcash como un token de prueba de trabajo (POW) y, a cambio, crea tokens firmados por RSA que se denominan tokens de prueba de trabajo reutilizable (RPOW). Los RPOW se pueden transferir de una persona a otra e intercambiarlos por nuevos RPOW en cada paso. Cada token de RPOW solo se puede usar una vez, pero dado que genera uno nuevo, es como si el mismo token se pudiera pasar de una persona a otra.

En esencia, un usuario puede crear tokens RPOW a través del software cliente RPOW, que toma una serie de Prueba de Trabajo generada por el software Hashcash inventado por Adam Back. Esta serie está firmada por la llave privada del usuario y posteriormente registrada por un servidor RPOW, registrando que este token pertenece a la llave pública del usuario. Luego, el usuario puede pasar ese token a otra persona firmando una “orden de transferencia” a la llave pública de otro usuario. A continuación, el servidor registra debidamente el token como perteneciente a la clave privada correspondiente.

Como es evidente al estudiar sus escritos, Hal Finney se inspiró y se basó en el trabajo de Nick Szabo, sobre todo en sus ideas sobre “bit gold” y coleccionables digitales. Al discutir las posibles aplicaciones de RPOW, Hal escribe: “El investigador de seguridad Nick Szabo ha acuñado el término bit gold para los objetos informáticos cuya creación es demostrablemente costosa. Sugiere que estos podrían incluso servir como base para una especie de sistema de pago, desempeñando el papel en el mundo informático del oro en el mundo físico. RPOW facilitaría el uso de tokens POW como una forma de bit gold al permitir que los tokens se pasen e intercambien de persona a persona”. [15]

La implementación de Hal fue una solución práctica a un problema inherente a los tokens de prueba de trabajo, es decir, que los tokens POW en sí mismos no son buen dinero. Los tokens POW son solo hashes –bits de información– que se pueden gastar dos veces. Con el concepto de servidores RPOW, Hal introdujo autoridades centrales, pero de confianza minimizada, que pueden determinar criptográficamente una cadena de derechos de propiedad. Esto permite reutilizar los tokens de Prueba de Trabajo, aunque de forma secuencial y limitada.

Si bien la arquitectura RPOW es jerárquica, por ejemplo, sus clientes dependen de servidores especializados, la confianza que los usuarios deben tener en un servidor RPOW se minimiza. Esto es posible porque el software del servidor RPOW se ejecuta en un coprocesador IBM 4758 criptográficamente seguro, una placa PCI de alta seguridad a prueba de manipulaciones que garantiza criptográficamente que el software que se ejecuta en el servidor es el software que se publicó y auditó. Esto convierte a cualquier servidor RPOW en un sistema cuyas propiedades de seguridad pueden ser analizadas y evaluadas por cualquier persona. En otras palabras, un servidor RPOW es un servidor transparente, lo que minimiza la confianza del sistema RPOW en su conjunto. Todo el mundo conoce el código que hace que el sistema funcione, así como las reglas que existen.

“Conocemos el código fuente. Conocemos las reglas”. Hal Finney

Entonces, ¿cuáles son exactamente las reglas del sistema RPOW? Según su inventor, son los siguientes: [16]

  • Sin inflación
  • Sin puertas traseras
  • Protección de la privacidad

La regla de “no inflación” debe entenderse en términos de las restricciones establecidas por el propio sistema, es decir, que cualquier servidor RPOW solo creará tokens RPOW con el mismo valor que los tokens POW y RPOW entrantes. Dado que los usuarios pueden crear nuevos tokens de Prueba de Trabajo a través del hashcash de Adam Back, la inflación en términos de nuevos suministros que ingresan al sistema puede ocurrir y siempre ocurrirá.

“Para hacer cumplir la regla de no inflación, el servidor RPOW debe asegurarse de que ningún POW o RPOW se pueda usarse más de una vez como parte de un intercambio. Cada uno se crea y luego se intercambia en el servidor por un nuevo RPOW, y después de eso, el anterior no se puede volver a usar. El servidor RPOW hace cumplir esta regla principalmente al mantener un registro de todos los RPOW y POW que ha visto en el pasado. Siempre que se ofrece uno para el intercambio, el servidor RPOW lo compara con esta base de datos de RPOW previamente vistos. Si está en la lista, se trata de un intento de reutilizar el POW o RPOW y se rechaza la solicitud de intercambio. Si el POW o RPOW no está en la lista, se agrega a la lista, y luego el servidor de RPOW firmará el valor de precisión arbitraria (bignum) proporcionado como parte del intercambio, creando un nuevo RPOW”.

La regla de “no puertas traseras” se refiere a la transparencia del sistema. Todos pueden inspeccionar cómo funciona en todo momento, no hay partes ocultas.

La regla de la “protección de la privacidad” es interesante. Hal escribió extensamente sobre cómo la privacidad es una característica inherentemente deseable, defendiendo el uso de Tor [17] para conectarse a los servidores RPOW y discutiendo tanto los vectores de ataque (ataques de enlace) como las mejoras como el uso de firmas ciegas. En sus escritos, continúa señalando dos cosas adicionales: (1) el “dueño es el enemigo”, y (2) el “programador es el enemigo”, recordándonos que cualquier sistema que facilite el intercambio de confianza minimizado el dinero debe configurarse y operar bajo una mentalidad de adversario.

Junto al hashcash, RPOW fue uno de los sistemas que realmente se implementó. Sin embargo, probablemente debido al esfuerzo requerido para ejecutar servidores RPOW, así como a la falta de incentivos para hacerlo, los tokens de Prueba de Trabajo Reutilizables de Finney nunca ganaron terreno y el proyecto finalmente se suspendió.

 

La Innovación de Satoshi

“Espero que sea obvio que fue solo la naturaleza centralmente controlada de esos sistemas lo que los condenó”. Satoshi Nakamoto

El 11 de febrero de 2009, Satoshi publicó un anuncio en los foros de la Fundación P2P. La Fundación P2P estudia el impacto de la tecnología y el pensamiento de usuario a usuario (peer-to-peer) en la sociedad, y se describe a sí misma como “La Fundación para Alternativas Peer to Peer“. Por lo tanto, fue un lugar muy apropiado para anunciar la invención de un dinero peer-to-peer como Bitcoin.

En su anuncio, Satoshi describe a Bitcoin como un “sistema de dinero efectivo electrónico P2P” que “no tiene un servidor central ni terceros de confianza” porque “todo se basa en pruebas criptográficas en lugar de confianza”.

Él identifica múltiples problemas con nuestro sistema monetario actual y las divisas convencionales que son nativas de este:

  • Confianza en terceros
  • Desvalorización monetaria por los bancos centrales
  • Burbujas crediticias
  • Banca de reserva fraccionaria
  • Privacidad
  • Falta de micropagos debido a costos indirectos
  • Intermediarios

Con solo echar un vistazo a esta lista, se hace evidente el alcance enormemente ambicioso de Bitcoin. Satoshi no se propuso resolver un problema. Se propuso resolver muchos problemas a la vez. Sorprendentemente, hizo tantas cosas bien desde el principio que pudo resolver la mayoría de ellas. Todo lo que tenía que hacer era convencer a los demás de que su solución realmente funcionaba.

Conociendo a su audiencia, continúa señalando cómo se resolvieron problemas similares relacionados con la confianza en el mundo de los sistemas informáticos en general, por ejemplo, cómo la criptografía robusta eliminó la necesidad de confiar en los administradores de sistemas con tus datos. Una vez que sus archivos están encriptados, no necesita confiar en quien tenga acceso a estos archivos, ya que necesitaría de su contraseña para desencriptarlos. En otras palabras: pasamos de confiar en los humanos a confiar en las matemáticas. Esto es especialmente relevante en un entorno peer-to-peer, porque gracias a la criptografía robusta, se puede intercambiar datos confidenciales con otros –incluido tu yo futuro– sin tener que depender de intermediarios.

 

“Es hora de que tengamos lo mismo por el dinero”. Satoshi Nakamoto

Para comprender mejor el avance de Satoshi, recapitulemos lo que era posible antes y en qué otros sistemas se quedaron cortos. Lo siguiente es lo que era posible antes de Bitcoin:

  • Creación de cuenta mediante criptografía de llave pública
  • Tokens costosamente infalsificables mediante prueba-de-trabajo
  • Demostrar derecho de propiedad a través de firmas digitales
  • Transferir tokens de prueba-de-trabajo a través de cadenas de firmas

Y esto es lo que no fue posible:

  • Evitar el doble gasto sin un tercero de confianza
  • Limitación del suministro sin un tercero de confianza

 

Para Satoshi, era obvio que los gobiernos cerrarían cualquier sistema controlado centralmente. Por lo tanto, el sistema que quería construir tenía un objetivo por encima de todos los demás: la descentralización.

“Los gobiernos son buenos para cortar las cabezas de las redes controladas centralmente como Napster, pero las redes P2P puras como Gnutella y Tor parecen mantenerse firmes”. Satoshi Nakamoto

La cita anterior resume maravillosamente por qué la descentralización es tan importante: no hay cabezas que cortar, no hay directores ejecutivos que arrestar, líderes a quienes chantajear o presionar, no hay un solo grupo de personas a las que citar, no hay servidores que cerrar. En otras palabras: la descentralización maximiza la supervivencia.

Un punto central en cualquier sistema lo hace vulnerable y, por lo tanto, propenso a ataques. Un atacante suficientemente motivado encontrará y explotará estos puntos de falla. Y cuando se trata de dinero, el estado tiene toda la motivación del mundo para cerrar un sistema competidor. Esto, y solo esto, es la razón por la que el diseño de Bitcoin es tan intrincado y complicado. Su arquitectura impulsada por incentivos favorece una cosa por encima de todo: la supervivencia. Debido a que usted tendría que destruir todas sus partes simultáneamente, un sistema radicalmente descentralizado es extremadamente resistente a cualquier tipo de interrupción.

Si bien los intentos anteriores, especialmente bit gold, b-money y RPOW, estuvieron bastante cerca del diseño eventual de Bitcoin, todos los sistemas tenían al menos uno de los siguientes defectos:

  • Registro central de propiedad requerido para evitar el doble gasto
  • Valor de la moneda dependiente de una autoridad central
  • Emisión controlada solo posible a través de un organismo centralizado
  • Función de Prueba de Trabajo inestable (computacionalmente hablando)

Salvo el último punto, todas estas fallas son fallas porque requieren una entidad centralizada, exponiendo una cabeza que podría ser cortada por los gobiernos. Lo ingenioso de Satoshi fue la eliminación de todas las cabezas, incluida la suya.

Una vez más, el problema esencial del dinero en el ámbito digital se reduce a dos cosas: escasez y doble gasto. Aunque obviamente están relacionados, no se puede tener escasez digital sin resolver el problema del doble gasto, no son exactamente lo mismo. Satoshi resolvió ambos problemas a la vez, utilizando una red de par-a-par como un libro de registro no centralizado, usando una cadena de tiempo (timechain) global para sincronizar el estado y ajustando dinámicamente la dificultad del acertijo para lograr la estabilidad criptoanalítica, haciendo posible una emisión predecible.

Además, combinó el proceso de emisión, transferencia y verificación, eliminando la necesidad de un tercero de confianza. La genialidad de Bitcoin es que cada nodo puede verificar todo por sí mismo en todo momento. Parafraseando a Hal Finney: “Conoces el código fuente. Sabes las reglas.”

Satoshi pudo descentralizar todas las funciones del b-money de Wei Dai (creación y transferencia de dinero; realización, conclusión y ejecución de contratos) al mismo tiempo que resolvió los problemas del “bit gold” de Szabo (el valor de la moneda dependiendo de una autoridad central; las funciones hash careciendo de estabilidad criptoanalítica). Lo hizo llevando la idea de Hal Finney de los tokens de prueba de trabajo reutilizables al siguiente nivel, creando un activo digital que es a la vez fungible y económicamente infalsificable. Como RPOW, el sistema resultante no tiene inflación, no tiene puertas traseras y protege la privacidad de sus usuarios.

Es útil observar las diferentes funciones de un sistema bancario o financiero para comprender por qué Bitcoin opera de la manera en que lo hace. En esencia, dicho sistema debe poder hacer lo siguiente:

  • Creación de cuentas: los usuarios deben poder crear cuentas y autenticarse.
  • Registros de Propiedad: el sistema debe poder registrar quién posee qué.
  • Demostrar el derecho de propiedad: se requiere algún tipo de certificación para confirmar que un usuario realmente posee el activo, para que el usuario pueda probar este hecho a sí mismo y a los demás.
  • Transferir la propiedad: los usuarios deben poder transferir la propiedad de los activos.
  • Seguridad: el sistema debe asegurarse de que los registros de propiedad, la red informática y los datos del usuario estén seguros.

Además, cuando se trata de sistemas monetarios, es deseable tener lo siguiente:

  • Escasez: el dinero debe ser difícil de producir, es decir, debe ser económicamente infalsificable como lo describe Nick Szabo.
  • Emisión Controlada: las nuevas unidades monetarias deben emitirse de manera uniforme y durante un largo período de tiempo, permitiendo la distribución orgánica entre los participantes.
  • Auditabilidad: terceros independientes deben poder auditar el suministro (así como la seguridad del sistema).

Satoshi encontró una manera de descentralizar todas las funciones enumeradas anteriormente, utilizando una combinación de tecnología de par-a-par, criptografía, probabilidades, teoría de juegos, física e incentivos económicos. En otras palabras: gracias a la universalidad de las leyes de las matemáticas y la física, Satoshi pudo construir un sistema deslocalizado.

Para ser más concretos, echemos un vistazo más de cerca a estas características y cómo Bitcoin logra implementarlas de manera descentralizada:

  • Creación de cuentas: gracias a la criptografía de llave pública, la creación de cuentas de usuario se puede descentralizar por completo. Cualquiera, en cualquier momento, puede crear uno o varios pares de llaves para interactuar con el sistema de Bitcoin. No hay formularios de registro, ni autoridades centrales para aprobar o denegar solicitudes, ni servidores a cargo de los inicios de sesión. En esencia, crear una cuenta en Bitcoin es solo una cuestión de generar un enorme número aleatorio. Incluso puedes lanzar una moneda un par de veces, o tirar un par de dados, siempre que sepas lo que estás haciendo (y tus dados y tus lanzamientos de monedas sean correctos).
  • Registro de Propiedad: en Bitcoin, cada nodo completo tiene una copia de los registros de propiedad. Este enfoque radical es una forma sencilla de eliminar un registro centralizado y optimizarlo para la supervivencia: no se puede cerrar el registro si cada persona es el registro.
  • Demostrar el derecho de propiedad: al igual que otros sistemas anteriores, Bitcoin utiliza firmas criptográficas para demostrar la propiedad. Si tiene la llave privada para firmar un mensaje, puede demostrar que la llave pública relacionada, así como los activos vinculados a esta clave pública, le pertenecen. No se requiere una autoridad central que entregue certificados de propiedad.
  • Transferir la propiedad: la propiedad se transfiere a través de una cadena de firmas, al igual que en el sistema RPOW de Hal Finney. A diferencia de RPOW, no se requieren servidores centrales, ya que la cadena de propiedad está alojada (y validada) por cada nodo completo.
  • Seguridad: Bitcoin está protegido de muchas formas diferentes, todas las cuales dependen de la criptografía de una forma u otra, que a su vez se basa en el poder de números ridículamente enormes. La probabilidad de que alguien adivine su llave privada o una de sus direcciones es prácticamente cero, al igual que la probabilidad de que alguien encuentre el hash de un bloque válido sin hacer el trabajo de fuerza bruta necesario. La combinación de una criptografía robusta y la energía acumulada gastada por los mineros asegura tanto los activos de los usuarios como la integridad de la red. El sistema en sí nunca ha sido hackeado, lo que lo convierte en la red informática más segura de todos los tiempos. Bitcoin solo puede ser atacado de manera significativa en la periferia, por ejemplo, las llaves privadas pueden ser robadas a usuarios individuales o custodios.
  • Escasez: dado que Bitcoin es la primera solución práctica y descentralizada para el problema del doble gasto, hizo posible la escasez digital por primera vez. Satoshi podría haber elegido cualquier tasa de inflación terminal, pero eligió una tasa de inflación terminal de cero. El resultado: 21 millones de bitcoin, nada más. Lo que esto significa para Bitcoin y el mundo en general se explorará en el Capítulo 7.
  • Emisión controlada: debido al ajuste de dificultad de Bitcoin, la emisión controlada es posible de forma descentralizada. El ajuste de la dificultad es lo que resuelve el problema de la inestabilidad criptoanalítica, como señala Satoshi en el whitepaper: “Para compensar el aumento de la velocidad del hardware y el interés variable en ejecutar los nodos a lo largo del tiempo, la dificultad de la Prueba de Trabajo está determinada por una media móvil apuntando a un número promedio de bloques por hora. Si se generan demasiado rápido, la dificultad aumenta”. Durante la era de recompensas de la red, que terminará aproximadamente en el año 2140, nuevos bitcoin ingresarán a la economía con cada bloque válido, es decir, aproximadamente cada diez minutos. El suministro de Bitcoin estaba predeterminado en sus inicios y, posiblemente, esta es la propiedad más valiosa de Bitcoin. Ningún otro activo existente tiene lo que tiene Bitcoin: un programa de suministro invariable con el que no se puede discutir.

 

En resumen, las matemáticas permiten la descentralización de todas las funciones esenciales del sistema y las leyes de la termodinámica permiten fuertes garantías de seguridad. Además, los incentivos económicos y la teoría de juegos son el pegamento que mantiene todo unido.

“El resultado es un sistema distribuido sin un solo punto de falla. Los usuarios mantienen las llaves criptográficas de su propio dinero y realizan transacciones directamente entre ellos, con la ayuda de la red P2P para verificar el doble gasto”. Satoshi Nakamoto

Satoshi también se dio cuenta de que el único activo del mundo real que se puede vincular a un sistema informático sin confianza es la energía, nada más. Cualquier otra cosa, ya sea oro, certificados en papel, bienes raíces o fresas, vuelve a presentar un tercero de confianza debido a la desconexión inherente entre el mundo digital y el físico. Alguien debe asegurarse de que los activos del mundo real y la representación digital de estos activos, en esencia, una lista de cosas, permanezcan actualizados y sincronizados. Esto es lo que se conoce como el problema del oráculo, y la Prueba de Trabajo lo resuelve de una manera ingeniosa e indirecta: utilizando la energía, y por lo tanto la física, como verdad básica. También se puede pensar en el problema del oráculo como una variante del principio GIGO: entra basura, sale basura (Garbage In, Garbage Out). Tienes que confiar en quien mantiene los registros y en que los registros son correctos. Dicho de otra manera: nunca se puede estar seguro de que los datos disponibles representan la realidad, excepto si la realidad tiene sus raíces en la computación misma.

 

Una idea Sumamente Oportuna

“No puedes aplastar las ideas suprimiéndolas. Solo puedes aplastarlas ignorándolas. Negándose a pensar, negándose a cambiar. ¡Y eso es precisamente lo que está haciendo nuestra sociedad! “ – Ursula K. Le Guin

Como podemos ver al examinar la prehistoria de Bitcoin, el doble gasto y la escasez digital no son problemas fáciles de resolver. El gran avance de Satoshi fue encontrar una manera de resolver ambos problemas de manera práctica, no académica. El primero se resuelve mediante una timechain compartida globalmente que se mantiene sincronizada a través de una lotería competitiva, el segundo se resuelve mediante el ajuste de dificultad y la reducción a la mitad de la recompensa del bloque (halving). Bitcoin utiliza las mejores ideas de sus predecesores (firmas digitales, prueba de trabajo reutilizable, redes de par-a-par) y las combina de una manera ingeniosa para crear algo completamente nuevo: un sistema descentralizado sin un solo punto de falla.

No se puede eliminar una sola parte de Bitcoin sin destruirlo completamente. Sin la timechain, no habría una forma descentralizada de verificar el doble gasto. Sin la reducción a la mitad de la recompensa del bloque, el suministro de bitcoins se expandiría indefinidamente. Sin el ajuste de dificultad, el algoritmo de minería no tendría estabilidad criptoanalítica, haciendo que sea trivial para los mineros producir bitcoin más rápidamente. Muchos cypherpunks soñaban con dinero en efectivo digital. Satoshi llevó esta idea más lejos que nadie antes que él, implementando un sistema que es virtualmente imparable. No importa lo que suceda en las próximas décadas, ya se reveló el secreto y todos tendrán que adaptarse a un mundo en el que existe Bitcoin.

Bitcoin es una idea cuyo momento ha llegado. A medida que más y más personas, empresas e incluso estados-nación avanzan hacia un Patrón Bitcoin, la fuerza de gravedad imparable de la idea de Satoshi se vuelve cada vez más evidente. Al implementar su idea, demostró que es posible una solución práctica a los problemas que plagaron el dinero digital durante décadas: el doble gasto y la escasez digital. Lanzar su software a la naturaleza puso en marcha un proceso de varias décadas impulsado por una estructura de incentivos extremadamente poderosa. Una idea imparable, plasmada en código. Es esta estructura de incentivos la que impulsa la supervivencia de Bitcoin. Y con cada día que pasa en que Bitcoin se niega a morir, la humanidad está un paso más cerca de liberar el dinero de la captura del estado. Al mundo le llevará algún tiempo asimilar esta idea tan poderosa. Curiosamente, el tiempo también es la razón por la que Bitcoin funciona en primer lugar, ya que la idea principal que tuvo Satoshi fue cómo mantener el tiempo en un sistema descentralizado. Mucha gente pensó que este problema era insoluble. Resulta que todo lo que faltaba era la idea correcta.

 


Notas al pie

  1. El nombre cypherpunk es una combinación divertida de las palabras cifrado (un algoritmo que cifra y/o descifra un mensaje) y cyberpunk (un subgénero de ciencia ficción generado por las obras de autores como Philip K. Dick, William Gibson, Ridley Scott, y muchos otros).
  2. Internet Assigned Numbers Authority
  3. Timothy C. May, The Crypto Anarchist Manifesto
  4. Diffie and Hellman, 1976, New directions in cryptography (IEEE, PDF)
  5. Rivest, Shamir, Adleman, 1978, A method for obtaining digital signatures and public-key cryptosystems (ACM, PDF)
  6. Dwork and Naor, 1992, Pricing via Processing (PDF)
  7. “La función de costo de CPU hashcash computa un token que se puede utilizar como prueba de trabajo” http://www.hashcash.org/papers/hashcash.pdf 
  8. Hal Finney, RPOW Theory
  9. Usted puede probar esto usted mismo usando varias herramientas en línea (por ejemplo, DuckDuckGo) o escribiendo lo siguiente en una línea de comando: echo -n 1:20:040806:foo::65f460d0726f420d:13a6b8 | sha1sum
  10. En algunos de sus primeros escritos, por ejemplo en este archivo README, Satoshi escribió Bitcoin como “BitCoin”, lo que indica que estaba destinado a ser entendido como dos palabras separadas. 
  11. Desde el libro blanco  inicial incompleto de bit gold en el que Szabo introduce el concepto de activos costosamente infalsificables, vinculando la escasez de ciertos bienes con el alto costo de su creación.
  12. https://nakamotoinstitute.org/shelling-out/ 
  13. Vea sus escritos sobre Intrapolynomial Cryptography
  14. MicroMint fue uno de los dos esquemas de micropagos propuestos por Ronald L. Rivest y Adi Shamir (la R y la S en RSA). El segundo esquema se llamó PayWord. Ambos se enfocaron en pagos eficientes de cantidades muy pequeñas, ampliando trabajos previos como Millicent de Glassman et al. Una vez más, la idea es utilizar criptografía de clave pública y hashes de una manera inteligente para producir monedas: “Una moneda es una serie de bits cuya validez puede ser verificada fácilmente por cualquiera, pero que es difícil de producir.
  15. https://nakamotoinstitute.org/finney/rpow/index.html  –Vea también Shelling Out: The Origins of Money
  16. https://nakamotoinstitute.org/finney/rpow/slides/slide010.html 
  17. The Onion Router, torproject.org  

Este artículo fue traducido por Camo_Rai-PoW. Consulta la versión en inglés en la Fuente Original.