Clase 4 - Descentralización, Blockchain y Teoría de Juegos
🎥 Video de la Clase
👉 Haz clic aqui para ver en Vimeo
Guión Completo
Clase 4- Dentro de Bitcoin: cómo funciona Bitcoin? (descentralización, blockchain y teoría de juegos)
En esta clase vas a sumergirte en el funcionamiento de Bitcoin, aprendiendo sobre sus características, cómo funciona la blockchain, la minería, los halvings y conceptos técnicos fundamentales. No te preocupes si no entiendes todo a la primera. Es normal necesitar revisar y volver a ver algunas veces para que el aprendizaje se consolide. Con el tiempo, los conceptos van a encajar y tendrán cada vez más sentido.

Como viste en la clase 1, Bitcoin es la unión de varias tecnologías y conceptos. La descentralización es lo que separa a Bitcoin de cualquier otra invención en la historia reciente.

Y lo que está sucediendo en las últimas décadas es la acción de dos fuerzas tecnológicas actuando al mismo tiempo: la descentralización y la desmaterialización de las cosas. La desmaterialización comenzó en los años 90 con computadoras y smartphones, que condensan y desmaterializan diversos dispositivos que antes solo conocíamos en forma física. Radio, agenda, televisión, cámara, calculadora, fax, todo eso en apenas 20 años fue desmaterializado y digitalizado para la palma de tu mano, en tu celular. Se convirtió todo en uno.
Bitcoin continúa este cambio evolutivo y tecnológico trayendo ambos efectos para la economía y para el dinero. Es decir, bitcoin descentraliza el acceso al valor para cualquier persona de cualquier lugar del mundo sin restricción de acceso y también desmaterializa el sistema financiero bancario de sucursales, cajas fuertes, cajeros automáticos y bóvedas. Y si internet ya descentralizó la información y cambió el mundo, imagina lo que Bitcoin puede hacer al descentralizar valor y poder de decisión. Además de desmaterializar bancos centrales, bancos comerciales y las propiedades de un dinero sólido.

Bitcoin solo puede hacer esto porque es descentralizado. Sin descentralización, Bitcoin sería una empresa. Es la descentralización lo que diferencia a Bitcoin de todo lo demás y lo que proporciona inmutabilidad. Si no hay nadie tomando decisiones por otras personas significa que es una red que es difícil de cambiar. Para que se haga cualquier cambio, casi todos los participantes necesitan estar de acuerdo en cambiar. Y esto no es nada fácil ni en Bitcoin ni en cualquier sistema que involucre miles de seres humanos tomando decisiones. La descentralización es lo que garantiza la inmutabilidad de las propiedades y que las reglas de bitcoin seguirán siendo las mismas. Brinda confianza de que nadie conseguiría monopolizar o corromper bitcoin de manera autoritaria.
La descentralización de Bitcoin ocurre porque es una red P2P, punto a punto. Está formada por computadoras que se conectan entre sí y siguen reglas con las cuales todos están de acuerdo. No existe un servidor central coordinando o almacenando los datos, como sucede en redes centralizadas. También significa que no hay un único punto de falla. Si cualquier computadora conectada a la red cae, es destruida o atacada, la red sobrevive y sigue funcionando porque existen miles de otras cumpliendo la misma función de forma independiente.

En la práctica significa que no existen intermediarios en Bitcoin. Cada persona puede conectarse a la red sin depender de nadie, sin necesidad de pedir permiso y sin la posibilidad de ser impedida por terceros. A diferencia del dinero fiat que es centralizado y donde dependes de numerosas entidades, ministro de economía, director del banco central, instituciones de pago, casa de moneda, bancos, etc., para tener acceso al sistema.
Los bancos centrales determinan las políticas monetarias y no tienes la opción de no seguir las reglas, estás obligado a seguirlas. De ahí viene la expresión "curso forzoso". Los bancos comerciales dan acceso al sistema. Para participar necesitas pedirles permiso y, si no cumples los requisitos, puedes no tener una cuenta bancaria o incluso pueden cerrar tu cuenta.

