¿Qué es MINA Protocol?

T
Tiempo de lectura: 7 minutos

En el ecosistema blockchain se escuchan variadas discusiones en torno al futuro y sobre que puntos deben focalizar sus esfuerzos los desarrolladores. Sin embargo, la mayoría de los cañones apuntan a las soluciones de escalabilidad.

El panorama actual, en este sentido, es algo desalentador en comparación al de la mitad de este año. Ethereum 2.0 pospuesto, mínimo otros 6 meses y Cardano sin contratos inteligentes que se puedan usar a la vista, son solo algunos ejemplos.

Pero no todo es decepción en el mundo crypto. Ciertos proyectos nuevos se aventuran a enfrentar los desafíos irresueltos. MINA protocol, es uno de estos nuevos proyectos, pero haciendo foco en un punto, hasta el momento no tan central en la escena blockchain, el peso de la red.

Descubramos juntos qué es MINA Protocol y qué tiene para ofrecernos.

MINA Protocol

MINA Protocol es una blockchain, una “layer 1” o cadena principal, que se presenta como la más “liviana” del mercado, con un peso informático de apenas 22 kilobytes. Así es, leíste bien, una blockchain cuya infraestructura le permite tener un peso equivalente al de un par de tweets.

La tecnología detrás de una blockchain de estas características no podía ser otra que zk-Snarks. Gracias a esta famosa solución de escalabilidad, además de ser la blockchain más liviana del ecosistema, MINA resulta ser escalable, rápidamente verificable por cualquier individuo y realmente descentralizada, permitiendo a cada usuario actuar como un nodo completo de la red.

Tras este breve resumen de MINA Protocol, adentrémonos en comprender cómo logra ser la blockchain más liviana hasta la fecha.

¿Cómo logra MINA Protocol un peso tan ligero?

Para entender como el equipo que conforma O(1) Labs, los creadores de MINA Protocol, logró lanzar en producción la blockchain más liviana del ecosistema, primero es necesario entender de que trata la solución tecnológica de zk-Snarks. Intentemos analizar, brevemente, la tecnología detrás de MINA Protocol.

Zero-Knowledge Proofs

Cuando nos encontramos con las letras ZK, debemos saber que estamos frente a una solución que planea revolucionar el mundo crypto. ZK viene de “Zero-Knowledge Proof”.

Este concepto o prueba no nació en el ecosistema blockchain, si no que se trata de un protocolo criptográfico que podría resumirse de la siguiente manera:

  • Se conoce como Zero-Knowledge Proof a un protocolo que establece un método criptográfico por el cual una de las partes puede probar a la otra que una declaración es cierta sin revelar más que la veracidad de su declaración.

Ahora, bajemos este concepto a la tierra con un ejemplo clásico.

Aplicando ZK en la vida real

Supongamos que soy dueño de un libro clásico como “¿Dónde está Wally?”.

Entonces, descubro a Wally y quiero demostrárselo a un amigo. Quiero probar que sé dónde está Wally, pero sin revelar a mi amigo dónde está para que luego él deba buscarlo. ¿Cómo puedo lograrlo? Con un protocolo de Zero-Knowledge Proof.

Entonces, tomo un periódico que supere ampliamente el tamaño del libro de Wally. Recorto en el periódico el tamaño preciso de Wally, poso el periódico sobre el libro, dejando ver a Wally en el medio de esta hoja.

¿Qué logré? Demostrarle a mi amigo que sé dónde Wally está, sin demostrarle el lugar exacto en el que Wally se encuentra. Esto es igual a decir, que demostré la veracidad de mi declaración, “sé dónde Wally se encuentra”, sin demostrar más que la veracidad de mi declaración.

Ahora sí, cerremos este paréntesis lúdico, y habiendo comprendido de que va este protocolo de Zero-Knowledge Proof, volvamos a MINA Protocol, el tema principal del artículo.

¿Qué es Mina Protocol?

El funcionamiento detrás de MINA Protocol

Tras esta breve introducción didáctica a la tecnología que potencia la liviandad de la blockchain de MINA, podemos pasar a entender como es que hacen uso de esta tecnología para lograr el objetivo deseado por este ambicioso equipo.

