La cadena de bloques Sui ha surgido como un novedoso protocolo de capa 1 (L1), que incorpora tecnologías avanzadas para abordar las compensaciones comunes de la capa 1. Cointelegraph Research desvela los detalles de este recién llegado al espacio blockchain.

Sui usa el Mover lenguaje de programación, que fue diseñado con un enfoque en la representación de activos y el control de acceso. Este artículo examina el modelo de almacenamiento de datos centrado en objetos de Sui, sus implicaciones para el procesamiento de transacciones y sus ventajas potenciales sobre los paradigmas tradicionales basados ​​en cuentas.

El paradigma orientado a objetos de la SUI

Sui se inspira en gran medida en la cadena de bloques Diem, particularmente en su uso del lenguaje de programación Move para contratos inteligentes. Move fue diseñado con un sistema de tipos diseñado específicamente para la gestión de activos y la aplicación del control de acceso. Sui Move se basa en esta base con un modelo de almacenamiento de datos centrado en objetos que utiliza objetos en lugar de cuentas como primitivos.

A diferencia del modelo de cuenta tradicionaldonde las transacciones cambian los saldos, o el modelo UTXOdonde las transacciones tienen entradas y salidas simples, Modelo de objetos de Sui trata los activos (así como los contratos inteligentes) como objetos complejos. Las transacciones en Sui toman objetos como entradas y transforman estas entradas en objetos de salida. Cada objeto registra el hash de la última transacción que lo produjo. Este enfoque es conceptualmente similar al modelo UTXO, pero más general y poderoso. A continuación, se puede ver una comparación de los modelos.

El uso de la lógica lineal por parte de Move está conectado al modelo orientado a objetos y facilita el desarrollo de software seguro. Lógica lineal, A veces se le denomina lógica de recursos.garantiza que los recursos que representan activos digitales no se puedan duplicar ni destruir inadvertidamente. Cuando una transacción Cuando se ejecuta una transacción que involucra un activo, la semántica de Sui Move garantiza que el estado del activo se actualice de una manera que refleje el resultado de la transacción, consumiendo el activo en su estado anterior y produciéndolo en su nuevo estado.

Los objetos en Sui también pueden tener controles de acceso y permisos definidosque mejora la seguridad y el control sobre el uso de los activos después de una transacción. Esto mitiga vulnerabilidades comunes en las cadenas basadas en cuentas, que permiten ataques de reentrada. en un ataque de reentradauna función realiza una llamada externa a otro contrato antes de actualizar su propio estado, lo que permite a los atacantes ejecutar repetidamente acciones que solo deberían ocurrir una vez.

Esto puede dar lugar a cambios no autorizados en el estado del contrato, como por ejemplo retirar más fondos de los que deberían estar permitidos. transferencias de propiedad son explícitos y atómicos en Sui, este tipo de error no puede ocurrir. El sistema de tipos lineales de Move garantiza que una vez que se mueve un recurso, no se puede reutilizar a menos que se reasigne explícitamente.

El modelo tradicional basado en cuentas utilizado por Solidity, por otro lado, requiere que los desarrolladores implementen controles adicionales para evitar tales errores. Por ejemplo, los ataques de reentrada deben evitarse siguiendo un controles-efectos-interacciones Patrón. Todas las operaciones de cambio de estado (efectos) deben ocurrir después de todas las comprobaciones pero antes de cualquier interacción (llamadas externas). Este patrón, a menudo denominado contabilidad optimista, garantiza que las variables de estado se actualicen antes de realizar cualquier interacción externa.

Si bien el modelo centrado en objetos en sí no mejora inherentemente la seguridad, puede simplificar el proceso de desarrollo y facilitar la escritura de código seguro. Aunque los contratos inteligentes en Ethereum pueden ser verificado formalmente Para lograr altos niveles de seguridad, este proceso puede ser complejo y costoso.

Solidity es conocido por su semántica notoriamente poco intuitiva, lo que dificulta que los desarrolladores razonen sobre el comportamiento del código. Esto aumenta la probabilidad de introducir errores sutiles y vulnerabilidades de seguridad.

SUI Move pertenece a una familia de lenguajes que intenta simplificar el desarrollo seguro de contratos inteligentes integrando primitivas financieras sensatas en la semántica del lenguaje desde el principio. Otro ejemplo es el lenguaje de aprobación de ejecución de transacciones (TEAL) de Algorand blockchain, que utiliza un modelo de ejecución sin estado para garantizar que las transacciones sean atómicas y seguras.

El modelo centrado en objetos de Sui es particularmente ventajoso para gestionar activos complejos como los tokens no fungibles (NFT). En Ethereum, los NFT están vinculados a direcciones de contratos inteligentes y las interacciones a menudo requieren llamadas de contratos complejas y actualizaciones de estado, lo que genera mayores costos y posibles riesgos de seguridad. Por ejemplo, transferir un NFT en Ethereum Implica invocar una función del contrato inteligente ERC-721, que actualiza el estado y emite eventos.

Este proceso implica múltiples pasos y tarifas de gas para cada operación. Por el contrario, El modelo de objetos de Sui permite cada NFT ser tratado como un objeto distinto con propiedades y permisos intrínsecos. El comportamiento de las NFT está estrechamente alineado con las primitivas del lenguaje Move, mientras que en Ethereum, este comportamiento debe implementarse, lo que aumenta los gastos generales y crea margen de error.

