Изучение объектно-ориентированной модели Sui и языка программирования Move

Средний10/23/2024, 5:02:57 PM
Эта статья рассматривает объектно-центрическую модель хранения данных Sui, ее последствия для обработки транзакций и ее потенциал.

Блокчейн SUI стал новым протоколом уровня 1 (L1), включающим передовые технологии для решения распространенных компромиссов уровня 1. Cointelegraph Research разбирает подробности этого новичка в области блокчейна.

SUI использует Язык программирования Move, который был разработан с упором на представление активов и контроль доступа. В этой статье рассматривается объектно-ориентированная модель хранения данных SUI, ее последствия для обработки транзакций и потенциальные преимущества по сравнению с традиционными счетными парадигмами.

Объектно-ориентированная парадигма SUI

Sui черпает значительное вдохновение из блокчейна Diem, особенно в использовании языка программирования Move для смарт-контрактов. Move был разработан с системой типов, специально адаптированной для управления активами и обеспечения контроля доступа. Sui Move развивается на основе этого фундаментального принципа с модель хранения данных, ориентированная на объектыкоторый использует объекты в качестве примитивов, а не учетных записей.

В отличие от традиционная модель учетной записи, где транзакции изменяют балансы или модель UTXO, где транзакции имеют простые входы и выходы, объектная модель SuiSUI treats assets (as well as smart contracts) as complex objects. Transactions in SUI take objects as inputs and mutate these inputs into output objects. Each object records the hash of the last transaction that produced it. This approach is conceptually similar to the UTXO model but more general and powerful. A comparison of the models can be seen below.

@ZeroAgeVenturesиспользование линейной логики Move связано с объектно-ориентированной моделью и способствует разработке безопасного программного обеспечения. Линейная логика, иногда называется логикой ресурсов, обеспечивает невозможность дублирования или случайного уничтожения ресурсов, представляющих цифровые активы. Когда транзакцияКогда выполняется операция с активом, семантика Sui Move гарантирует, что состояние актива обновляется таким образом, чтобы отражать результат транзакции, потребляя актив в его предыдущем состоянии и производя его в новом состоянии.

Объекты в SUI также могут иметь определенные контрольные средства доступа и разрешения, что повышает безопасность и контроль над использованием активов после совершения транзакции.Это mitiGatesуязвимости, распространенные в цепях на основе учетных записей, которые позволяют проводить атаки повторного входа.атака на повторный вход, функция выполняет внешний вызов другого контракта перед обновлением своего собственного состояния, что позволяет злоумышленникам повторно выполнять действия, которые должны происходить только один раз.

Это может привести к несанкционированным изменениям в состоянии контракта, таким как снятие средств в большем объеме, чем должно быть разрешено. Потому что передачи собственностив явном виде и атомарно в SUI, такой тип ошибки не может произойти. Линейная система типов Move гарантирует, что после перемещения ресурса он не может быть повторно использован, если это явно не переназначено.

Традиционная модель, основанная на учетных записях, используемая Solidity, с другой стороны, требует, чтобы разработчики внедряли дополнительные проверки, чтобы предотвратить подобные ошибки. Например, атаки повторного входа должны быть избежаны путем следования проверки-эффекты-взаимодействияобразец. Все операции, изменяющие состояние (эффекты), должны происходить после всех проверок, но перед любыми взаимодействиями (внешними вызовами). Этот шаблон, часто называемый оптимистическим учетом, гарантирует, что переменные состояния обновляются перед выполнением любых внешних взаимодействий.

Хотя сама модель, ориентированная на объекты, не усиливает безопасность, она может упростить процесс разработки и облегчить написание безопасного кода. Хотя умные контракты на Ethereum могут быть формально провереннымдля достижения высокого уровня безопасности этот процесс может быть сложным и затратным.

Solidity известен своей печально неинтуитивной семантикой, что делает сложным для разработчиков обоснование поведения кода. Это увеличивает вероятность появления тонких ошибок и уязвимостей безопасности.

SUI Move принадлежит к семейству языков, которые пытаются упростить разработку безопасных смарт-контрактов, внедряя разумные финансовые примитивы в семантику языка с самого начала. Еще одним примером является язык одобрения выполнения транзакции (TEAL) блокчейна Algorand, который использует модель выполнения без сохранения состояниядля обеспечения атомарности и безопасности транзакций.

