Muévete Géminis: cómo Sui y Aptos desafían el panorama de las cadenas de bloques

Introducciónducción

Recientemente, el mercado se ha enfriado considerablemente, lo que ha llevado incluso a los veteranos del sector a cuestionarse su finalidad. Me gustaría compartir algunas de mis reflexiones personales: Creo que muchas de las grandes visiones del pasado fueron «refutadas» porque nunca fueron lógicamente coherentes desde el principio.

Las Dapps no financieras a menudo intentaban enfatizar la descentralización para encubrir el hecho de que los productos en sí no eran lo suficientemente buenos. La realidad es que me piden que desconfíe de Google, Twitter y YouTube y que, en cambio, crea que sus monederos multifirma y sus configuraciones de servidor único son seguros.

Muchas visiones no fueron refutadas, pero nunca se pusieron verdaderamente a prueba. Sigo creyendo que, aunque la mayoría de las visiones no sean grandiosas, tienen sentido: sólo necesitan una base sólida que las sustente. Al final, se puede ofrecer al menos una de descentralización o experiencia de usuario comparable a la Web2.

Al igual que TON y Solana fueron infravalorados en su día, pero ahora están alcanzando a sus predecesores en muchos aspectos. Las cadenas públicas que soportan las aplicaciones necesitan innovación, que en cada ciclo impulsa el progreso de la industria. Así que hoy exploraremos un tipo de cadena pública que durante mucho tiempo se ha pasado por alto: el ecosistema Move.

1. Mueva

El lenguaje de programación Move se creó originalmente para el proyecto abandonado de Meta, Diem (inicialmente llamado Libra), que pretendía desarrollar una stablecoin más estable y regulada como base de su visión metaversa.

Sin embargo, el proyecto se enfrentó a una fuerte oposición y a continuas presiones de los reguladores mundiales. Estos temían que la escala de Diem y la vasta base de usuarios de Facebook pudieran amenazar la estabilidad financiera, la política monetaria y la privacidad de los datos. El liderazgo de la administración Biden en la aplicación de presiones obligó finalmente a Meta a abandonar el proyecto Diem.

Afortunadamente, el núcleo de Diem no fue descartado. Diferentes facciones escindidas del equipo original continuaron explorando y desarrollando Move, que ha evolucionado hasta convertirse en los gemelos Move que conocemos hoy: Sui y Aptos. Además, otros proyectos como Linera (una blockchain basada en Rust e inspirada en Move) y el recientemente promocionado Movement aún están en pañales.

¿Por qué ha sido tan significativo el impacto residual de un proyecto interrumpido? Move, como lenguaje de programación de blockchain desarrollado por una empresa líder de Web2, tiene una base sólida. Se diseñó con el objetivo de abordar los problemas de rendimiento y seguridad que prevalecen en los lenguajes de blockchain existentes, especialmente Solidity. Sus objetivos de diseño eran crear un sistema de tipos adaptado a la gestión de activos y el control de acceso. Resumo los puntos clave de la siguiente manera:

  • Seguridad: El diseño de Move prioriza la seguridad, utilizando comprobaciones estáticas de tipos y gestión de recursos para prevenir vulnerabilidades comunes como errores de desbordamiento y ataques de reentrada. En comparación con otras máquinas virtuales de lenguajes, Move soporta varias características de seguridad, como ilustra la siguiente comparación de Nansen.
    .
  • Composibilidad: Move admite modularidad y componibilidad, lo que permite a los desarrolladores crear y combinar fácilmente diferentes contratos inteligentes para crear aplicaciones más complejas.
  • Rendimiento: La máquina virtual de Move está optimizada (admite procesamiento paralelo, gestión de memoria, optimizaciones del compilador) para ejecutar contratos inteligentes de forma eficiente, mejorando la velocidad y el rendimiento de las transacciones.

En un mercado saturado de cadenas EVM modulares, Move representa un valiente intento de hacer algo diferente. Es posible que haya encontrado afirmaciones similares en las introducciones de muchos proyectos de cadenas públicas, pero le sugiero que lo experimente de primera mano para entender realmente estos conceptos.

2. Sui

2.1 Arquitectura

Como uno de los gemelos Move, Sui se enfrentó a críticas al principio por problemas relacionados con los lanzamientos aéreos y los mecanismos de liberación de fichas. Sin embargo, dejando a un lado estas cuestiones y centrándonos únicamente en el proyecto en sí, Sui ha demostrado excelencia tanto en rendimiento como en experiencia de usuario, especialmente en el sector de los juegos.