ZK-Snarks en MINA Protocol

La descomposición de ZK-Snarks, nos daría la siguiente frase “Zero-Knowledge Succint Non-Interactive Argument of Knowledge”. Que no cunda el pánico, que bien podemos explicar este intrincado nombre, de manera simple.

Justamente, simpleza y liviandad a la hora de trasmitir datos son las prestaciones que los protocolos de ZK son capaces de dotarle a un blockchain. Imaginemos una red como la de Bitcoin, que superaba los 300gb de peso en septiembre del 2020. Este peso informático, se debe a la acumulación de datos contenidos en cada bloque encadenado uno detrás de otro. Lo que vuelve una tarea pesada y larga verificar la red de Bitcoin.

En MINA Protocol, el funcionamiento es otro. Gracias a la tecnología de ZK-Snarks, no es necesario verificar la blockchain completa, bloque por bloque, sino que luego de cada bloque se toma un “snapshot” o foto. ¿Y qué es lo que sucede tras esta foto?

El estado de toda la blockchain de MINA Prtocol es capturado y transmitido en un «snapshot» de 22kb. Un tamaño tan ínfimo, se debe a que la tecnología ZK permite comprimir cada bloque, con todas sus transacciones dentro a un tamaño mínimo. Aplicando lo aprendido en el párrafo anterior, no hace falta transmitir el bloque o la transacción entera, si no una simple prueba de que el bloque y todas sus transacciones son válidas.

Ahora, este snapshot es transmitido al resto de la cadena. Al momento de creación de un nuevo bloque, se repite esta última acción, tomando una nueva “foto” del estado de la red, que contiene la “foto” o el estado anterior.
Esta nueva “foto” pasará a ser el fondo del siguiente “snapshot” y así continuará sucediendo sucesivamente.

De esta manera, la blockchain, sin importar la cantidad de bloques que la formen, siempre pesará 22kb.

Excelente, pero ¿cuáles son las consecuencias de tener una red tan liviana? Precisamente, alcanzar los objetivos originarios de MINA Protocol.

Los objetivos de MINA Protocol

Sin dudas, un desarrollo tecnológico de semejante magnitud, tiene que estar motivado por importantes objetivos. MINA Protocol no nos defrauda a la hora de fijar los suyos.

Sintetizaré uno a uno estos objetivos, que a mi parecer son tres, para facilitar la compresión y la magnitud propuesta por el equipo detrás de esta blockchain.

Descentralización

Punto clave en el desarrollo de esta blockchain. MINA busca llevar la descentralización a nuevos niveles. Por esta razón, centró su método de consenso en el elegido por una de las redes que presenta una de los mayores, si no el mayor, nivel de descentralización: Cardano.

Pero, dejemos para más adelante el consenso. Es momento de mencionar como la liviandad de la red permite mayor descentralización. Muy simple, cualquier usuario puede conectarse a esta red y verificarla en cuestión de segundos, desde casi cualquier dispositivo y actuar como un nodo completo.

La ecuación es simple, menor requerimiento de hardware es igual a mayor cantidad de nodos verificando la red, lo que potencia el nivel de descentralización.

Seguridad

Aquí es dónde las bondades de un protocolo de ZK se lucen. Más allá de la liviandad en cuanto a peso informático, este protocolo ofrece una seguridad extra, fácilmente comprobable y difícil de transgredir. 

Es por eso, que más allá de encontrarnos en una blockchain con un método de consenso de Proof of Stake, conceptos como “slash” o multa por mal comportamiento, no tienen lugar en MINA Protocol.

Para comprender a fondo la seguridad de esta red, encontrarás más detalles cuando analice su método de consenso a la hora de crear nuevos bloques.

Escalabilidad

Sin dudas, las características anteriores desembocan en este gran “feature” de la blockchain de MINA. En términos de escalabilidad para esta red, contando con infinidad de nodos completos que requieren de tan escasos recursos informáticos para participar, es muy fácil alcanzar miles de transacciones por segundos.