Объектно-ориентированная модель SUI особенно выгодна для управления сложными активами, такими как нефункциональные токены (NFT). В Ethereum NFT привязаны к адресам смарт-контрактов, и взаимодействие часто требует сложных вызовов контрактов и обновлений состояния, что приводит к повышенным затратам и потенциальным рискам безопасности. Например, передача NFT в Ethereumвключает вызов функции смарт-контракта ERC-721, который обновляет состояние и создает события.

Этот процесс включает в себя несколько шагов и комиссии за газ для каждой операции. В отличие от,Модель объектов Sui позволяет каждому NFTбыть рассмотренным как отдельный объект с внутренними свойствами и разрешениями. Поведение NFT тесно связано с примитивами языка Move, тогда как в Ethereum это поведение должно быть реализовано, что увеличивает накладные расходы и создает возможность для ошибок.

Объектно-ориентированность и производительность блокчейна

Модель, ориентированная на объекты, упрощает фрагментацию и параллелизацию на блокчейне SUI. Вместе с недавним обновлением механизма консенсуса Sui SUI достигает времени окончательности приблизительно 390 миллисекунд.

Это может позволить пропускную способность, превышающую 100,000 транзакций в секунду. Сравнение SUI с другими ведущими блокчейнами уровня 1 можно найти ниже.

Разделение базы данных на аккаунтные цепочки по сравнению с SUI

Одной из наиболее острых проблем для блокчейнов является печально известный компромисс между масштабируемостью, безопасностью и децентрализацией.Шардинг, которое облегчает разделение базы данных блокчейна, считается решением этой проблемы.

В архитектурах, основанных на учете, шардинг предполагает разделение состояния по адресам учетных записей. Каждый шард управляет отдельным диапазоном адресов, и транзакции обрабатываются шардом, который содержит данные учетной записи, связанной с транзакцией.

Однако это сталкивается с рядом проблем. Например, Polkadotтребует, чтобы баланс и состояние каждого аккаунта были обновлены и синхронизированы между шардами (Parachains). Поддержание согласованности между несколькими шардами является сложной задачей, так как каждый шард необходимо регулярно синхронизироваться с глобальным состоянием, что приводит к задержкам и сложностям.

Транзакции, включающие учетные записи на разных фрагментах, требуют межшарового обмена сообщениями и координации, что увеличивает вычислительную нагрузку и задерживает окончательность транзакции. В прошлом это приводило к простою на таких блокчейнах, как, например, Zilliqa.

Модель, ориентированная на объекты Sui, избегает многих этих проблем, обрабатывая каждый объект как независимая единица состоянияОбъекты можно обрабатывать и управлять отдельно без необходимости синхронизации глобального состояния, и несколько транзакций можно обрабатывать параллельно без необходимости синхронизации между осколками. Это снижает необходимость в сложной межосколковой коммуникации и позволяет более простую и эффективную параллельную обработку.

Параллельная обработка транзакций на SUI

Параллелизация означает выполнение нескольких операций одновременно и улучшение скорости обработки путем использования параллельных потоков выполнения.

Существует два основных метода распараллеливания: метод доступа к состоянию (или детерминистическое выполнение) и оптимистичное выполнение. В метод доступа к состояниюиспользуется SUI иSolana, транзакции объявляют, к каким частям состояния они будут обращаться, что позволяет системе определять независимые транзакции, которые могут выполняться параллельно.

Этот подход обеспечивает предсказуемые результаты и избегает необходимости повторного выполнения транзакций, что позволяет создавать динамические рынки газовых сборов, управляющие перегруженными узлами состояния.

Оптимистичное исполнение, с другой стороны, поскольку он используется такими сетями, как Monad и Aptos, изначально предполагает, что все транзакции независимы, и повторно выполняет конфликтующие транзакции задним числом. Несмотря на то, что это проще для разработчиков, это может привести к неэффективности вычислений.

Sui достигает параллелизации доступа к состоянию через свою объектно-ориентированную модель. Операции над одним объектом не влияют на операции над другим, что естественным образом позволяет их обрабатывать параллельно. Те же структурные особенности упрощают разбиение базы данных транзакций, что также упрощает параллельную обработку на одном узле.