Este éxito está estrechamente ligado a su arquitectura, que se mejoró específicamente para su adopción generalizada. He aquí un breve resumen de las innovaciones arquitectónicas de Sui:

  1. Modelo de almacenamiento de objetos: Este componente es el núcleo de las mejoras de Sui para Move. El modelo de almacenamiento de objetos almacena los datos como objetos individuales, cada uno con un identificador único. A diferencia de los sistemas de bases de datos tradicionales, el modelo de almacenamiento de objetos carece de una estructura de datos fija y puede almacenar diversos tipos de datos, como texto, imágenes, vídeos y audio. Este modelo permite la ejecución en paralelo y el escalado horizontal (añadir nodos para ampliar la capacidad de almacenamiento). El diseño de Sui gira en torno a este modelo.
  2. Ordenación causal: Garantiza que las transacciones se ejecuten en un orden que respete las relaciones causales, evitando conflictos e incoherencias de datos. Esto permite a Sui gestionar grandes volúmenes de transacciones concurrentes manteniendo la coherencia de los datos.
  3. Motores de consenso Narwhal y Bullshark: Sui utiliza Narwhal y Bullshark como motores de consenso. Narwhal se encarga de ordenar y validar las transacciones manteniendo un conjunto local de transacciones, clasificándolas en función de las relaciones causales y transmitiéndolas. Bullshark, tras recibir la lista de transacciones ordenadas de Narwhal, vota la lista utilizando el consenso Byzantine Fault Tolerance (BFT) para garantizar que todos los nodos están de acuerdo con el orden de las transacciones.
  4. Sui Move: Sui amplía el lenguaje Move añadiendo nuevas funciones, como la compatibilidad con las NFT, la gestión de activos y el almacenamiento de datos.
  5. Marco Sui: Sui proporciona un marco completo para ayudar a los desarrolladores a crear y desplegar aplicaciones rápidamente, incluyendo herramientas y bibliotecas como Sui Wallet, Sui SDK y Sui CLI.

La arquitectura de Sui le permite procesar grandes volúmenes de transacciones concurrentes manteniendo una alta velocidad, bajas comisiones y seguridad. El lenguaje Move y el marco Sui también proporcionan a los desarrolladores potentes herramientas para crear aplicaciones seguras, escalables y fáciles de usar.

2.2 Consenso

La cadena de bloques Sui utiliza un mecanismo de consenso llamado Mysticeti, un consenso bizantino tolerante a fallos (BFT) diseñado para una baja latencia y un alto rendimiento.

Mysticeti permite que varios validadores propongan bloques en paralelo, aprovechando al máximo el ancho de banda de la red y ofreciendo resistencia a la censura. Además, el protocolo solo requiere tres rondas de mensajes para finalizar un bloque del grafo acíclico dirigido (DAG), igualando el mínimo teórico al igual que pBFT.

Las reglas de presentación permiten la votación en paralelo y la certificación de líderes de bloque, lo que reduce aún más la latencia media y de cola. Las reglas de presentación también toleran líderes no disponibles sin aumentar significativamente la latencia.

Mysticeti estuvo funcionando en la red de pruebas durante tres meses antes del lanzamiento de la red principal de Sui, mostrando resultados significativos como una reducción del 80% en la latencia. Ahora, la red Sui puede procesar decenas de miles de transacciones por segundo, con una latencia de extremo a extremo muy por debajo de un segundo.

La cadena de bloques Sui también emplea un tipo específico de consenso Proof-of-Stake (PoS) llamado Proof-of-Stake Delegado (DPoS). Cuando se produce una transacción que implica objetos compartidos (denominadas transacciones complejas), Sui utiliza los motores de consenso Narwhal y Bullshark antes mencionados para ordenar las transacciones. En comparación con otros mecanismos de consenso BFT, las ventajas e inconvenientes de Sui pueden resumirse en seis puntos:

Ventajas:

  1. Baja latencia y alto rendimiento: El protocolo Mysticeti reduce significativamente la latencia del consenso y aumenta el rendimiento de la red mediante propuestas de bloques paralelos y un flujo de mensajes optimizado, lo que permite a Sui gestionar decenas de miles de transacciones por segundo con una latencia de extremo a extremo muy por debajo de un segundo.
  2. Resistencia a la censura: El protocolo Mysticeti permite que varios validadores propongan bloques en paralelo, lo que mejora la resistencia de la red a la censura.
  3. Tolerancia al fracaso del líder: Las reglas de sumisión toleran líderes no disponibles sin aumentar significativamente la latencia, eligiendo automáticamente un nuevo líder para tomar el relevo cuando el nodo líder falla.