Otra gran diferencia es a la hora de hacer transacciones.
Actualmente, cuando haces una transacción digital, tienes que pedirle a tu banco que envíe un valor al banco de otra persona, y después el banco de esa persona deposita el valor en la cuenta correspondiente. En una transacción entre dos personas usando el sistema bancario fiat, existe al menos un intermediario, un banco, entre dos personas. Si esas dos personas tienen cuenta en bancos diferentes, entonces van a ser dos bancos intermediando la transacción.
Ya a través de Bitcoin es como hacer una transacción de dinero físico, igual que cuando compras algún producto y entregas los billetes directamente en la mano de la otra persona. Con bitcoin envías el valor directamente a la billetera de otra persona sin pasar necesariamente por algún tipo de intermediario fiat o banco. A menos que quieras que pase, que elijas hacer transacciones a través de exchanges por ejemplo, pero es una elección, no una vía obligatoria. Esto cambia completamente la forma en que funciona el sistema financiero, porque hoy el sistema fiat depende de estos intermediarios para transferir valores online.
Fue a través de criptografía, timestamps, redes p2p y un mecanismo de consenso robusto que Satoshi Nakamoto consiguió digitalizar el sistema financiero como un todo, pero sin necesitar de gobiernos ni bancos.

La red Bitcoin está formada por el código, los mineros y los nodos. El código es un conjunto de reglas en forma de códigos computacionales y criptografía que guían a los participantes para coordinarse entre sí. Determina cómo se harán los registros y cómo debe funcionar la red Bitcoin. El código es público y cualquier persona puede sugerir modificaciones, auditar para encontrar bugs e incluso copiarlo. Es este código el que es difícil de modificar y monopolizar, es ejecutado por miles de participantes y para modificarlo de forma válida es necesario que prácticamente toda la red esté de acuerdo en ejecutar una versión modificada.
Puedes consultar el Github de Bitcoin, donde los desarrolladores debaten actualizaciones y donde tú también puedes contribuir si quieres. Voy a dejar el enlace del Github de Bitcoin aquí debajo de la clase. El código funciona a través de software y el más usado es el Bitcoin Core, una implementación de la versión original creada por Satoshi Nakamoto.
Los mineros son los participantes que proponen los bloques, insertan las transacciones y defienden la red de ataques a través de poder computacional. Son ellos los primeros en recibir Bitcoin de la red con cada bloque minado.
Y el tercer tipo de participante de la red son los nodos. Los nodos son computadoras comunes que verifican si los mineros están siguiendo el consenso determinado por el código. Los nodos son agentes potentes de descentralización, porque es a partir de ellos que cualquier persona puede tener una copia de la blockchain de Bitcoin en su propia computadora, decidir qué versión del código ejecutar y formar parte de la red Bitcoin con autonomía para enviar sus propias transacciones sin depender de nadie. Inclusive si los mineros se unieran para atacar Bitcoin, son los nodos los que tienen poder de impedir que ese ataque sea efectivo. Esto incluso ya ocurrió en la llamada guerra de bloques que sucedió en 2016.

Según el sitio Bitnodes, existen más de 65 mil nodos Bitcoin funcionando globalmente y la mayoría de ellos, el 65%, no tiene una ubicación exacta identificada. Son estos miles de nodos en computadoras comunes conectadas entre sí los que convierten a la red Bitcoin en el sistema computacional más fuerte, resistente y accesible para que cualquier persona en cualquier lugar del mundo pueda verificar. Cualquier persona puede ejecutar un nodo y el costo es bajo, puedes ejecutar un nodo incluso en una computadora vieja que tengas en casa.
Los nodos verifican todo el tiempo los registros. Es por eso que la contabilidad de la red Bitcoin es redonda, porque los nodos verifican constantemente si las transacciones cuadran y si el número de monedas circulando está correcto. Es un sistema de registros distribuido, donde la contabilidad siempre cuadra exactamente, esto también es algo poderoso y único.

