Doblaje al español de un fragmento de “Blockchain technology, the last 10 years”
Desde el minuto 00:00:00 al 00:36:14 del video original
Publicado en el canal de Youtube de IOHK el 13 de Septiembre 2024
Enlace a la versión doblada al español
Además aquí está la transcripción completa, traducida y revisada para el Canal Cardano Castellano
Transcripción completa
Tim: Hola a todos, aquí vamos, el micrófono funciona, hola a todos y bienvenidos a este evento amablemente organizado por el Instituto de Tecnología de Tokio. Ahora, por supuesto, Japón es un lugar que tiene una resonancia especial para Input Output y, por supuesto, para Cardano. Así que lo que vamos a presentarles durante el transcurso de las próximas horas es contarles un poco más sobre esa historia, algunos de los trabajos que se han realizado aquí en nuestra colaboración con la universidad y también presentarles dos proyectos clave de la comunidad: Intersect, que es la organización basada en miembros para la comunidad de Cardano, y también el proyecto Catalyst, que muchos de ustedes también conocerán.
Tendremos a Mario Langera, quien es el jefe del laboratorio de blockchain aquí y becario de investigación en el Instituto de Tecnología de Tokio. También estará Jack Briggs, director de ecosistemas y marketing de Intersect; Kriss Baird, quien es el gerente general del proyecto Catalyst; y, por supuesto, también nos acompañará nuestro próximo invitado, así que, por favor, den una bienvenida muy especial a Charles Hoskinson.
Charles: Gracias, muchas gracias por venir. Siempre me siento honrado de estar aquí en el Instituto de Tecnología de Tokio. Hace años estuve en el MIT para una cumbre blockchain y mencioné que teníamos un laboratorio aquí, y dijeron: “Bueno, ¿no es eso como el MIT de Japón?” Y respondí: “No, no, no, MIT es el Tokyo Tech de América”. Pero este es un lugar maravilloso y en realidad uno de nuestros laboratorios más antiguos.
Para dar contexto, Input Output ha estado en funcionamiento por casi 10 años, y comenzamos el laboratorio de Tokyo Tech en colaboración en 2016, hace unos ocho años. Ahora tenemos laboratorios en la Universidad de Stanford, la Universidad Carnegie Mellon, la Universidad de Wyoming, la Universidad de Atenas, la Universidad de Edimburgo y muchos otros afiliados en todo el mundo. Hemos publicado 223 artículos con 168 científicos con los que hemos trabajado, y tenemos más de 10,000 citas en nuestro portafolio, pero algunas de las investigaciones más interesantes y mejores que hemos hecho han sido aquí en Tokyo Tech, como Mario les explicará.
Lo bueno de ser una organización distribuida es que llegas a conocer a todos y reunirte con todos. Los académicos aquí han tenido la oportunidad de ser coautores de artículos con personas de los Estados Unidos, Europa y de todo el mundo, lo cual ha sido un gran honor porque, normalmente, no tenemos la oportunidad de ser coautores de artículos con personas de Japón, así que realmente lo apreciamos. Mi charla trata un poco sobre algunas de las cosas en las que hemos trabajado y aprendido como comunidad académica en los últimos 10 años, y algunos de los desafíos que enfrentamos en la industria de la blockchain.
Esto comienza más o menos en los años 70, cuando por primera vez comenzamos a pensar seriamente sobre las redes de computadoras. Teníamos a Vince Surf y Bob Kahn, y el evento de TCP/IP. También por primera vez se comenzó a pensar en el concepto de un sistema distribuido. En aquellos días, las computadoras eran bastante grandes y típicamente estaban en un solo lugar, y no podías hacer mucho con ellas. Pero a la gente les gustaban y sabían que tenían futuro y promesa, por lo que hubo una amplia discusión sobre, ¿qué pasaría si tuviéramos una red de computadoras juntas y estas computadoras trabajarían en un problema común?
Llamemos a este problema “P”. Entonces, todas estas computadoras querían empezar a trabajar en el problema P, y cada una de estas computadoras tenía ciertos recursos: memoria, almacenamiento y poder de cómputo, y estarían conectadas a través de algún tipo de red. Uno de los primeros problemas que trabajó Leslie Lamport fue cómo estas computadoras podrían trabajar juntas de manera colectiva para que el todo sea mayor que la suma de sus partes. El primer problema fue el tiempo. Lamport creó el concepto de un “reloj de Lamport”, y la idea básica era que, dado que estas computadoras están en diferentes lugares del mundo, el asunto es que su percepción del tiempo es diferente. Si un evento ocurre aquí, y otro evento ocurre allá, si preguntas al nodo A cuál fue el orden, 1 o 2, dirá que el evento 1 ocurrió primero y luego el evento 2. Pero si preguntas al nodo B, te dirá que primero ocurrió el evento 2 y luego el 1, simplemente por la proximidad. Entonces, ¿quién tiene la razón?
Este es uno de los desafíos de los sistemas distribuidos, y algo que Lamport estudió. Escribió un artículo y realizó un trabajo fundamental que no solo es uno de los más citados en toda la ciencia de la computación, sino que también le otorgó el “Premio Turing”, conocido como el Nobel de la informática.
La mayoría de las soluciones en la práctica a lo largo de los años 70, 80 e incluso 90, consistían en admitir que era muy difícil en la práctica hacer que todos los nodos fueran iguales, por lo que en su lugar se elegía un ganador. Quizás el nodo C fuera el ganador, y este se encargaría de ser el “guardián del tiempo” y el encargado de serializar el sistema distribuido. Entonces, si había una disputa entre 1 o 2, el orden de los eventos, simplemente se le preguntaba a C, y aunque los demás pudieran tener percepciones diferentes, ese sería el que lo haga realidad.
Además, surgía la pregunta: ¿qué pasa si los actores mienten? ¿Qué pasa si algo falla en el proceso, como un comportamiento defectuoso o lo que a veces llamamos un actor bizantino, que miente intencionalmente? O tal vez el disco duro falla. Si pensamos en Googleplex, Amazon o cualquiera de estos sistemas que involucran millones de computadoras, en cualquier momento cientos de discos duros, módulos de memoria, CPUs u otros componentes podrían fallar. Quizás se corte la electricidad, falla el disco duro, algún asunto. Así que mucha investigación en consensos se centró en la optimización y la tolerancia a fallos, donde el concepto de un sistema distribuido era que básicamente tenías un quórum predefinido, entonces un quórum es simplemente todos estos miembros y una idea general de tu modelo operativo, y hacían preguntas como: “Está bien, ¿la red es síncrona, lo que significa que todos están limitados por algo, o es semisíncrona, o es asíncrona, donde no hay límites?”.
Y de esto surgió una gran cantidad de teoría interesante, como cuáles son las limitaciones fundamentales de esto. Por ejemplo, un resultado muy similar fue el teorema de imposibilidad de FLP, que decía que, en condiciones normales, si tienes una red asíncrona, nunca puedes tolerar más de un tercio de actores deshonestos, cosas como esa. Y realmente, esto era más una disciplina de ingeniería que académica, se volvió un poco obsoleta por un tiempo, y de repente surgió Bitcoin y cambió bastante las cosas. Entonces, en lugar de tener un quórum preseleccionado donde dices, “Está bien, tengo cinco servidores o siete servidores o 20 servidores o lo que sea”, ¿qué tal si lo cambiamos para que en realidad no sepamos cuántas personas están participando? ¿Qué tal si también lo cambiamos para que puedas hacer esto a través de Internet en general, y en su mayor parte, es una red asíncrona adversarial? Ese es un modelo operativo muy diferente y muy especial, y es un modelo operativo que no se entendía bien en la resistencia bizantina tradicional, en la literatura de sistemas distribuidos tradicionales. Y no es coincidencia que fuera resuelto y discutido por alguien que no estaba integrado en la academia para empezar. Así que, en 2009… voy a usar la otra pizarra para que podamos referirnos de ida y vuelta. Entonces, en 2009 se le dio la vuelta a todo el concepto de sistemas distribuidos.
Satoshi, bien. Y en lugar de decir: “Está bien, vamos a tener un conjunto predefinido de nodos de consenso”, va a ser dinámico, ¿de acuerdo? Así que puedes seguir agregando y quitando nodos, y de alguna manera el sistema puede seguir avanzando. Además de ser dinámico, también tienes una condición de red mucho más hostil.
Entonces, típicamente, cuando miras un arreglo como este, como si fuera el Googleplex o Amazon o un sistema distribuido bien hecho, la mayoría de estos servidores probablemente estarán colocados en el mismo lugar o estarán en centros de datos con conexiones de Internet de fibra óptica, están encendidos las 24 horas del día y tienen un mantenimiento bastante confiable.
Cuando miramos algo como Bitcoin, bueno, esto puede ser tu enrutador Wi-Fi en la casa de tu tío, esto puede ser que estoy en un teléfono móvil y estoy haciendo algo, esto puede ser prácticamente cualquier tipo de conexión, sin importar lo mala que sea. De alguna manera, la red tiene que poder tolerar eso. Y otra cosa es que esperamos un mal comportamiento, comportamiento adversarial. Entonces, tradicionalmente, cuando miras cosas como esta en el mundo de los sistemas distribuidos clásicos, generalmente el mal comportamiento es el resultado de que una computadora ha sido comprometida por un adversario externo que hackea la computadora o de una falla de hardware, pero es muy inusual esperar que las personas vayan más allá para romper los sistemas que poseen y operan. Es algo inusual. Mientras que aquí, las personas tienen un incentivo financiero para realmente romper la red, por lo que el mismo grupo de personas que se supone que debe avanzar la red y hacerla avanzar son las personas más propensas a atacarla. Es algo muy inusual. Así que este es un caso inusual, y durante mucho tiempo la comunidad académica no le prestó mucha atención, hasta que nuestro científico jefe, Aggelos Kiayias, escribió un documento fundamental, lo llamamos el documento GKL 15.
El problema es que siempre que haces investigación en criptografía o sistemas distribuidos, generalmente tienes un concepto de un modelo matemático y un modelo adversarial para entender cómo analizar estas cosas de manera muy precisa. No teníamos realmente esto con el documento de Satoshi, teníamos una definición heurística, teníamos un protocolo definido en código, y era un documento relativamente simple. Entonces, lo que hizo Aggelos fue introducir este concepto de un prefijo común, introdujo este concepto de consistencia y crecimiento, y esto permitió, con formalismo matemático dentro del documento, la capacidad de hablar sobre cómo las personas entran y salen de la red y cómo pueden avanzar la red. Y debido a que había rigor matemático detrás de esto, y por cierto, este documento tiene casi 2,000 citas, se convirtió en la columna vertebral de cómo hacemos análisis de seguridad como industria. Así que, en realidad, este artículo se publicó justo cuando el laboratorio en el Instituto de Tecnología de Tokio se estableció, y una de las primeras cosas que hicimos cuando se creó el laboratorio fue que muchos de los académicos en el laboratorio lo leyeran y dijeran: “De aquí en adelante, todos los protocolos que se redacten aquí, intentemos usar este formalismo”.
Entonces, lo que ha sucedido en los últimos 10 años es que hemos hablado sobre las consecuencias de este tipo de propiedades de seguridad, cuáles son las consecuencias de estos modelos operativos y cómo se traducen a lo que queremos hacer en una criptomoneda. Si lo miras desde la perspectiva de ciencias de la computación, lo que realmente parece una criptomoneda es una máquina de estados.
Básicamente, tienes algo que procesa transacciones de un estado a otro. Tienes un bloque, pasas al siguiente bloque, vas al siguiente bloque y llegas a tu bloque actual, y cada vez que haces eso, tienes un estado inicial del sistema, es como la inicialización, y utilizando ese formalismo, todos están de acuerdo con ese estado inicial en tu prefijo común, y luego tienes reglas sobre cómo se transita de un estado del sistema al siguiente. Bitcoin tiene reglas muy simples, así que el conjunto de transacciones que tienes es más o menos la lógica UTXO del sistema. Tienes entradas y tienes salidas, y hay algunas invariantes en esas relaciones, como por ejemplo que el valor de las entradas debe coincidir con el valor de las salidas, y si hay una discrepancia, va a tarifas para los mineros o están creando tokens de la nada.
Básicamente, es solo una gran máquina de estados, y el objetivo del consenso, de los algoritmos de consenso de los que estamos hablando, es crear una vista común que, a medida que pasamos de una transición a la siguiente dentro de la máquina, esa vista sea precisa, y que los terceros, cuando la vean, funcione correctamente.
Bien, la primera pregunta que uno se haría es: ¿qué tan expresivos podemos ser? Entonces, con Bitcoin, las transacciones son muy simples, como mencioné antes. Cuando inicias una de estas cosas, puedes mover alguna unidad de valor, quizás puede llevar un poco de metadatos, pero en general no verías algo como una máquina virtual o un programa de computadora completo o algo por el estilo. Entonces, cuando Ethereum salió en 2013, trató de cambiar un poco esta noción. Mantuvo el modelo de máquina de estados, mantuvo el modelo de bloques, mantuvo el modelo de consenso, pero dijo: “Tenemos una visión un poco diferente de cómo hacer estas cosas”, y como consecuencia de esa visión, cuando hacemos estas transiciones, tenemos este programa global, y ese programa global puede evolucionar de un estado al siguiente, y tu programa podría estar incluido dentro de ese programa global. Resulta que eso es algo muy interesante, pero súper, súper difícil de gestionar en la práctica para un sistema masivamente distribuido donde esperas que haya mal comportamiento y también esperas que existan malas condiciones de red.
Porque cuando ejecutamos programas, por ejemplo, nos gustaría que se comportaran correctamente, también nos gustaría una alta calidad de servicio y nos gustaría un costo operativo bajo para este tipo de cosas, cosas bastante simples. Así que la expresividad, el costo y la seguridad se han convertido en enormes áreas de investigación abierta. Y muchas de las cosas en las que hemos estado pensando como industria han girado en torno a cuánta acción podemos obtener por transición, por ciclo del sistema, cuán costoso es hacerlo, cuál es la seguridad y también el acceso, ¿quién tiene el derecho de interactuar con esta computadora global? ¿O tienes que pasar por algún tipo de intermediario para hacerlo?
Entonces, cuando miras soluciones de capa dos o cosas que se derivan de Ethereum o Bitcoin, en esencia puedes pensar en ellas como máquinas de estados en capas, donde tienes algo por encima y haces algunas cosas con eso, y luego eventualmente se agrupa, y ese compromiso final lo realiza algún actor, tal vez el mantenedor de la capa dos o el consenso de eso. Es máquinas dentro de máquinas dentro de máquinas dentro de máquinas.
Entonces, una de las áreas de investigación abierta en nuestra instalación de la Universidad de Edimburgo, debido a que es experta en la teoría de lenguajes de programación, es qué tipo de modelos contables tienen más sentido aquí. Tomamos el modelo UTXO y extendimos su lógica, lo llamamos eUTXO, y también exploramos qué se puede hacer con la expresividad de este sistema y qué tipo de formalismos y garantías podemos lograr con dicha expresividad. En otras palabras, cuando observas estos programas, ¿puedes probar propiedades sobre ellos sin necesariamente ejecutarlos? ¿Puedes prever el costo de ese programa antes de ejecutarlo, ya sea en términos de tarifas de transacción u otros factores? Estos son sistemas de recursos escasos, lo que los hace muy divertidos para trabajar. Es como la misión Apolo, donde, a pesar de la limitada potencia computacional del módulo lunar o la cápsula Apolo, lograron pilotar un cohete, aterrizar en la Luna y despegar con esos recursos limitados.
Parte de nuestra investigación, de la cual hemos escrito decenas de artículos, diferentes maneras de verlo. Por ejemplo, Plutus es un lenguaje de programación que desarrollamos, y también realizamos muchos trabajos con métodos formales utilizando un lenguaje llamado Agda. Lo hemos usado para probar muchas propiedades sobre lo que se puede y no se puede hacer, así como para relacionar estas propiedades con conceptos tradicionales de métodos formales. Por ejemplo, podrías ver estos elementos como un cálculo pi o como una lógica temporal, u otros tipos de lógica. Existen formalismos muy interesantes aquí, cuyo propósito es garantizar la seguridad, la previsibilidad y la comprensión de si, al trabajar en múltiples redes con diferentes máquinas de estado, las operaciones se conservan, es decir, si son isomorfas entre sí. Este es uno de los aspectos en los que trabajamos, y algunas personas en este laboratorio, como Mario, podrían hablar de esto en mayor detalle.
Además de la expresividad, hay otras preocupaciones importantes. Por muy buenos que seamos como custodios de esta blockchain, cuantos más usuarios haya y más cosas ocurran, más espacio y recursos necesitará el sistema. El desafío radica en que vivimos en un mundo paralelo, donde suceden muchas cosas al mismo tiempo, pero desafortunadamente estamos usando un recurso replicado. ¿Qué significa eso? En un mundo distribuido paralelo, cuando se agregan más personas, se obtienen más recursos. Imagina que tienes dinero en tu billetera, lo sacas y lo pones en un montón, y a medida que llegan más personas, hay más dinero en la pila. Bueno, en un recurso replicado, comienzas con un montón de dinero, pero a medida que más personas llegan, van tomando dinero del mismo montón, por lo que, a medida que llegan más personas, hay menos dinero para cada uno. Eso es lo que ocurre con la blockchain en resumen: son sistemas replicados. Estos modelos suelen funcionar en el lado del consenso, porque cuanta más gente opere en la red, más seguridad y certeza se obtiene, pero todos están trabajando sobre el mismo conjunto de transacciones que ocurren a lo largo de los diferentes estados del sistema.
¿Qué significa esto? Significa que, por diseño, nuestro modelo de seguridad no puede escalar. Así que otra área de investigación es cómo pasar de un mundo replicado a uno más distribuido y paralelizable. En otras palabras, ¿podemos dividir este sistema de alguna manera, o quizás tenemos una manera diferente de verlo, con una estructura de bloques diferente o diferentes estructuras de datos autenticadas que permitan cierto grado de procesamiento paralelo dentro del sistema, y luego, cuando todo colapse, parecerá desde fuera que es una sola máquina de estado?
Esta es otra área de investigación activa en la que hemos estado trabajando, y tenemos algunos resultados interesantes. Uno de ellos es Ouroboros Leios, donde hacemos exactamente eso, como que hacemos un poquito de trampa, inventamos pilas de sistemas, dejamos que las personas generen bloques a su propio ritmo, y luego tenemos una forma de serializarlos o unirlos de nuevo como si fuera una blockchain tradicional. La ventaja es que se obtiene más rendimiento dentro del sistema, pero surge la pregunta de si esto sacrifica la expresividad o las garantías de seguridad del sistema.
Por ejemplo, ¿podría alguien usar esto para adelantarse a una operación en un DEX o manipular un contrato inteligente? ¿Qué nivel de formalismo se requiere? Por ejemplo, ¿es compatible con el modelo de seguridad canónico que desarrollamos, GKL 15, hace varios años? Leios se publicó este año y resulta que sí, pero es muy complicado, con muchas piezas móviles.
Sin embargo, incluso si tienes un sistema muy paralelizable y con mayor rendimiento, otro de los supuestos de seguridad relacionados con la calidad y el crecimiento de la cadena y la propiedad de prefijo común de GKL es que todos tienen acceso al historial compartido del sistema. El problema es que, si realizamos muchas operaciones, ¿cuán grande será ese historial compartido dentro del sistema? Si ejecuto un ISP y cada persona con un teléfono móvil debe registrar una transacción cada día, o si estamos manejando un sistema de pagos con miles de millones de pagos, o si estamos ejecutando un videojuego donde cada fotograma es una transacción, el tamaño total del sistema podría alcanzar petabytes, exabytes o incluso yottabytes. Es una cantidad de datos inmensa, como la que archiva la NSA en Bluffdale o la cantidad de información que almacena Googleplex, está más allá de todo.
Pero nuestro modelo de seguridad asume que todos tienen una copia completa del nodo, es la suposición Satoshi Nakamoto, lo que es incompatible con la escalabilidad. Por esta razón, los arquitectos de Bitcoin tradicionalmente han tratado de reducir sus casos de uso, mantenerlo conservativo, para mantener el crecimiento de la cadena manejable.
Otro campo muy relacionado es el de la computación verificable, hay grandes personas aquí en Tokio Tech que estudian esto. La idea básica es que si tienes un programa, y el programa tiene una entrada y una salida, la pregunta es: ¿podríamos, sin ejecutar el programa, echar un vistazo anticipado a la salida de tal manera que, cuando alguien me dé la salida, tenga una certeza razonable de que esa salida es correcta? Supongamos que estamos jugando una partida de póker, y esa partida tiene 27 jugadores, dura ocho horas, y se juegan 19,000 manos de póker.
Ahora bien, cuando empezamos esa partida había una condición inicial: las barajas iniciales y las fichas que les dimos a todos. Luego, juegan el juego durante ocho horas y 19,000 manos, y te doy el resultado final del juego. Te doy una lista de los 27 jugadores y sus saldos finales. ¿Cómo sabes que eso es correcto?
La manera ingenua de hacerlo sería empezar con cada mano y revisar una por una hasta llegar al otro lado y decir: “Sí, el resultado que me diste es correcto”. Pero, ¿qué significa eso? Que tienes que volver a reproducir ocho horas de historia y 19,000 partidas de póker. ¿Tiene sentido?
Es el mismo problema con la blockchain cuando miras las cosas secuencialmente. Si comenzamos aquí con nuestra condición inicial, en el mismo inicio de Bitcoin, podrías comenzar el 3 de enero de 2009 con el bloque cero, e ir bloque por bloque hasta llegar a aquí, al 11 de septiembre de 2024, wow, no estoy en Estados Unidos todavía, podés llegar a ese bloque. Pero, para llegar ahí, ¿qué tienes que hacer? Tienes que ejecutar el programa, ejecutar la máquina de estados, y pasar del estado cero al estado uno, al estado dos, y ese recorrido por la cadena, a medida que crece y tiene más cosas , se vuelve más complicado, costoso computacionalmente y difícil. Simplemente, no es viable si tienes un sistema útil que hace miles de millones de cosas.
Entonces, si tengo una computación verificada, tal vez, solo tal vez, haya una forma de que pueda mirar la salida y, porque tengo una técnica que me permite echar un vistazo anticipado a la salida basada en algún conocimiento del juego, si está correctamente estructurado, pueda decir: “Sí, la distribución que me diste es correcta”, sin tener que ejecutar y reproducir todo el juego. Si puedo hacerlo para el póker, ¿no podría hacerlo para una blockchain? ¿No podría hacerlo para una estructura como esa?
Mucha gente está estudiando esta tecnología, y una en la que hemos trabajado aquí y en otros lugares se llama Mithril. Verás cosas como rollups, verás conceptos como snarks recursivos, y docenas de conceptos relacionados donde, si estructuramos la máquina de la manera correcta y estructuramos cómo se realiza el trabajo en el sistema de la forma adecuada, cuando te doy una transacción o una afirmación, podrás verificar que es correcta sin necesariamente tener una copia completa de la blockchain.
¿Qué significa eso? Que puedes reemplazar el concepto de inmutabilidad por el de reconstrucción verificable. La reconstrucción verificable significa que no confías en las personas cuando te dan algo en el sistema; puedes verificar que lo que estás viendo es correcto sin tener que reconstruir toda la historia, solo reconstruyes lo que es relevante para probar lo que estás viendo dentro del sistema.
Este es un área activa de investigación en toda la industria de las criptomonedas, por razones obvias de escalabilidad, para clientes ligeros, como ejecutar una blockchain en tu teléfono móvil. Hay muchos protocolos explorando esto, desde Midnight hasta Mina, Plumo con Celo, entre otros, y algunos trabajos asombrosos con primitivas de vanguardia como los ZK-STARKs de StarkWare, que utilizan una construcción bastante interesante con habilidades recursivas y varias compensaciones.
Así que esta es un área activa de investigación. Cuando pensamos en ello, hay un montón de cosas ocurriendo, es muy fértil, es muy interdisciplinario y podría hablar durante horas y horas. Ya me pasé algunos minutos, así que mencionaré una cosa más, y creo que en realidad es probablemente el componente más importante de todo esto: es que tenés que pagar a las personas, en otras palabras, lo llamamos incentivos. Una de las construcciones mágicas de las blockchains es que estos bloques no son solo pequeños contenedores de transacciones y transiciones de máquinas de estados, también tienen cosas asociadas con ellos. En el caso de Bitcoin, es Bitcoin. Tenemos este concepto de una recompensa de moneda, por lo que quien crea el bloque en realidad es pagado por la red. Esto se llama un esquema de incentivos.
Entonces, una de las cosas interesantes sobre el estudio de estos sistemas es que, además de estudiar la informática de alto nivel, que implica cosas en métodos formales, lenguajes de programación, sistemas distribuidos y criptografía, también estás estudiando economía, en particular, el diseño de mecanismos. El diseño de mecanismos se puede considerar como la Teoría de Juegos inversa. Típicamente, en la Teoría de Juegos, te doy un juego como el ajedrez o cualquier otro, y luego te pregunto, dadas todas estas cosas, cuál es el resultado esperado de este juego. Con el diseño de mecanismos, comienzas con tu resultado esperado y tratas de construir un sistema de incentivos que te permita producir ese resultado.
Por ejemplo, la tokenómica de Bitcoin fue tan exitosa que pasamos de un único minero el 3 de enero de 2009 a un sistema en 2024 con cientos de instalaciones mineras en todo el mundo. Esas instalaciones tienen supercomputadoras gigantes con miles de dispositivos de cómputo, y todos trabajan juntos, lo cual es bastante mágico si lo piensas. Entonces, cada componente de estos sistemas tiene un componente de incentivos incrustado. ¿Quién tiene el incentivo para mantener la blockchain? Si nos movemos a un mundo donde tenemos reconstrucción verificable, eso significa que no estamos almacenando la blockchain completa, la historia del sistema. Entonces, aunque puedo verificar si me das algo que es correcto, ¿quién tiene el incentivo de archivarlo? Además, si el procesamiento de estas transiciones de estado es extremadamente pesado, ¿quién lo hará? Porque necesito una supercomputadora para procesar millones de estas transacciones. ¿Cómo pago por eso? ¿Cuál es un precio justo para pagar por eso? ¿Debería ser un mercado? ¿Debería ser una tarifa fija? ¿Debería ser caridad?
Ves, y todos estos recursos, cuando miras una red ahora mismo, es un servicio gratuito. Cuando transmites bloques, cuando haces comunicación entre pares en el sistema, como BitTorrent, la gente simplemente comparte datos. Pero, ¿y si necesitas una conexión a internet de 10 gigabits y estás compartiendo petabytes de datos cada día para hacer funcionar este sistema? ¿Es eso un servicio gratuito? ¿Es algo que cualquier usuario de internet normal puede tener? No, entonces en realidad los componentes de incentivos de estos sistemas son lo que los hace funcionar en su núcleo. De hecho, escribimos un artículo llamado “Sistemas basados en recursos”, que te animo a leer, y habla sobre estos sistemas desde la perspectiva de agentes económicos que proveen un servicio, casi como un producto SaaS, pero descentralizado en su núcleo y sin curación centralizada.
Hay muchos otros temas que podríamos discutir, como cómo gobernar estos sistemas y actualizarlos. Podríamos hablar de cómo tomar la criptografía clásica, como la computación multipartita o la criptografía poscuántica, o este tipo de cosas, y aplicarlas. Podríamos hablar un poco de hasta qué punto podemos llegar con la computación verificada, hasta el punto en que ya no necesitemos una estructura blockchain. Incluso podríamos hablar sobre el impacto que tendrían las computadoras cuánticas en estos sistemas.
El punto general, sin embargo, es que la investigación en esta industria es tremendamente interdisciplinaria, tanto que a veces tenemos dificultades para saber dónde publicar nuestros artículos. Si escribo un artículo donde hablo sobre transacciones de contratos inteligentes en una blockchain y un protocolo de consenso, pero luego también hago un análisis económico detallado que sería digno de la London School of Economics, y al mismo tiempo estoy hablando sobre teoría de redes, ¿dónde publico eso? ¿Es una conferencia o una revista? Y si es así, ¿cuál sería la candidata obvia?
Esta es una investigación interdisciplinaria, y esto es lo que la hace tan divertida, fascinante y emocionante, y por qué he pasado los últimos 10 años de mi vida involucrado en esta industria. Porque no importa lo que hagamos, siempre hay más por hacer, más en qué pensar. Y Tokyo Tech es parte de esa familia. Durante los últimos ocho años ha estado en la primera línea publicando artículos realmente interesantes, tratando de mezclar lo antiguo con lo nuevo, y han surgido muchas innovaciones asombrosas. Cuando comencé en esta industria, a los criptógrafos no les gustaba mucho. Lo sé porque no hablaban con nosotros, y ahora sé que nos adoran porque nos piden dinero. El mayor honor es cuando te piden que patrocines una de sus conferencias; es como “oh, realmente les caemos bien, ¡esto es genial!”.
Y ahora hemos atraído a grandes luminarias como Adi Shamir, el inventor de RSA), personas como Silvio Micali, quien creó su propia blockchain, Algorand, en MIT, también ganador del Premio Turing, y experto en computación verificada, inventor de la prueba de conocimiento cero, y docenas de otros. Y realmente se ha convertido en un campo muy fértil y sorprendente. Estuve más orgulloso cuando los Estados Unidos tuvieron una competencia para estandarizar la criptografía poscuántica, la próxima generación de criptografía para proteger nuestros secretos y, en muchos casos, los secretos de otras naciones del mundo. Y en realidad, una de las contribuciones a ese conjunto provino de la industria de las criptomonedas. Uno de los algoritmos estandarizados, Falcon, vino del grupo Algorand.
Entonces, hemos pasado de ser marginados a ser una fuerza dominante, académicamente hablando, dentro del campo de la criptografía, y muchas de las innovaciones están surgiendo de nuestra industria. De hecho, hay más criptógrafos en las criptomonedas que en las agencias de inteligencia, lo cual me hace bastante feliz.
Así que, muchas gracias por estar aquí y compartir mi pasión. Aquí hay gente increíble. La próxima persona que subirá es Martin Lera, quien es parte del laboratorio de Tanaka, y ha sido investigador nuestro durante unos ocho años. Lo hemos llevado por todo el mundo, así que es un gran tipo, y puede hablar un poco más en profundidad sobre algunas de las cosas en las que hemos estado trabajando como grupo de investigación. Y otra cosa es que siempre estamos buscando colaboradores. Mencioné que tenemos 168 científicos diferentes. Hacemos cosas de todo tipo, así que si tienes experiencia en sistemas distribuidos, teoría de lenguajes de programación y teoría de juegos, si te interesa el derecho y la política, porque los contratos inteligentes en realidad pueden convertirse en sistemas de resolución de disputas y adjudicar. Si te interesan las dinámicas sociales de estas redes y cómo crecen y evolucionan, hay docenas de diferentes campos interdisciplinarios de estudio. Siempre estamos buscando colaborar y trabajar con personas, así que ofrecemos becas y también estamos buscando investigadores en ciertas áreas clave. Te animaría mucho a que hables con Mario en privado y pases tiempo con él.
Otra cosa es que todo lo que hacemos es de código abierto, sin patentes, sin regalías. Eso es algo muy único en esta industria. La gran mayoría de las personas que publican y trabajan en esta industria lo hacen en el dominio público. Diría que las criptomonedas han impulsado la criptografía en los últimos 10 años probablemente más que en los últimos 25 años de financiación de otros, simplemente por esa naturaleza de dominio público y código abierto. Es algo realmente genial formar parte de un campo donde hay financiamiento disponible, podemos reunir a las personas, resolver problemas muy complejos, y esos problemas se convierten en un bien público que todos pueden usar y del que todos pueden ser parte.
Así que, muchas gracias, y espero tener la oportunidad de hablar nuevamente con todos ustedes. Creo que estoy pasando del tiempo, saludos.