Los límites en este campo, se encuentran listos para ser testeados.

¿Qué es Mina Protocol?

MINA Protocol y su particular consenso

Comenté en el apartado anterior que, esta blockchain, eligió como método para crear sus bloques el Proof of StakeA la hora de la creación de nuevos bloques, contando con infinidad de nodos, la posibilidad de una bifurcación en la red es un peligro real. Con el objetivo de evitar este gran problema, se basaron en Ouroboros, el consenso de la red de Cardano, y aplicaron su propios criterios para dar con el consenso llamado Ouroboros Samisika.

En este protocolo, cada época dura 14 días y la distribución de las posibilidades para minar un nuevo bloque, se toman de acuerdo a 2 épocas de anterioridad teniendo en cuenta la cantidad MINA stakeada que poseía cada validador.

Es destacable mencionar que podemos hacer staking de nuestras propias MINA para ser un validador, no existe un requísito mínimo, o bien delegarlas a un validador que ya se encuentre en funciones.

¿Cómo se decide quién validará el próximo bloque?

Por supuesto, la posibilidad de validar un bloque, se encuentra relacionada a la cantidad de stake en la blockchain. Pero, ¿cómo lograr una aleatoriedad tal, que elimine o minice la posibilidad de ataques a la red?

En MINA Protocol lo logran mediante el método denominado VRF o Función Aleatoria Verificable. Se trata de una función aleatoria que necesita una clave privada para ejecutarse y que puede verificarse con una clave pública. Esta función, determina quién es el próximo validador, quién tomará noción de su rol, al momento de validar el bloque. De este modo, la seguridad de la red está garantizada.

¿Qué diferencia a Ouroboros Samisika de Ouroboros?

En términos simples, podemos decir que la diferencia radica en como cada consenso lidia con las bifurcaciones que se dan en la red. Una bifurcación, se da cuando dos bloques distintos son validados en el mismo momento, correlacionándose ambos sobre idéntico bloque anterior.

Esto da como resultado, dos cadenas diferentes. En la red de Cardano, como en tantas otras, la resolución es simple, se elige la cadena más larga. Pero, esto en MINA no es posible, ya que no contamos con un historial completo de la red.

La solución generada con el consenso Ouroboros Samisika, se centra en la una función que comprueba la densidad mínima de ambas cadenas. Es lógico interpretar, aquella con mayor densidad, será la cadena más larga y sobre la cuál se añadirán los subsiguientes bloques.

¿Quienes participan de este consenso?

Previo a finalizar este artículo, es necesario destacar que esta red cuenta con dos participantes, sumamente importantes con roles primordiales para que la tecnología ZK-Snarks brinde todas sus bondades a esta red.

En la blockchain de MINA tenemos dos actores principales:

  1. Por un lado encontramos, a los productores de bloques. Poseen dos roles, uno es obviamente el de crear bloques y el otro es desarrollar las pruebas SNARK de la cadena de bloques junto a estos bloques.
  2. En segundo plano, encontramos a los trabajadores SNARK. Estos dedicados participantes de la red son quienes desarrollan las pruebas zk-SNARK de las transacciones para lograr comprimirlas y  presentarlas en el famoso “snapshot” de la blockchain

La conjunción de ambas tareas, desemboca en una red ¡de 22kb de tamaño!.

Futuro de MINA Protocol

Me es imposible cerrar este artículo, sin un pequeño disclaimer. He hecho homenaje al tamaño de esta blockchain al comprimir semejante cantidad de información en un artículo tan breve.

MINA Protocol es un proyecto fascinante desde el punto de vista tecnológico y también filosófico, aspecto al que no logré arribar en esta nota.

En lugar de focalizar sus esfuerzos en la escalabilidad de una una blockchain existente, su salida al mercado es mediante una layer 1 escalable, segura y con un gran nivel de descentralización.

Su estructura le permite soportar plataformas multi-propósito. Por lo tanto, el futuro de esta red, está atado a los deseos de aquellos que desplieguen sus aplicaciones en ella.


Deja un comentario
La dirección de correo electrónico no será publicada. Los campos obligatorios están marcados *