Los bancos centrales no permiten que mires sus cuentas internas ni opines directamente en las reuniones. La contabilidad de los bancos centrales es privada y se hace a puertas cerradas. La población depende de los datos proporcionados por el Banco Central y no puede verificar de forma independiente ni opinar directamente en las políticas monetarias. La población ni siquiera elige quién va a presidir el Banco Central! En cambio, en Bitcoin cualquier persona puede auditar la red y sugerir mejoras, porque es de libre acceso.

Las estructuras centralizadas son jerárquicas, como una empresa: tienen CEO, alguien tomando las decisiones sobre los próximos pasos, tienen equipo de marketing, de desarrollo de investigación y funcionan a través de esa jerarquía de poder. Las empresas compiten entre sí para ganar mercado. Las criptomonedas son como empresas y compiten entre sí por market share vendiendo utilidad, como hacen las empresas.
Bitcoin es horizontal, es colaborativo, simplemente existe y permite que cualquier persona disfrute y participe de la red. No hay nadie determinando hacia dónde va el protocolo y cuál es la próxima actualización. Es el colectivo de usuarios, nodos y mineros los que definen qué versiones del protocolo van a ejecutar sin que ni ellos estén de acuerdo entre sí. Es por eso que Bitcoin no tiene competidor, nada funciona como él. Bitcoin abraza el pensamiento adversario y usa esos incentivos individuales para fortalecer el todo.
Es por eso que Bitcoin es tan resiliente. No hay forma de censurar o evitar que las personas accedan, aunque estén en desacuerdo unas con otras. A diferencia de los bancos que todo el tiempo cierran cuentas de usuarios y cambian las reglas constantemente.
Incluso muchos protocolos se dicen descentralizados, pero cuando los analizas profundamente son lo opuesto: son como empresas. Tienen líderes, tienen concentración del poder de decisión, son fácilmente censurables y no sobrevivirían a ataques de hackers o censura gubernamental. Bitcoin ha sido atacado constantemente y sigue funcionando sin parar hace más de 10 años por esta estructura resiliente y descentralizada.

Aun existiendo cientos de copias, ninguna de ellas ha conseguido superar a Bitcoin, ni siquiera cualquier otra criptomoneda que surgió después. Esta imagen muestra los forks, las copias que ya se han hecho de Bitcoin de 2015 a 2018. Muchos se autodenominan "el verdadero bitcoin" e intentaron robar narrativa, visibilidad y liquidez, pero ninguno realmente lo consiguió. Ningún proyecto puede robar las propiedades y el efecto de red que tiene Bitcoin. Cualquier nivel de centralización ya es un punto de mutabilidad, de monopolio del poder de decisión y también un potencial punto de falla que puede ser explotado por atacantes.

Satoshi sabía desde el principio que la descentralización era el punto clave de Bitcoin y una de las principales razones por las que proyectos anteriores de dinero digital no prosperaron. Incluso escribió en 2009: "mucha gente automáticamente descarta las monedas digitales porque muchas empresas fracasaron desde los años 90. Espero que quede obvio que el motivo era la naturaleza centralizada que controlaba esos sistemas lo que causó ese fracaso".

La descentralización de Bitcoin es resultado de una combinación única de factores que trabajan en conjunto para proteger la red. Para comprometer el sistema, sería necesario un ataque que exigiera coordinación extrema, enormes recursos financieros y una cantidad colosal de energía. Esta barrera casi infranqueable se sostiene por la aplicación práctica de la teoría de juegos, que incentiva a los participantes a colaborar entre sí para fortalecer la red en lugar de intentar hackear o engañar unos a otros.
En la teoría de juegos de Bitcoin, la colaboración siempre es más lucrativa que el sabotaje. Los mineros, validadores y otros participantes tienen incentivos financieros y estructurales para actuar a favor de la red, ya que cualquier intento de ataque sería extremadamente caro y, en la mayoría de los casos, inútil.
Además, para que esta colaboración sea posible y confiable, Bitcoin opera con transparencia total. Su código es open source, es decir, abierto y accesible para todos, permitiendo auditoría continua y garantizando que ninguna regla sea alterada sin el consenso de la red. Este alineamiento entre descentralización, incentivos económicos y transparencia es lo que hace de Bitcoin la red monetaria más robusta y segura jamás creada.
Satoshi consiguió unir estos puntos resolviendo uno de los problemas más antiguos: el problema de los generales bizantinos.