Desventajas:

  1. Complejidad: El diseño del protocolo Mysticeti es relativamente complejo y requiere un conocimiento técnico más profundo para comprender plenamente sus mecanismos operativos.
  2. Seguridad: Aunque el protocolo Mysticeti funcionó bien en la red de pruebas, su seguridad aún debe ser validada en aplicaciones reales.
  3. Escalabilidad: Es necesario seguir observando la escalabilidad del protocolo Mysticeti para garantizar que pueda adaptarse al futuro crecimiento del tamaño de la red y del volumen de transacciones.

2.3 Cuentas abstractas

El modelo de cuenta abstracta de Sui (Account Abstraction) es un mecanismo que permite a los usuarios gestionar sus cuentas y transacciones de forma más sencilla y segura mediante la abstracción de la lógica de cuentas y transacciones del protocolo blockchain subyacente, logrando un mayor nivel de gestión de cuentas y procesamiento de transacciones.

En el modelo de cuenta abstracta de Sui, las cuentas ya no son simples pares de clave pública y privada, sino objetos con atributos y comportamientos más ricos. Cada cuenta tiene un identificador único, llamado ID de cuenta, que está asociado al par de claves pública y privada de la cuenta.

El modelo de cuenta abstracta de Sui incluye los siguientes componentes clave:

  • Objeto de la cuenta: Es la unidad fundamental de las cuentas en Sui. Cada objeto de cuenta tiene un ID de cuenta único y contiene los atributos y comportamientos de la cuenta.
  • Datos de la cuenta: Componente central del objeto cuenta, que contiene información básica sobre la cuenta, como el ID de la cuenta y el par de claves pública y privada.
  • Contexto de la transacción: La unidad básica de las transacciones en Sui, que contiene información relacionada con la transacción, como el ID de la transacción, el ID de la cuenta y los datos de la transacción.
  • Lógica de cuentas: La colección de comportamientos y reglas de cuentas en Sui, definiendo cómo las cuentas manejan las transacciones y gestionan su estado.

El proceso de gestión de transacciones en el modelo de cuenta abstracta de Sui implica los siguientes pasos:

  1. Creación de transacciones: Los usuarios crean una transacción y la envían a la red Sui.
  2. Validación de transacciones: La red Sui valida la validez e integridad de la transacción.
  3. Búsqueda de cuentas: La red Sui encuentra el objeto de cuenta correspondiente basándose en el ID de cuenta de la transacción.
  4. Ejecución de la lógica contable: La red Sui ejecuta la lógica de la cuenta para procesar la transacción y actualizar el estado de la cuenta.
  5. Confirmación de la transacción: La red Sui confirma el resultado de la transacción y lo escribe en la blockchain.

En términos sencillos, el modelo de cuenta abstracta de Sui es un mecanismo innovador que simplifica la gestión de cuentas y el procesamiento de transacciones, haciendo que las aplicaciones sean más parecidas a las aplicaciones.

2.4 Juegos de azar

Para que una cadena de bloques destaque, primero debe construir una base sólida. Antes me he referido al ecosistema Move como un experimento audaz por dos razones principales.

En primer lugar, en una era en la que el concepto de modularización se está generalizando, los ecosistemas nativos Move (concretamente los gemelos Move) representan el último intento de soluciones de capa 1, yendo en contra de la tendencia actual.

Sin embargo, el reciente auge de varias cadenas heterogéneas puede estar demostrando que la modularización no es la única respuesta.

En segundo lugar, reconstruir una cadena de bloques utilizando un nuevo lenguaje de programación es similar a intentar crear un nuevo sistema operativo que desafíe a iOS y Android en el mercado actual de teléfonos inteligentes, un camino inevitablemente lleno de retos.

Que el ecosistema Move brille como Solana en los próximos años depende en gran medida de la dirección que elija. La respuesta de Sui a este reto es el juego.

El juego es una de las principales puertas de entrada a la Web3, pero la mayoría de las cadenas de bloques no soportan bien los juegos. Esto se debe a que la tecnología blockchain se diseñó originalmente en torno a aplicaciones financieras, y su arquitectura descentralizada tiene inherentemente un menor rendimiento, lo que la hace poco adecuada para los juegos.

Sui, sin embargo, es diferente. Su modelo es adecuado tanto para aplicaciones DeFi como para aplicaciones no financieras, incluidos los juegos. Como ya se ha dicho, en Sui todo es un objeto. En Sui, los objetos pueden poseer otros objetos, lo que hace posible modelar jerarquías de activos complejas típicas en juegos o aplicaciones.