Заключение

В заключение, объектно-ориентированная модель блокчейна SUI в сочетании с языком программирования Move позволяет решать несколько ключевых ограничений традиционных блокчейнов уровня 1. Возможность обработки транзакций параллельно значительно повышает масштабируемость и снижает задержку.

Использование линейной логики и безопасности, основанной на возможностях, обеспечивает надежное управление ресурсами и контроль доступа, что может снизить риск ошибок и уязвимостей безопасности. Кроме того, подход Sui к управлению сложными активами, такими как NFT, упрощает взаимодействие и повышает эффективность по сравнению с традиционными моделями на основе учетных записей. Эти функции позиционируют Sui как заметное развитие в технологии блокчейн.

В следующей статье мы рассмотрим механизм консенсуса блокчейна Sui, исследуя его эволюцию и преимущества, которые он предоставляет. Sui использует протокол консенсуса, разработанный для работы с его объектно-ориентированной моделью.

Мы проанализируем особенности механизма консенсуса SUI, включая его устойчивость к сбоям и методы оптимизации пропускной способности, чтобы понять, как эти элементы способствуют его инфраструктуре.

Кроме того, мы сравним метод согласования Sui с методами других выдающихся блокчейнов, таких как Ethereum, Polkadot и Solana, чтобы выявить его уникальные особенности и области, где он может превосходить или сталкиваться с проблемами.

Отказ от ответственности:

  1. Эта статья перепечатана с [койнтелеграф], Все авторские права принадлежат автору оригинала [Ник М]. Если есть возражения против этого перепечатывания, пожалуйста, свяжитесь с Gate Learnкоманда, и они немедленно справятся с этим.
  2. Ответственность за отказ: Взгляды и мнения, выраженные в этой статье, являются исключительно точкой зрения автора и не являются инвестиционным советом.
  3. Переводы статьи на другие языки выполняются командой Gate Learn. Если не указано иное, копирование, распространение или плагиат переведенных статей запрещены.

Изучение объектно-ориентированной модели Sui и языка программирования Move

Средний10/23/2024, 5:02:57 PM
Эта статья рассматривает объектно-центрическую модель хранения данных Sui, ее последствия для обработки транзакций и ее потенциал.

Блокчейн SUI стал новым протоколом уровня 1 (L1), включающим передовые технологии для решения распространенных компромиссов уровня 1. Cointelegraph Research разбирает подробности этого новичка в области блокчейна.

SUI использует Язык программирования Move, который был разработан с упором на представление активов и контроль доступа. В этой статье рассматривается объектно-ориентированная модель хранения данных SUI, ее последствия для обработки транзакций и потенциальные преимущества по сравнению с традиционными счетными парадигмами.

Объектно-ориентированная парадигма SUI

Sui черпает значительное вдохновение из блокчейна Diem, особенно в использовании языка программирования Move для смарт-контрактов. Move был разработан с системой типов, специально адаптированной для управления активами и обеспечения контроля доступа. Sui Move развивается на основе этого фундаментального принципа с модель хранения данных, ориентированная на объектыкоторый использует объекты в качестве примитивов, а не учетных записей.

В отличие от традиционная модель учетной записи, где транзакции изменяют балансы или модель UTXO, где транзакции имеют простые входы и выходы, объектная модель SuiSUI treats assets (as well as smart contracts) as complex objects. Transactions in SUI take objects as inputs and mutate these inputs into output objects. Each object records the hash of the last transaction that produced it. This approach is conceptually similar to the UTXO model but more general and powerful. A comparison of the models can be seen below.

@ZeroAgeVenturesиспользование линейной логики Move связано с объектно-ориентированной моделью и способствует разработке безопасного программного обеспечения. Линейная логика, иногда называется логикой ресурсов, обеспечивает невозможность дублирования или случайного уничтожения ресурсов, представляющих цифровые активы. Когда транзакцияКогда выполняется операция с активом, семантика Sui Move гарантирует, что состояние актива обновляется таким образом, чтобы отражать результат транзакции, потребляя актив в его предыдущем состоянии и производя его в новом состоянии.