Esta analogía intenta responder, a través de una situación de guerra, cómo los sistemas informáticos podrían comunicarse de forma descentralizada. Hasta antes de que surgiera Bitcoin este problema no tenía respuesta.
Viste Game of Thrones? Si la viste, imagina ahora una escena de invasión de una ciudad tipo la de la serie. Esta ciudad se llama Bizancio y hay varios generales queriendo atacar ese lugar. Han rodeado la ciudad y deben decidir juntos cuándo atacar. Si todos atacan al mismo tiempo ganan la batalla porque hubo coordinación. Si atacan en momentos diferentes, pierden porque quedaron descoordinados y susceptibles a ser atacados.
Los generales no tienen canales de comunicación seguros unos con otros para crear esta acción coordinada. Primero porque están en posiciones diferentes alrededor de la ciudad, y segundo porque no pueden tener garantías de que el mensaje llegará, las posibilidades de que un mensajero sea interceptado por el enemigo son muy grandes.
Entonces, necesitan encontrar una forma de comunicarse, de llegar a un consenso sobre la hora correcta de atacar. El primer general puede comenzar enviando un mensaje de ataque a las 9h, pero no tiene forma de saber si el mensajero entregó el mensaje o no. Esta incertidumbre puede llevar al primer general a desistir de atacar. Dilemas como este generaron muchas fallas en los dineros digitales anteriores a Bitcoin.
Bitcoin consiguió resolver el problema de los generales bizantinos teniendo: coordinación completa a través de Proof of Work, que establece un conjunto de reglas de procesamiento de la red que coordina a todos; a través de redes P2P que conectan a todos los participantes al mismo sistema; y a través de blockchain, un sistema de registros criptográficos encadenados que todos pueden verificar sin depender de ningún "mensajero" de fuera del sistema.
A través de este sistema todos los generales conseguirían coordinarse sobre el momento correcto de atacar Bizancio sin depender de terceros, de forma sincronizada, segura y sin que nadie dude en atacar.

Hablé hace poco sobre Proof of work y mecanismos de consenso, estos términos son las reglas que guían el protocolo. Son algoritmos que establecen cómo la red se va a coordinar. Este conjunto de reglas busca, a partir de una situación inicial, un input (entrada en español), alcanzar un resultado final, un output (salida en español).

Todo esto funciona registrando información en un sistema encadenado, distribuido y que no puede ser borrado llamado blockchain. Satoshi usó timestamps y timechain para describir este mecanismo en el whitepaper de Bitcoin.
Hay gente que dice que blockchain es la verdadera innovación detrás de Bitcoin, pero eso es una tontería. Blockchain es importante, pero sola y sin otras propiedades, es solo una base de datos lenta, cara y tan centralizada como un Excel de una empresa.

Blockchain o timechain significa cadena de bloques. Son bloques de información vinculados unos a otros y que son procesados por la red cada 10 minutos en promedio. Eso significa que muchas veces tarda menos de 10 minutos y otras veces puede tardar horas. Depende del poder computacional de los mineros y de la dificultad de la red.

La inmutabilidad de los registros viene en el sentido de que no hay forma de quitar o cambiar el bloque del medio de la cadena. Si hay 200 bloques e intentas borrar o modificar el del medio, los bloques vecinos van a ser afectados, cambia el hash.
Es como si fuera una costura digital. Si jalas el hilo del medio de una costura, distorsiona todos los puntos siguientes, verdad? Con Bitcoin es muy parecido. Si cualquier información es alterada en un bloque, acaba distorsionando todos los bloques siguientes.
Entonces, vamos a suponer que estamos mirando ahora a la blockchain de Bitcoin. Cada bloque minado contiene información sobre las transacciones financieras hechas en la red y sobre el propio bloque donde fueron registradas. Solo que la red resume todas esas informaciones en un código llamado HASH. El Hash es la frase criptográfica que resume toda la información que está dentro del bloque de información. Es a partir del Hash que el encadenamiento ocurre.
Después de creado el Hash 1 del bloque 1, va a ser insertado junto con el contenido del próximo bloque, el bloque 2. Va a ser mezclado de forma aleatoria y va a formar el Hash 2.
El Hash 2 resume todo el contenido de su bloque y también del bloque anterior, porque el Hash 1 fue insertado dentro del contenido del bloque 2 y así sucesivamente.
El hash 3 va a ser el resumen criptográfico del bloque 3, que contiene el hash del bloque 2 anterior. A través de estas funciones de hash es que ocurre el encadenamiento de la red. Es decir, los bloques siguientes siempre van a tener un resumen de los bloques anteriores. Es de esta forma que la información está siempre correlacionada.