Imagina que juegas a un juego en el que un héroe tiene un inventario, y ese inventario contiene otros activos digitales que pertenecen al personaje. Sui puede modelar estas jerarquías de datos de formas que otras cadenas de bloques no pueden. Esto ofrece a los desarrolladores la oportunidad de crear aplicaciones sin tener que sortear las limitaciones inherentes a la cadena.

Además, Sui colabora activamente con gigantes tradicionales de la Web2. El año pasado, Sui se asoció con tres de los cuatro grandes gigantes surcoreanos del juego (Netmarble, NHN y NCSoft). Este año, Sui se ha asociado con TikTok para desarrollar juegos de blockchain y proyectos SocialFi, con lo que los gigantes tradicionales entran en el espacio Web3.

3. Aptos

Aptos, otra blockchain de Capa 1 basada en el lenguaje Move, también apuesta por construir una infraestructura Web3 escalable y de alto rendimiento. Su diseño arquitectónico comparte muchas similitudes con Sui, pero también introduce algunas características únicas.

3.1 Arquitectura

  1. Diseño modular: Aptos adopta una arquitectura modular que permite a los desarrolladores desarrollar y actualizar de forma independiente distintos módulos, lo que aumenta la velocidad y la flexibilidad del desarrollo.
  2. Motor de ejecución paralela (Block-STM): A diferencia de otras cadenas de bloques que requieren dependencias de datos declaradas previamente, el motor de ejecución paralela de Aptos puede procesar transacciones en paralelo sin conocimiento previo de la ubicación de los datos, aumentando así el rendimiento y reduciendo la latencia.
  3. Procesamiento de transacciones en cadena: Aptos divide el procesamiento de transacciones en varias etapas, como la propagación, la ordenación de metadatos y el almacenamiento por lotes, ejecutando estas etapas en paralelo mediante pipelining para maximizar el rendimiento y minimizar la latencia.
  4. Mueve el lenguaje de programación: Aptos utiliza el lenguaje de programación Move, centrándose en el perfeccionamiento más que en la innovación en comparación con Sui. Por ejemplo, estandariza el lenguaje, introduce un soporte de funciones más robusto y mejora las capacidades de personalización.
  5. Sincronización flexible de estados: Permite a los nodos elegir diferentes estrategias de sincronización de estados, como sincronizar el historial completo o sólo el estado más reciente, lo que mejora la flexibilidad de los nodos.
  6. Mecanismo de consenso AptosBFT: AptosBFT es un mecanismo de consenso bizantino de tolerancia a fallos utilizado por Aptos. Optimiza la comunicación y la sincronización entre los validadores para mejorar el rendimiento y reducir la latencia. Comparado con Sui, que puede verse como una versión mejorada de DiemBFT, AptosBFT ha hecho ciertos avances en eficiencia y recuperación de fallos, por lo que se mencionará brevemente aquí.

La arquitectura de Aptos le permite gestionar un gran número de transacciones simultáneas manteniendo al mismo tiempo una alta velocidad, bajas comisiones y seguridad. Además, el lenguaje Move y el marco Aptos proporcionan a los desarrolladores potentes herramientas para crear aplicaciones seguras, escalables y fáciles de usar.

3.2 Bloque-STM

Profundicemos en la principal innovación de Aptos, el motor de ejecución paralela Block-STM:

Principios básicos de Block-STM:

  1. Ejecución secuencial predefinida: Block-STM se basa en una secuencia predefinida de transacciones dentro de un bloque. Todas las transacciones deben ejecutarse en este orden para garantizar la coherencia del estado final.
  2. Control optimista de la concurrencia: Block-STM ejecuta de forma optimista las transacciones en paralelo, asumiendo que no se producirán conflictos. Este método de control se basa en la suposición de que los conflictos son raros, lo que permite a las transacciones acceder y modificar datos sin bloqueo. La hipótesis es que la probabilidad de conflictos simultáneos es baja, por lo que las modificaciones pueden continuar, con comprobaciones de conflictos antes de la confirmación final.
  3. Estructura de datos multiversión: Para soportar un control optimista de la concurrencia, Block-STM utiliza una estructura de datos multiversión para almacenar los datos. Cada operación de escritura crea una nueva versión de datos, mientras que las operaciones de lectura acceden a la versión de datos correspondiente.
  4. Validación y reintento: Tras ejecutar una transacción, Block-STM comprueba si las versiones de los datos que ha leído siguen siendo válidas. Si la validación falla, indicando un conflicto, la transacción se marca como no válida y se vuelve a ejecutar.
  5. Programación colaborativa: Block-STM emplea un programador colaborativo para coordinar las tareas de ejecución y validación de varios hilos, maximizando el paralelismo.