Объекты в SUI также могут иметь определенные контрольные средства доступа и разрешения, что повышает безопасность и контроль над использованием активов после совершения транзакции.Это mitiGatesуязвимости, распространенные в цепях на основе учетных записей, которые позволяют проводить атаки повторного входа.атака на повторный вход, функция выполняет внешний вызов другого контракта перед обновлением своего собственного состояния, что позволяет злоумышленникам повторно выполнять действия, которые должны происходить только один раз.

Это может привести к несанкционированным изменениям в состоянии контракта, таким как снятие средств в большем объеме, чем должно быть разрешено. Потому что передачи собственностив явном виде и атомарно в SUI, такой тип ошибки не может произойти. Линейная система типов Move гарантирует, что после перемещения ресурса он не может быть повторно использован, если это явно не переназначено.

Традиционная модель, основанная на учетных записях, используемая Solidity, с другой стороны, требует, чтобы разработчики внедряли дополнительные проверки, чтобы предотвратить подобные ошибки. Например, атаки повторного входа должны быть избежаны путем следования проверки-эффекты-взаимодействияобразец. Все операции, изменяющие состояние (эффекты), должны происходить после всех проверок, но перед любыми взаимодействиями (внешними вызовами). Этот шаблон, часто называемый оптимистическим учетом, гарантирует, что переменные состояния обновляются перед выполнением любых внешних взаимодействий.

Хотя сама модель, ориентированная на объекты, не усиливает безопасность, она может упростить процесс разработки и облегчить написание безопасного кода. Хотя умные контракты на Ethereum могут быть формально провереннымдля достижения высокого уровня безопасности этот процесс может быть сложным и затратным.

Solidity известен своей печально неинтуитивной семантикой, что делает сложным для разработчиков обоснование поведения кода. Это увеличивает вероятность появления тонких ошибок и уязвимостей безопасности.

SUI Move принадлежит к семейству языков, которые пытаются упростить разработку безопасных смарт-контрактов, внедряя разумные финансовые примитивы в семантику языка с самого начала. Еще одним примером является язык одобрения выполнения транзакции (TEAL) блокчейна Algorand, который использует модель выполнения без сохранения состояниядля обеспечения атомарности и безопасности транзакций.

Объектно-ориентированная модель SUI особенно выгодна для управления сложными активами, такими как нефункциональные токены (NFT). В Ethereum NFT привязаны к адресам смарт-контрактов, и взаимодействие часто требует сложных вызовов контрактов и обновлений состояния, что приводит к повышенным затратам и потенциальным рискам безопасности. Например, передача NFT в Ethereumвключает вызов функции смарт-контракта ERC-721, который обновляет состояние и создает события.

Этот процесс включает в себя несколько шагов и комиссии за газ для каждой операции. В отличие от,Модель объектов Sui позволяет каждому NFTбыть рассмотренным как отдельный объект с внутренними свойствами и разрешениями. Поведение NFT тесно связано с примитивами языка Move, тогда как в Ethereum это поведение должно быть реализовано, что увеличивает накладные расходы и создает возможность для ошибок.

Объектно-ориентированность и производительность блокчейна

Модель, ориентированная на объекты, упрощает фрагментацию и параллелизацию на блокчейне SUI. Вместе с недавним обновлением механизма консенсуса Sui SUI достигает времени окончательности приблизительно 390 миллисекунд.

Это может позволить пропускную способность, превышающую 100,000 транзакций в секунду. Сравнение SUI с другими ведущими блокчейнами уровня 1 можно найти ниже.

Разделение базы данных на аккаунтные цепочки по сравнению с SUI

Одной из наиболее острых проблем для блокчейнов является печально известный компромисс между масштабируемостью, безопасностью и децентрализацией.Шардинг, которое облегчает разделение базы данных блокчейна, считается решением этой проблемы.

В архитектурах, основанных на учете, шардинг предполагает разделение состояния по адресам учетных записей. Каждый шард управляет отдельным диапазоном адресов, и транзакции обрабатываются шардом, который содержит данные учетной записи, связанной с транзакцией.

Однако это сталкивается с рядом проблем. Например, Polkadotтребует, чтобы баланс и состояние каждого аккаунта были обновлены и синхронизированы между шардами (Parachains). Поддержание согласованности между несколькими шардами является сложной задачей, так как каждый шард необходимо регулярно синхронизироваться с глобальным состоянием, что приводит к задержкам и сложностям.

