Explorando el modelo centrado en objetos de Sui y el lenguaje de programación Move

Intermedio10/23/2024, 5:02:57 PM
Este artículo examina el modelo de almacenamiento de datos centrado en objetos de SUI, sus implicaciones para el procesamiento de transacciones y su potencial.

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 capa-1. Cointelegraph Research desglosa los detalles de este recién llegado al espacio de la cadena de bloques.

Sui utiliza 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 posibles ventajas sobre los paradigmas tradicionales basados en cuentas.

El paradigma orientado a objetos de SUI

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

A diferencia demodelo de cuenta tradicional, donde las transacciones cambian los saldos, o el modelo UTXOdonde las transacciones tienen entradas y salidas simples,el modelo de objetos de Suilos activos (así como los contratos inteligentes) son tratados como objetos complejos. Las transacciones en Sui toman objetos como entradas y mutan 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. Se puede ver una comparación de los modelos a continuación.

@ZeroAgeVenturesEl uso de la lógica lineal por parte de Move está conectado al modelo orientado a objetos y facilita el desarrollo de software seguro. La lógica lineal, a veces se le llama lógica de recursosasegura que los recursos que representan activos digitales no puedan ser duplicados o destruidos inadvertidamente. Cuando una transacciónCuando se ejecuta una transacción que involucra un activo, la semántica de Sui Move garantiza que el estado del activo se actualice de 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 definidos, lo que mejora la seguridad y el control sobre el uso de activos después de una transacción. Esto mitiGatesvulnerabilities comunes en cadenas basadas en cuentas, que permiten ataques de reentrada. En aataque de reentrancia, una 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 llevar a cambios no autorizados en el estado del contrato, como retirar más fondos de los que se debería permitir. Because transferencia de propiedadson explícitos y atómicos en Sui, este tipo de error no puede ocurrir. El sistema de tipos lineales de Move asegura que una vez que un recurso se mueve, no se puede reutilizar a menos que se reasigne explícitamente.

Por otro lado, el modelo basado en cuentas tradicional utilizado por Solidity requiere que los desarrolladores implementen comprobaciones adicionales para evitar estos errores. Por ejemplo, los ataques de reentrada deben evitarse siguiendo una verificaciones-efectos-interaccionespatrón. Todas las operaciones que cambian el estado (efectos) deben ocurrir después de todas las comprobaciones pero antes de cualquier interacción (llamadas externas). Este patrón, a menudo referido como contabilidad optimista, asegura que las variables de estado se actualicen antes de realizar cualquier interacción externa.

Si bien el modelo centrado en objetos en sí mismo 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 formalmentepara lograr altos niveles de seguridad, este proceso puede ser complejo y costoso.

Solidity es conocido por su semántica notoriamente poco intuitiva, lo que hace que sea difícil para los desarrolladores razonar 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 al incorporar 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 la cadena de bloques de Algorand, que utiliza un modelo de ejecución sin estadopara asegurar que las transacciones sean atómicas y seguras.

El modelo centrado en objetos de Sui es particularmente ventajoso para gestionar activos complejos como tokens no fungibles (NFT). En Ethereum, los NFT están vinculados a direcciones de contratos inteligentes, y las interacciones a menudo requieren llamadas de contrato complejas y actualizaciones de estado, lo que conlleva costos más altos y posibles riesgos de seguridad. Por ejemplo, transferir un NFT en Ethereuminvolucra 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. En contraste, El modelo de objeto de SUI permite cada NFTser tratado como un objeto distintivo con propiedades y permisos intrínsecos. El comportamiento de los NFT está estrechamente alineado con los primitivos del lenguaje Move, mientras que en Ethereum, este comportamiento debe ser implementado, lo que aumenta los costos operativos y crea margen para errores.

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

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

Esto podría permitir un rendimiento superior a100,000 transacciones por segundo. Una comparación de Sui con otras blockchains de capa 1 prominentes se puede encontrar a continuación.

Sharding de bases de datos en cadenas basadas en cuentas versus SUI

Una de las preocupaciones más urgentes para las blockchains es el famoso compromiso entre escalabilidad, seguridad y descentralización.Shardingse considera que , que facilita la partición de la base de datos de la cadena de bloques, es una solución para este problema.

En arquitecturas basadas en cuentas, el fragmentado implica la partición del estado por medio de las direcciones de las cuentas. Cada fragmento gestiona un rango de direcciones distinto, y las transacciones se procesan en el fragmento que contiene los datos de la cuenta involucrada.

Sin embargo, esto enfrenta una serie de problemas. Por ejemplo, Polkadot requiere que el saldo y el estado de cada cuenta se actualicen y sincronicen en todos los fragmentos (Parachains). Mantener la consistencia en varios fragmentos es un desafío ya que cada fragmento debe sincronizarse regularmente con el estado global, lo que introduce latencia y complejidad.

Las transacciones que involucran cuentas en diferentes fragmentos requieren mensajería y coordinación entre fragmentos, lo que agrega sobrecarga computacional y retrasa la finalización de la transacción. En el pasado, esto ha llevado a tiempo de inactividad en tales blockchains, como fue el caso deZilliqa.