Flujo de trabajo Block-STM:

  1. Agrupación de transacciones: Agrupar transacciones dentro de un bloque y asignarlas a diferentes hilos para su ejecución en paralelo.
  2. Ejecución optimista: Cada hilo ejecuta de forma optimista las transacciones que tiene asignadas y registra el conjunto de lectura/escritura de cada transacción.
  3. Validación: Una vez que un hilo completa una transacción, verifica si las versiones de datos de su conjunto de lectura siguen siendo válidas.
  4. Reintentar: Si la validación falla, indicando un conflicto, la transacción se marca como no válida y se vuelve a ejecutar.
  5. Comprométete: Una vez que todas las transacciones superan la validación, sus resultados se escriben en el estado de la cadena de bloques, completando la confirmación de la transacción.

Ventajas de Block-STM:

  1. Alto rendimiento: Aprovechando el control optimista de la concurrencia y la programación colaborativa, Block-STM utiliza plenamente los procesadores multinúcleo, logrando un alto rendimiento.
  2. Baja latencia: Dado que las transacciones pueden ejecutarse en paralelo, Block-STM reduce significativamente el tiempo de confirmación de las transacciones.
  3. Seguridad: La ejecución secuencial predefinida y los mecanismos de validación de Block-STM garantizan la coherencia y la seguridad del estado final.

En resumen, Block-STM es un eficiente motor de ejecución de transacciones en paralelo que combina un control optimista de la concurrencia, estructuras de datos multiversión y programación colaborativa para maximizar el rendimiento del blockchain al tiempo que garantiza la seguridad y la corrección.

3.3 Abstracción de cuentas

A diferencia del enfoque más directo de Sui para la abstracción de cuentas, Aptos admite una dimensión de abstracción más limitada y carece de normas predefinidas específicas. Sus capacidades de abstracción de cuentas se manifiestan principalmente en las siguientes áreas:

  1. Gestión modular de cuentas: Utiliza módulos Move para definir y gestionar cuentas, permitiendo a los desarrolladores crear módulos personalizados para diferentes tipos de cuentas y funcionalidades.
  2. Gestión flexible de claves: Permite a los usuarios utilizar diferentes claves para diferentes operaciones de cuenta, como utilizar una clave para la firma de transacciones y otra para la gestión de cuentas.
  3. Verificación programable de transacciones: Los desarrolladores pueden definir una lógica de verificación de transacciones personalizada en los módulos Move, como la multifirma o los límites, para satisfacer diferentes escenarios de aplicación.

3.4 Asociación con Microsoft

En comparación con Sui, que se centra más en el desarrollo de juegos, Aptos no tiene un objetivo de desarrollo específico. Su lema es ser la blockchain más adecuada para la producción.

Un aspecto notable es la colaboración en curso de Aptos con Microsoft, con el objetivo de integrar la tecnología de IA de Microsoft en blockchain. Su primer producto colaborativo, Aptos Assistant, un asistente generativo de IA basado en la red de Aptos, ya está disponible en el sitio web oficial. En los próximos meses se anunciarán otros productos de IA.

4. El ecosistema Move

Aunque Sui ha obtenido buenos resultados recientemente, el ecosistema Move aún necesita tiempo para madurar en comparación con las cadenas basadas en EVM, Solana, Ton y otras cadenas heterogéneas. A pesar de que Sui y Aptos están en el candelero y están realizando avances tecnológicos, la escala y la actividad globales del ecosistema Move aún no están a la altura de otros ecosistemas maduros.

El número de desarrolladores, los tipos de aplicaciones y la base de usuarios aún necesitan tiempo para crecer. En cuanto a colaboraciones y operaciones externas, tanto Sui como Aptos muestran una fuerte mentalidad Web2, carente de parte de la esencia Web3, lo que ha mantenido sus proyectos relativamente discretos dentro del sector.

Sin embargo, teniendo en cuenta el potencial del ecosistema Move, resulta muy prometedor. Algunos desarrolladores ya están reconociendo el valor futuro de Move. Como se menciona en el prefacio, ya hay proyectos que incorporan Move a las soluciones de Ethereum Capa 2. En el futuro, el ecosistema Move puede brillar en el espacio de la Capa 2 de ETH. La atención se centra actualmente en cómo promover aún más el ecosistema Move.