Транзакции, включающие учетные записи на разных фрагментах, требуют межшарового обмена сообщениями и координации, что увеличивает вычислительную нагрузку и задерживает окончательность транзакции. В прошлом это приводило к простою на таких блокчейнах, как, например, Zilliqa.

Модель, ориентированная на объекты Sui, избегает многих этих проблем, обрабатывая каждый объект как независимая единица состоянияОбъекты можно обрабатывать и управлять отдельно без необходимости синхронизации глобального состояния, и несколько транзакций можно обрабатывать параллельно без необходимости синхронизации между осколками. Это снижает необходимость в сложной межосколковой коммуникации и позволяет более простую и эффективную параллельную обработку.

Параллельная обработка транзакций на SUI

Параллелизация означает выполнение нескольких операций одновременно и улучшение скорости обработки путем использования параллельных потоков выполнения.

Существует два основных метода распараллеливания: метод доступа к состоянию (или детерминистическое выполнение) и оптимистичное выполнение. В метод доступа к состояниюиспользуется SUI иSolana, транзакции объявляют, к каким частям состояния они будут обращаться, что позволяет системе определять независимые транзакции, которые могут выполняться параллельно.

Этот подход обеспечивает предсказуемые результаты и избегает необходимости повторного выполнения транзакций, что позволяет создавать динамические рынки газовых сборов, управляющие перегруженными узлами состояния.

Оптимистичное исполнение, с другой стороны, поскольку он используется такими сетями, как Monad и Aptos, изначально предполагает, что все транзакции независимы, и повторно выполняет конфликтующие транзакции задним числом. Несмотря на то, что это проще для разработчиков, это может привести к неэффективности вычислений.

Sui достигает параллелизации доступа к состоянию через свою объектно-ориентированную модель. Операции над одним объектом не влияют на операции над другим, что естественным образом позволяет их обрабатывать параллельно. Те же структурные особенности упрощают разбиение базы данных транзакций, что также упрощает параллельную обработку на одном узле.

Заключение

В заключение, объектно-ориентированная модель блокчейна SUI в сочетании с языком программирования Move позволяет решать несколько ключевых ограничений традиционных блокчейнов уровня 1. Возможность обработки транзакций параллельно значительно повышает масштабируемость и снижает задержку.

Использование линейной логики и безопасности, основанной на возможностях, обеспечивает надежное управление ресурсами и контроль доступа, что может снизить риск ошибок и уязвимостей безопасности. Кроме того, подход Sui к управлению сложными активами, такими как NFT, упрощает взаимодействие и повышает эффективность по сравнению с традиционными моделями на основе учетных записей. Эти функции позиционируют Sui как заметное развитие в технологии блокчейн.

В следующей статье мы рассмотрим механизм консенсуса блокчейна Sui, исследуя его эволюцию и преимущества, которые он предоставляет. Sui использует протокол консенсуса, разработанный для работы с его объектно-ориентированной моделью.

Мы проанализируем особенности механизма консенсуса SUI, включая его устойчивость к сбоям и методы оптимизации пропускной способности, чтобы понять, как эти элементы способствуют его инфраструктуре.

Кроме того, мы сравним метод согласования Sui с методами других выдающихся блокчейнов, таких как Ethereum, Polkadot и Solana, чтобы выявить его уникальные особенности и области, где он может превосходить или сталкиваться с проблемами.

Отказ от ответственности:

  1. Эта статья перепечатана с [койнтелеграф], Все авторские права принадлежат автору оригинала [Ник М]. Если есть возражения против этого перепечатывания, пожалуйста, свяжитесь с Gate Learnкоманда, и они немедленно справятся с этим.
  2. Ответственность за отказ: Взгляды и мнения, выраженные в этой статье, являются исключительно точкой зрения автора и не являются инвестиционным советом.
  3. Переводы статьи на другие языки выполняются командой Gate Learn. Если не указано иное, копирование, распространение или плагиат переведенных статей запрещены.
Начните торговать сейчас
Зарегистрируйтесь сейчас и получите ваучер на
$100
!