El modelo centrado en objetos de Sui evita muchos de estos problemas al tratar cada objeto como una unidad independiente de estadoLos objetos pueden ser procesados y gestionados por separado sin necesidad de sincronización del estado global, y varias transacciones pueden ser procesadas de forma concurrente 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 directo 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 mediante el aprovechamiento de hilos de ejecución concurrente.

Hay dos métodos principales de paralelizaciónmétodo de acceso del estado (o ejecución determinista) y ejecución optimista. En lamétodo de acceso al estado utilizado por Sui y Solana, las transacciones declaran qué partes del estado accederán, lo que permite al sistema identificar transacciones independientes que pueden ejecutarse de forma concurrente.

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 administran puntos críticos estatales congestionados.

Ejecución optimistapor otro lado, como se utiliza en redes como Monad y Aptos, asume inicialmente que todas las transacciones son independientes y vuelve a ejecutar retrospectivamente las transacciones conflictivas. Si bien es más simple para los desarrolladores, puede llevar a ineficiencias computacionales.

Sui logra la paralelización de acceso estatal 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 procesarlas de manera concurrente de forma natural. Las mismas características estructurales simplifican la partición de la base de datos de transacciones, lo que también simplifica el procesamiento paralelo 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 la lógica lineal y la seguridad basada en capacidades garantiza una gestión robusta de recursos y control de acceso, lo que potencialmente reduce 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 sitúan a Sui como un avance notable en la tecnología blockchain.

En nuestro próximo artículo, examinaremos el mecanismo de consenso de la blockchain SUI, explorando su evolución y los beneficios que proporciona. SUI utiliza un protocolo de consenso diseñado para trabajar con su modelo centrado en objetos.

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

Además, compararemos el enfoque de consenso de Sui con el de otras blockchains prominentes, como Ethereum, Polkadot y Solana, para identificar sus características únicas y áreas donde puede destacarse o enfrentar desafíos.

Descargo de responsabilidad:

  1. Este artículo se reimprime de [ cointelegraph], Todos los derechos de autor pertenecen al autor original [Nick M]. Si hay objeciones a esta reimpresión, por favor contacte al Gate Learnequipo, y lo manejarán rápidamente.
  2. Aviso de responsabilidad: Las opiniones expresadas en este artículo son únicamente del autor y no constituyen ningún consejo de inversión.
  3. Las traducciones del artículo a otros idiomas son realizadas por el equipo de Gate Learn. A menos que se mencione lo contrario, está prohibido copiar, distribuir o plagiar los artículos traducidos.

Explorando el modelo centrado en objetos de Sui y el lenguaje de programación Move

Intermedio10/23/2024, 5:02:57 PM
Este artículo examina el modelo de almacenamiento de datos centrado en objetos de SUI, sus implicaciones para el procesamiento de transacciones y su potencial.

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 capa-1. Cointelegraph Research desglosa los detalles de este recién llegado al espacio de la cadena de bloques.

Sui utiliza 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 posibles ventajas sobre los paradigmas tradicionales basados en cuentas.

El paradigma orientado a objetos de SUI

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

A diferencia demodelo de cuenta tradicional, donde las transacciones cambian los saldos, o el modelo UTXOdonde las transacciones tienen entradas y salidas simples,el modelo de objetos de Suilos activos (así como los contratos inteligentes) son tratados como objetos complejos. Las transacciones en Sui toman objetos como entradas y mutan 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. Se puede ver una comparación de los modelos a continuación.

@ZeroAgeVenturesEl uso de la lógica lineal por parte de Move está conectado al modelo orientado a objetos y facilita el desarrollo de software seguro. La lógica lineal, a veces se le llama lógica de recursosasegura que los recursos que representan activos digitales no puedan ser duplicados o destruidos inadvertidamente. Cuando una transacciónCuando se ejecuta una transacción que involucra un activo, la semántica de Sui Move garantiza que el estado del activo se actualice de 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 definidos, lo que mejora la seguridad y el control sobre el uso de activos después de una transacción. Esto mitiGatesvulnerabilities comunes en cadenas basadas en cuentas, que permiten ataques de reentrada. En aataque de reentrancia, una 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 llevar a cambios no autorizados en el estado del contrato, como retirar más fondos de los que se debería permitir. Because transferencia de propiedadson explícitos y atómicos en Sui, este tipo de error no puede ocurrir. El sistema de tipos lineales de Move asegura que una vez que un recurso se mueve, no se puede reutilizar a menos que se reasigne explícitamente.

Por otro lado, el modelo basado en cuentas tradicional utilizado por Solidity requiere que los desarrolladores implementen comprobaciones adicionales para evitar estos errores. Por ejemplo, los ataques de reentrada deben evitarse siguiendo una verificaciones-efectos-interaccionespatrón. Todas las operaciones que cambian el estado (efectos) deben ocurrir después de todas las comprobaciones pero antes de cualquier interacción (llamadas externas). Este patrón, a menudo referido como contabilidad optimista, asegura que las variables de estado se actualicen antes de realizar cualquier interacción externa.

Si bien el modelo centrado en objetos en sí mismo 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 formalmentepara lograr altos niveles de seguridad, este proceso puede ser complejo y costoso.

