BTC 109001$
ETH 2611.45$
Tether (USDT) 1$
Toncoin (TON) 2.8$
telegram vk
telegram vk Х
Russian English
Высокодоходный майнинг бизнес
"

Как Sui улучшает масштабируемость блокчейна и разработку смарт-контрактов

Дата публикации:02.07.2024, 10:44
2807
2807
Поделись с друзьями!

Блокчейн Sui появился как новый протокол уровня 1 (L1), включающий в себя передовые технологии для решения общих компромиссов уровня 1. Рассмотрим детали этого новичка в пространстве блокчейнов, а именно — то, как объектно-ориентированная модель Sui и язык Move могут улучшить масштабируемость блокчейна и разработку смарт-контрактов.

Sui использует язык программирования Move, который был разработан с упором на представление активов и контроль доступа.

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

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

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

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

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

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

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

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

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

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

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

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

Обработка NFT с помощью Sui и Ethereum

  Ethereum Sui
Процесс трансфера Несколько шагов и плата за газ Одиночная атомарная операция
Риски безопасности Выше из-за сложных взаимодействий Ниже благодаря объектно-ориентированной модели
Управление метаданными Внешнее или внутрисетевое, сложное Присуще объекту, упрощенное

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

Объектно-ориентированная модель упрощает сегментирование и распараллеливание блокчейна SUI. В сочетании с недавним обновлением механизма консенсуса Sui, таким образом, достигается время до завершения примерно 390 миллисекунд.

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

Сравнение блокчейнов  L1 по TPS и ms

Шардинг базы данных в блокчейнах на основе учетных записей в сравнении с SUI

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

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

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

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

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

Как объектно-ориентированная модель обеспечивает параллельное выполнение пользовательских транзакций

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

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

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

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

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

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

Параллельные транзакции на Sui

Заключение

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

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

 

 

Подписывайся на наш Telegram канал. Не трать время на мониторинг новостей. Только срочные и важные новости

https://t.me/block_chain24