Es por causa de este encadenamiento de información que la red siempre está confirmando todo antes de minar el próximo bloque. Entonces, si cambia cualquier cosa en el bloque 1, el hash de todos los bloques siguientes también cambian. Si cambia una coma, un espacio, una letra, cualquier cosa, ya altera el Hash. Si algo es alterado después de registrado en blockchain, los mineros o los nodos que verifican la red van a identificar la alteración a través del hash y no van a aceptar esa información como válida.
Este mecanismo hace absurdamente fácil verificar si hubo algún ataque al historial de transacciones al mismo tiempo que hace muy difícil editar el pasado de los registros de forma efectiva. Esto porque, tanto los nodos como los mineros tienen copias de la blockchain de Bitcoin, si cualquier información del pasado es cambiada y no coincide con las copias que existen en sus computadoras, van a ser fácilmente identificados y no van a aceptar ese bloque como válido.
Este es uno de los factores de verificación constante que hace a la red Bitcoin muy segura y difícil de "engañar" y de hackear. Es una red que consigue descentralizar la confianza, porque está todo correcto, no hay nada alterado. Toda la información cuadra. Esta facilidad de verificación y dificultad de manipulación es lo que hace que los registros en la blockchain de Bitcoin sean inmutables.
Aun así, en caso de que alguien decida modificar la forma como la red funciona, esa persona puede causar un fork.

Las actualizaciones de versiones de blockchain se llaman forks. Existen dos tipos de actualizaciones: soft forks y hard forks.
Forks viene de ramificación y significa tenedor en inglés, por eso vas a ver imágenes de tenedores cuando alguien hable de forks. Forks son versiones diferentes de las reglas iniciales.

Entonces, cuál es la diferencia entre estos dos tipos de tenedores, o mejor, bifurcaciones?
Soft forks es cuando la red hace una actualización de forma que tanto quien ejecuta la versión antigua del código, del software, como quien ejecuta la nueva versión consiguen coordinarse. Es un fork retrocompatible, opcional y que no cambia el mecanismo de consenso. Sigue siendo la misma red y la misma moneda solo que con algunos detalles diferentes en las versiones.
Los hard forks son cuando se hacen actualizaciones radicales, al punto de cambiar el consenso del protocolo y quien ejecuta la versión antigua no consigue coordinarse con quien ejecuta la nueva versión. Los usuarios antiguos no pueden participar de la nueva red si no actualizan. Como consecuencia, una nueva moneda y una nueva red es creada. Este tipo de actualización obliga a los usuarios a actualizar a la nueva versión.
Bitcoin no hace hard forks, solo soft forks. Porque los hard forks son fuerzas centralizadoras, excluyen a usuarios que pueden no estar de acuerdo con la nueva versión y acaban con la inmutabilidad de red. Los hard forks se observan más frecuentemente en otros protocolos de criptomonedas y en blockchains privadas de empresas.
Bueno, en esta clase comenzamos a sumergirnos en el funcionamiento de Bitcoin, pero esta es solo una parte, hay mucho más contenido para que aprendas. Absorbe este conocimiento, dale una pausa a tu cerebro y cuando estés listo para continuar te espero en la próxima clase.
📢 Comparte esta clase!
Twitter LinkedIn WhatsApp Telegram
📈 Tu Progreso en el Curso
Clase 4 de 10 (40% completo)
Last updated