Solidity es conocido por su semántica notoriamente poco intuitiva, lo que hace que sea difícil para los desarrolladores razonar 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 al incorporar 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 la cadena de bloques de Algorand, que utiliza un modelo de ejecución sin estadopara asegurar que las transacciones sean atómicas y seguras.

El modelo centrado en objetos de Sui es particularmente ventajoso para gestionar activos complejos como tokens no fungibles (NFT). En Ethereum, los NFT están vinculados a direcciones de contratos inteligentes, y las interacciones a menudo requieren llamadas de contrato complejas y actualizaciones de estado, lo que conlleva costos más altos y posibles riesgos de seguridad. Por ejemplo, transferir un NFT en Ethereuminvolucra 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. En contraste, El modelo de objeto de SUI permite cada NFTser tratado como un objeto distintivo con propiedades y permisos intrínsecos. El comportamiento de los NFT está estrechamente alineado con los primitivos del lenguaje Move, mientras que en Ethereum, este comportamiento debe ser implementado, lo que aumenta los costos operativos y crea margen para errores.

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

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

Esto podría permitir un rendimiento superior a100,000 transacciones por segundo. Una comparación de Sui con otras blockchains de capa 1 prominentes se puede encontrar a continuación.

Sharding de bases de datos en cadenas basadas en cuentas versus SUI

Una de las preocupaciones más urgentes para las blockchains es el famoso compromiso entre escalabilidad, seguridad y descentralización.Shardingse considera que , que facilita la partición de la base de datos de la cadena de bloques, es una solución para este problema.

En arquitecturas basadas en cuentas, el fragmentado implica la partición del estado por medio de las direcciones de las cuentas. Cada fragmento gestiona un rango de direcciones distinto, y las transacciones se procesan en el fragmento que contiene los datos de la cuenta involucrada.

Sin embargo, esto enfrenta una serie de problemas. Por ejemplo, Polkadot requiere que el saldo y el estado de cada cuenta se actualicen y sincronicen en todos los fragmentos (Parachains). Mantener la consistencia en varios fragmentos es un desafío ya que cada fragmento debe sincronizarse regularmente con el estado global, lo que introduce latencia y complejidad.

Las transacciones que involucran cuentas en diferentes fragmentos requieren mensajería y coordinación entre fragmentos, lo que agrega sobrecarga computacional y retrasa la finalización de la transacción. En el pasado, esto ha llevado a tiempo de inactividad en tales blockchains, como fue el caso deZilliqa.

El modelo centrado en objetos de Sui evita muchos de estos problemas al tratar cada objeto como una unidad independiente de estadoLos objetos pueden ser procesados y gestionados por separado sin necesidad de sincronización del estado global, y varias transacciones pueden ser procesadas de forma concurrente 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 directo 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 mediante el aprovechamiento de hilos de ejecución concurrente.

Hay dos métodos principales de paralelizaciónmétodo de acceso del estado (o ejecución determinista) y ejecución optimista. En lamétodo de acceso al estado utilizado por Sui y Solana, las transacciones declaran qué partes del estado accederán, lo que permite al sistema identificar transacciones independientes que pueden ejecutarse de forma concurrente.

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 administran puntos críticos estatales congestionados.

Ejecución optimistapor otro lado, como se utiliza en redes como Monad y Aptos, asume inicialmente que todas las transacciones son independientes y vuelve a ejecutar retrospectivamente las transacciones conflictivas. Si bien es más simple para los desarrolladores, puede llevar a ineficiencias computacionales.

Sui logra la paralelización de acceso estatal 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 procesarlas de manera concurrente de forma natural. Las mismas características estructurales simplifican la partición de la base de datos de transacciones, lo que también simplifica el procesamiento paralelo 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 la lógica lineal y la seguridad basada en capacidades garantiza una gestión robusta de recursos y control de acceso, lo que potencialmente reduce 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 sitúan a Sui como un avance notable en la tecnología blockchain.

En nuestro próximo artículo, examinaremos el mecanismo de consenso de la blockchain SUI, explorando su evolución y los beneficios que proporciona. SUI utiliza un protocolo de consenso diseñado para trabajar con su modelo centrado en objetos.

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

Además, compararemos el enfoque de consenso de Sui con el de otras blockchains prominentes, como Ethereum, Polkadot y Solana, para identificar sus características únicas y áreas donde puede destacarse o enfrentar desafíos.

Descargo de responsabilidad:

  1. Este artículo se reimprime de [ cointelegraph], Todos los derechos de autor pertenecen al autor original [Nick M]. Si hay objeciones a esta reimpresión, por favor contacte al Gate Learnequipo, y lo manejarán rápidamente.
  2. Aviso de responsabilidad: Las opiniones expresadas en este artículo son únicamente del autor y no constituyen ningún consejo de inversión.
  3. Las traducciones del artículo a otros idiomas son realizadas por el equipo de Gate Learn. A menos que se mencione lo contrario, está prohibido copiar, distribuir o plagiar los artículos traducidos.
Mulai Sekarang
Daftar dan dapatkan Voucher
$100
!