Orientación a objetos y rendimiento de la cadena de bloques

El modelo orientado a objetos facilita la fragmentación y la paralelización en la cadena de bloques SUI. Combinado con una reciente actualización del mecanismo de consenso de Sui, SUI logra así un tiempo de finalización de aproximadamente 390 milisegundos.

Esto podría permitir un rendimiento superior 100.000 transacciones por segundo. A continuación se puede encontrar una comparación de Sui con otras cadenas de bloques de capa 1 destacadas.

Fragmentación de bases de datos en cadenas basadas en cuentas frente a SUI

Una de las preocupaciones más urgentes en torno a las cadenas de bloques es el infame equilibrio entre escalabilidad, seguridad y descentralización. Fragmentaciónque facilita la partición de la base de datos de la cadena de bloques, se considera una solución para este problema.

En las arquitecturas basadas en cuentas, la fragmentación implica dividir el estado por direcciones de cuenta. Cada fragmento administra un rango distinto de direcciones y las transacciones son procesadas por el fragmento que contiene los datos de la cuenta en cuestión.

Sin embargo, esto enfrenta una serie de problemas. Por ejemplo, Lunares requiere que el saldo y el estado de cada cuenta se actualicen y sincronicen entre fragmentos (Parachains). Mantener la coherencia entre múltiples fragmentos es un desafío ya que cada fragmento debe sincronizarse periódicamente con el estado globallo que introduce latencia y complejidad.

Las transacciones que involucran cuentas en diferentes fragmentos requieren coordinación y mensajería entre fragmentos, lo que agrega una sobrecarga computacional y retrasa la finalidad de la transacción. En el pasado, esto ha provocado tiempos de inactividad en dichas cadenas de bloques, como fue el caso de Zilliqa.

El modelo centrado en objetos de Sui evita muchos de estos problemas al tratar Cada objeto como una unidad de estado independiente. Los objetos se pueden procesar y administrar por separado sin requerir sincronización de estado global, y se pueden procesar múltiples transacciones simultáneamente sin necesidad de sincronización entre fragmentos. Esto reduce la necesidad de una comunicación compleja entre fragmentos y permite un procesamiento paralelo más sencillo y eficiente.

Procesamiento de transacciones en paralelo en SUI

La paralelización se refiere a ejecutar múltiples operaciones simultáneamente y mejorar la velocidad de procesamiento aprovechando subprocesos de ejecución simultáneos.

Hay dos métodos principales de paralelización: método de acceso al estado (o ejecución determinista) y ejecución optimista. En el método de acceso estatal utilizado por Sui y Solanalas transacciones declaran a qué partes del estado accederán, lo que permite al sistema identificar transacciones independientes que se pueden ejecutar simultáneamente.

Este enfoque garantiza resultados predecibles y evita la necesidad de volver a ejecutar transacciones, lo que permite mercados dinámicos de tarifas de gas que gestionan puntos de acceso estatales congestionados.

Ejecución optimista, por otro lado, tal como lo utilizan redes como Monad y Aptos, inicialmente asume que todas las transacciones son independientes y vuelve a ejecutar las transacciones conflictivas retrospectivamente. Si bien es más sencillo para los desarrolladores, puede generar ineficiencias computacionales.

Sui logra la paralelización del acceso a los estados a través de su modelo centrado en objetos. Las operaciones en un objeto no afectan ni retrasan las operaciones en otro, lo que permite naturalmente que se procesen simultáneamente. Las mismas características estructurales simplifican la partición de la base de datos de transacciones, lo que también simplifica el procesamiento paralelizado en un solo nodo.

Conclusión

En conclusión, el modelo centrado en objetos de la cadena de bloques Sui, combinado con el lenguaje de programación Move, aborda varias limitaciones clave de las cadenas de bloques tradicionales de capa 1. La capacidad de procesar transacciones en paralelo mejora significativamente la escalabilidad y reduce la latencia.

El uso de lógica lineal y seguridad basada en capacidades garantiza una gestión de recursos y un control de acceso sólidos, lo que reduce potencialmente el riesgo de errores y vulnerabilidades de seguridad. Además, el enfoque de Sui para gestionar activos complejos, como los NFT, simplifica las interacciones y mejora la eficiencia en comparación con los modelos tradicionales basados ​​en cuentas. Estas características posicionan a Sui como un avance notable en la tecnología blockchain.

En nuestro próximo artículo, examinaremos el mecanismo de consenso de la cadena de bloques Sui, explorando su evolución y los beneficios que ofrece. Sui emplea un protocolo de consenso diseñado para funcionar con su modelo centrado en objetos.

Analizaremos los detalles del mecanismo de consenso de Sui, incluidos sus métodos de tolerancia a fallas y optimización del rendimiento, para comprender cómo estos elementos contribuyen a su infraestructura.

Además, compararemos el enfoque de consenso de Sui con los de otras cadenas de bloques importantes, como Ethereum, Polkadot y Solana, para identificar sus características únicas y áreas en las que puede sobresalir o enfrentar desafíos.

Revista: A medida que el phishing en Ethereum se vuelve más difícil, los agotadores se trasladan a TON y Bitcoin