Si todavía no entendés de qué se trata el blockchain, o si cuando lo explicás nadie te entiende, probemos con este ejemplo de la vida real.
Por Nicolás Belgrano
Cofundador de El Rompehielos
¿Qué es “blockchain”? Más de una vez nos lo han intentado explicar, pero lo único que queda claro es que todavía no lo entendemos. Para la gente de a pie, es un fenómeno bastante complejo, e incluso para todo aquel sin alguna formación técnica en programación o ingeniería informática, pero gracias a expertos como Jack Dossman, se pueden encontrar explicaciones que ayudan a entender de qué se trata usando ejemplos de la vida cotidiana: en este caso, el intercambio de figuritas del mundial.
Imaginate que somos dos fanáticos de las figuritas. Cada uno tiene su “pilón” de las figuritas del mundial 2018, y nos reunimos a hacer un intercambio en el patio del colegio. Asumamos que es un intercambio sencillo: no hay nada controvertido con respecto al valor de las figuritas que vamos a intercambiar, y la propiedad de las figuritas resulta evidente, ya que todas están dentro de los respectivos pilones que tenemos en nuestro poder. Ambos podemos verlo y acordamos que el intercambio fue exitoso. No hay necesidad de que un tercero venga a supervisar. Caso sencillo. Todos obtuvimos lo que queríamos y no se derramó ni una gota de sangre.
Ahora supongamos que las figuritas son digitales.
Asumamos que yo soy el que tiene la figurita “más valiosa” del juego — de la cual solo hay un ejemplar — y yo te la quiero transferir a vos. Como ejemplo, podría ser una edición 3D u holográfica del gol de Maradona a Inglaterra en el ‘86.
El problema del “doble gasto”
¿Cómo podrías corroborar que yo no hice copias de la figurita? Yo podría haber hecho 10, 20 o 500 copias y venderlas como si fueran únicas antes de vendértela a vos, haciendo que se reduzca el valor de la verdadera figurita “única”.
Definitivamente, no habría manera de corroborar esto y, si ocurriera, sería un resultado que perjudicaría a toda la comunidad de coleccionistas, ya que las figuritas “únicas” o de edición limitada perderían el valor que deberían tener.
Este es el famoso problema del “doble gasto”. Se da cuando intercambiamos bienes digitales. No podemos verificar que el bien no haya sido copiado o transferido más de una vez a distintas personas. No podemos validar su “unicidad”.
Como solución, podríamos usar un registro de transacciones para certificar nuestro intercambio. En este caso, Panini (el emisor de las figuritas) tendría que llevar un registro de las transacciones de figuritas para controlar que nadie las esté duplicando. ¿Cómo? ¿Esto implica que hay un intermediario que interviene en los intercambios? ¡Si! ¡Ahora necesitamos acudir a él para que apruebe cada transacción! Pero, ¿Cómo sabemos que la figurita que le estoy por transferir no fue duplicada fraudulentamente por un empleado de Panini para sacar un provecho personal? En otras palabras: ¿Cómo nos aseguramos que el intermediario o autoridad central no manipule el registro y/o la emisión de los bienes intercambiados?
Un registro “abierto” y “descentralizado”
¿Qué ocurriría si, en lugar de mantener el registro centralizado en las computadoras de Panini, le damos una copia del registro a cada uno de los tenedores de figuritas? Somos miles de coleccionistas en el mundo, y si cada uno de nosotros mantuviese una copia (digital) del registro y dichos registros estuvieran interconectados, cada uno de los participantes sería notificado cuando ocurra una transacción de una figurita “única” entre nosotros.
Este es uno de los principios fundamentales del Blockchain y, sobre todo, del Bitcoin: poder operar de manera descentralizada SIN LA NECESIDAD DE CONFIAR EN LOS OTROS. Solamente debemos confiar en la propia verificación y validación técnica que hacen las computadoras y, de esta manera, estamos generando confianza en algo mucho más potente: EL EFECTO DE RED.
Eliminamos por completo el tradicional sistema de seguridad basado en los círculos concéntricos de acceso con una autoridad central, y pasamos a un modelo de seguridad de adentro hacia afuera, abierto, accesible a cualquiera. Es un modelo apoyado en las fuerzas de mercado y en la teoría del juego, donde los incentivos y desincentivos juegan un rol fundamental para que los participantes de la red sumen conductas valiosas a la comunidad. Es el primer modelo de seguridad basado en el mercado.
Pero, ¿cómo haría toda la red para verificar que nuestra transacción — y todas las transacciones que ocurren — son legítimas?
La cadena de bloques, los “nodos”, los “mineros” y sus incentivos
Acá es donde blockchain presenta su mayor complejidad para entenderla. Veamos un ejemplo: somos 1000 participantes en la red de figuritas del mundial 2018. Los llamaremos “nodos”.
Cada uno de los nodos tiene una copia del registro compartido, y tienen un software que les permite comunicarse con los otros nodos, es decir, con todas las computadoras de la red. Su fin principal es el de dar una validación independiente a cada transacción de figuritas.
Lógicamente, estos nodos tienen que estar de acuerdo en qué es lo que dice el registro compartido sobre las transacciones que ocurren en la red. Cuando hacemos una transacción, la misma es sostenida “en espera”, en un pool de transacciones “a confirmar”. Entonces, los 1000 nodos comienzan a correr su software para validar todas las transacciones ocurridas dentro de un periodo determinado (ej: 10 minutos).
Estos nodos son los famosos “mineros”, quienes corren carreras para ver cuál es el primero en lograr validar este grupo de transacciones aún no confirmadas o validadas (el “bloque” de transacciones). ¿Por qué lo hacen? Porque si ganan, reciben figuritas del mundial 2018 como premio por sus esfuerzos.
La historia de todas las transacciones de figuritas del mundial 2018 es almacenada como una cadena de estos “bloques” (en inglés, “block-chain”), y ese set de información conforma el registro compartido.
Lógicamente, siguen naciendo nuevas transacciones. Los mineros volverán a competir por “validar” ese nuevo bloque. ¿Cómo lo hacen? Utilizando muchísimo poder computacional para resolver acertijos criptográficos. La red los obliga a utilizar mucha energía y trabajo para que se refuerce el sistema de seguridad y se desincentive el fraude.
Una vez que un minero encuentra la solución al acertijo que valida un bloque, lo firma digitalmente para comprobar que el bloque está verificado, y lo anuncia y distribuye a la red de nodos para que actualicen sus registros. Finalmente, recibe su premio de figuritas Panini.
El mecanismo de “consenso”
Pero, ¡atención! En realidad, ninguno de estos nodos confía en el otro, entonces cada vez que un bloque es verificado por un nodo y distribuido al resto, cada nodo lo que hace es corroborar que cada transacción del bloque sea coherente con el historial de transacciones a fin de detectar si una figurita ha sido “gastada” más de una vez.
Así es como la red llega a un CONSENSO.
La “irreversibilidad” (en inglés, el concepto de “tamper-proof”)
¿Qué impide que yo pueda transferirle una figurita a un amigo a cambio de algo (transacción A) e, inmediatamente y de manera fraudulenta intento transferir esa misma figurita a otro amigo, a cambio de otra cosa (transacción B)? La red no sabe cuál es la transferencia “legítima” entre A o B. ¿Cómo decide?
Ambas transacciones van a ir a la lista de espera de las transacciones por confirmar, y serán ubicadas de manera CRONOLÓGICA. La transacción que se valide primero es la que tiene legitimidad para los participantes de la red. Esto significa que, cuanto más atrás en la cadena se ubique la transacción, más segura es.
¿Qué pasa si yo quisiera hacer trampa e intentar ir hacia atrás en el registro modificándolo para remover la operación A?
Esa transacción inicial fue almacenada en un bloque de información, y los bloques están vinculados linealmente en el tiempo, así que para el momento en que voy a intentar hacer trampa y modificar el registro, probablemente esté ya registrada detrás de una serie posterior de bloques con operaciones posteriores que ya fueron validadas.
¿Recuerdan la firma digital o validación que hizo el nodo a cada bloque? Esa validación se generó basándose en la información contenida en dicho bloque, así que cambiar esa data (borrando mi transacción) automáticamente cambia la firma o validación, lo cual me dejaría expuesto frente a todos los participantes, evidenciando que yo estoy queriendo modificar la información (en inglés, el concepto de “tamper-evident”).
Peor aún para mí: cada firma en cada bloque posterior a ese bloque inicial también está parcialmente determinada por la firma anterior, y también será modificado si la firma anterior se modifica. Eso significa que para alterar la realidad actual, no solo debo modificar la información contenida en el bloque inicial, sino también en los nueve bloques posteriores de la cadena.
Además, tengamos en cuenta que al hacer esto, solo impacto MI COPIA del registro. Mientras tanto, todas las otras copias están poniéndose de acuerdo en lo que YA pasó en todos los bloques anteriores y fue validado y registrado por todos. Así que si quiero modificar la realidad, tengo que hacer todo este mismo trabajo en más del 50% de las computadoras de la red para obtener el consenso mayoritario. Además, para lograr generar todas las firmas digitales que aprueben todas esas modificaciones, debo utilizar muchísima energía para seguir descifrando acertijos matematicos, que es la única manera de validar nueva información, y competir contra todos los otros mineros o nodos para validar esa “nueva” información. Esto puede implicar muchos galpones llenos de computadoras utilizando energía, y eso ni siquiera me garantiza el éxito en el resultado.
Claramente, si intento eso, terminaré peor de lo que empecé.
De este modo, hemos creado un registro abierto, descentralizado, irreversible, a prueba de manipulaciones, públicamente compartido entre todos los participantes de la red, y que almacena datos tales como transacciones.
Éste es un ejemplo híper sencillo de cómo funciona la tecnología de Bitcoin y Blockchain, y puedo asegurarte que si lograste entender este ejemplo y los conceptos básicos que transmitimos, ya sabés sobre blockchain más que el 95% de la gente.
Nicolás Belgrano
Cofundador de El Rompehielos