Дослідження об'єктно-орієнтованої моделі Sui та мови програмування Move

Середній02.57
Ця стаття розглядає об'єктно-центричну модель зберігання даних SUI, її наслідки для обробки транзакцій та її потенціал.
Дослідження об'єктно-орієнтованої моделі Sui та мови програмування Move

Блокчейн Sui з'явився як новий протокол рівня 1 (L1), що включає передові технології для вирішення загальних компромісів рівня 1. Cointelegraph Research розкриває подробиці цього новачка в блокчейн-просторі.

Sui використовує Перемістіть мову програмування, який був розроблений з увагою до представлення активів та контролю доступу. Ця стаття розглядає об'єктно-центричну модель зберігання даних 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/the-sui-thesis-3018e3b34e58">Використання лінійної логіки в Move пов'язане з об'єктно-орієнтованою моделлю та сприяє розробці безпечного програмного забезпечення. Лінійна логіка, іноді називають логікою ресурсів, забезпечує, що ресурси, що представляють цифрові активи, не можуть бути скопійовані або ненавмисно знищені. Коли транзакціяпри виконанні операції з активом семантика Sui Move забезпечує оновлення стану активу таким чином, що відображає результат транзакції, споживаючи актив у його попередньому стані та виробляючи його у новому стані.

Об'єкти в SUI також можуть мати визначені контроль доступу та дозволи, яке підвищує безпеку та контроль за використанням активів після угоди.Це мітіГейтивразливості, що поширені на ланцюгах з обліковим записом і дозволяють атаки повторного входу. Уатака на повторний вхід, функція здійснює зовнішній виклик до іншого контракту перед оновленням свого власного стану, що дозволяє зловмисникам повторно виконувати дії, які повинні відбуватися лише один раз.

Це може призвести до несанкціонованих змін у стані контракту, таких як зняття більше коштів, ніж дозволено. Тому щопередачі власностів SUI явно визначено та атомарно, цей тип помилки неможливо станеться. Лінійна система типів Move гарантує, що один раз ресурс переміщено, його не можна використовувати знову, якщо це не було явно призначено.

Традиційна модель на основі облікових записів, які використовується в Solidity, з іншого боку, вимагає від розробників впровадження додаткових перевірок для запобігання таким помилкам. Наприклад, атаки на повторний вхід повинні бути уникнуті шляхом дотримання перевірки-ефекти-взаємодіїЗразок. Усі операції зміни стану (ефекти) повинні відбуватися після всіх перевірок, але перед будь-якими взаємодіями (зовнішні виклики). Цей шаблон, часто називається оптимістичним обліком, забезпечує оновлення змінних стану перед виконанням будь-яких зовнішніх взаємодій.

Хоча сама модель, спрямована на об'єкти, не зміцнює безпеку, вона може спростити процес розробки і полегшити написання безпечного коду. Хоча розумні контракти на Ethereum можуть бути офіційно перевіренимдля досягнення високого рівня безпеки цей процес може бути складним і витратним.

Solidity відома своїми відомо незрозумілими семантиками, що ускладнює завдання розробників щодо аналізу поведінки коду. Це збільшує ймовірність введення субтельних помилок та вразливостей безпеки.

SUI Move належить до сімейства мов, які намагаються спростити розробку безпечних розумних контрактів, вбираючи розумні фінансові примітиви в семантику мови з самого початку. Ще одним прикладом є мова виконання транзакцій Algorand blockchain (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вимагає, щоб баланс та стан кожного облікового запису були оновлені та синхронізовані по всіх шардах (Парачейнах). Збереження однорідності по всіх шардах складно, оскільки кожен шар повинен регулярно синхронізуватися зі світовим станом, що призводить до затримки та складності.

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

Об'єктно-центрична модель Суї дозволяє уникнути багатьох з цих проблем, розглядаючи кожен об'єкт як незалежна одиниця стану. Об'єкти можуть бути оброблені та керувані окремо без необхідності синхронізації глобального стану, а кілька транзакцій можуть бути оброблені одночасно без потреби у синхронізації між фрагментами. Це зменшує потребу у складній міжфрагментній комунікації та дозволяє більш просту та ефективну паралельну обробку.

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

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

Існує два основних методи паралелізації: метод доступу до стану (або детерміноване виконання) та оптимістичне виконання. метод доступу до станувикористовується SUI таSolana, транзакції оголошують, які частини стану вони будуть доступні, дозволяючи системі ідентифікувати незалежні транзакції, які можуть бути виконані паралельно.

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

Оптимістичне виконання, з іншого боку, якщо використовується мережами, такими як Monad та Aptos, спочатку припускається, що всі транзакції є незалежними і повторно виконує конфліктні транзакції у зворотному порядку. Хоча це простіше для розробників, це може призвести до обчислювальної неефективності.

Sui досягає розпаралелювання доступу до стану за допомогою своєї об'єктно-центричної моделі. Операції над одним об'єктом не впливають і не затримують операції над іншим, природно, дозволяючи обробляти їх одночасно. Ці ж структурні особливості спрощують розбиття бази даних транзакцій, тим самим спрощуючи розпаралелену обробку на одному вузлі.

Висновок

Підсумовуючи, об'єктно-орієнтована модель блокчейну Sui у поєднанні з мовою програмування Move усуває кілька ключових обмежень традиційних блокчейнів рівня 1. Можливість паралельної обробки транзакцій значно підвищує масштабованість і зменшує затримку.

Використання лінійної логіки та безпеки на основі можливостей забезпечує надійне управління ресурсами та контроль доступу, що потенційно знижує ризик помилок та вразливостей безпеки. Крім того, підхід Sui до управління складними активами, такими як NFT, спрощує взаємодію та покращує ефективність порівняно з традиційними моделями на основі рахунків. Ці функції роблять Sui помітним досягненням в галузі технології блокчейн.

У наступній статті ми розглянемо механізм консенсусу блокчейну Sui, дослідимо його еволюцію та переваги, які він надає. Sui використовує протокол консенсусу, розроблений для роботи з його об'єктно-орієнтованою моделлю.

Ми проаналізуємо особливості механізму консенсусу Sui, включаючи методи толерантності до помилок та оптимізації пропускної здатності, щоб зрозуміти, як ці елементи сприяють його інфраструктурі.

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

Відмова від відповідальності:

  1. Ця стаття передрукована з [Cointelegraph], Усі авторські права належать оригінальному автору [Нік М]. Якщо є зауваження до цього перевидання, будь ласка, зв'яжіться з Gate Learnкоманда, і вони оперативно цим займуться.
  2. Відмова від відповідальності: Погляди та думки, висловлені в цій статті, є виключно власністю автора і не становлять жодної інвестиційної поради.
  3. Переклади статті на інші мови виконуються командою Gate Learn. Якщо не зазначено інше, копіювання, поширення або плагіат перекладених статей заборонені.

Дослідження об'єктно-орієнтованої моделі Sui та мови програмування Move

Середній02.57
Ця стаття розглядає об'єктно-центричну модель зберігання даних SUI, її наслідки для обробки транзакцій та її потенціал.
Дослідження об'єктно-орієнтованої моделі Sui та мови програмування Move

Блокчейн Sui з'явився як новий протокол рівня 1 (L1), що включає передові технології для вирішення загальних компромісів рівня 1. Cointelegraph Research розкриває подробиці цього новачка в блокчейн-просторі.

Sui використовує Перемістіть мову програмування, який був розроблений з увагою до представлення активів та контролю доступу. Ця стаття розглядає об'єктно-центричну модель зберігання даних 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/the-sui-thesis-3018e3b34e58">Використання лінійної логіки в Move пов'язане з об'єктно-орієнтованою моделлю та сприяє розробці безпечного програмного забезпечення. Лінійна логіка, іноді називають логікою ресурсів, забезпечує, що ресурси, що представляють цифрові активи, не можуть бути скопійовані або ненавмисно знищені. Коли транзакціяпри виконанні операції з активом семантика Sui Move забезпечує оновлення стану активу таким чином, що відображає результат транзакції, споживаючи актив у його попередньому стані та виробляючи його у новому стані.

Об'єкти в SUI також можуть мати визначені контроль доступу та дозволи, яке підвищує безпеку та контроль за використанням активів після угоди.Це мітіГейтивразливості, що поширені на ланцюгах з обліковим записом і дозволяють атаки повторного входу. Уатака на повторний вхід, функція здійснює зовнішній виклик до іншого контракту перед оновленням свого власного стану, що дозволяє зловмисникам повторно виконувати дії, які повинні відбуватися лише один раз.

Це може призвести до несанкціонованих змін у стані контракту, таких як зняття більше коштів, ніж дозволено. Тому щопередачі власностів SUI явно визначено та атомарно, цей тип помилки неможливо станеться. Лінійна система типів Move гарантує, що один раз ресурс переміщено, його не можна використовувати знову, якщо це не було явно призначено.

Традиційна модель на основі облікових записів, які використовується в Solidity, з іншого боку, вимагає від розробників впровадження додаткових перевірок для запобігання таким помилкам. Наприклад, атаки на повторний вхід повинні бути уникнуті шляхом дотримання перевірки-ефекти-взаємодіїЗразок. Усі операції зміни стану (ефекти) повинні відбуватися після всіх перевірок, але перед будь-якими взаємодіями (зовнішні виклики). Цей шаблон, часто називається оптимістичним обліком, забезпечує оновлення змінних стану перед виконанням будь-яких зовнішніх взаємодій.

Хоча сама модель, спрямована на об'єкти, не зміцнює безпеку, вона може спростити процес розробки і полегшити написання безпечного коду. Хоча розумні контракти на Ethereum можуть бути офіційно перевіренимдля досягнення високого рівня безпеки цей процес може бути складним і витратним.

Solidity відома своїми відомо незрозумілими семантиками, що ускладнює завдання розробників щодо аналізу поведінки коду. Це збільшує ймовірність введення субтельних помилок та вразливостей безпеки.

SUI Move належить до сімейства мов, які намагаються спростити розробку безпечних розумних контрактів, вбираючи розумні фінансові примітиви в семантику мови з самого початку. Ще одним прикладом є мова виконання транзакцій Algorand blockchain (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вимагає, щоб баланс та стан кожного облікового запису були оновлені та синхронізовані по всіх шардах (Парачейнах). Збереження однорідності по всіх шардах складно, оскільки кожен шар повинен регулярно синхронізуватися зі світовим станом, що призводить до затримки та складності.

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

Об'єктно-центрична модель Суї дозволяє уникнути багатьох з цих проблем, розглядаючи кожен об'єкт як незалежна одиниця стану. Об'єкти можуть бути оброблені та керувані окремо без необхідності синхронізації глобального стану, а кілька транзакцій можуть бути оброблені одночасно без потреби у синхронізації між фрагментами. Це зменшує потребу у складній міжфрагментній комунікації та дозволяє більш просту та ефективну паралельну обробку.

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

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

Існує два основних методи паралелізації: метод доступу до стану (або детерміноване виконання) та оптимістичне виконання. метод доступу до станувикористовується SUI таSolana, транзакції оголошують, які частини стану вони будуть доступні, дозволяючи системі ідентифікувати незалежні транзакції, які можуть бути виконані паралельно.

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

Оптимістичне виконання, з іншого боку, якщо використовується мережами, такими як Monad та Aptos, спочатку припускається, що всі транзакції є незалежними і повторно виконує конфліктні транзакції у зворотному порядку. Хоча це простіше для розробників, це може призвести до обчислювальної неефективності.

Sui досягає розпаралелювання доступу до стану за допомогою своєї об'єктно-центричної моделі. Операції над одним об'єктом не впливають і не затримують операції над іншим, природно, дозволяючи обробляти їх одночасно. Ці ж структурні особливості спрощують розбиття бази даних транзакцій, тим самим спрощуючи розпаралелену обробку на одному вузлі.

Висновок

Підсумовуючи, об'єктно-орієнтована модель блокчейну Sui у поєднанні з мовою програмування Move усуває кілька ключових обмежень традиційних блокчейнів рівня 1. Можливість паралельної обробки транзакцій значно підвищує масштабованість і зменшує затримку.

Використання лінійної логіки та безпеки на основі можливостей забезпечує надійне управління ресурсами та контроль доступу, що потенційно знижує ризик помилок та вразливостей безпеки. Крім того, підхід Sui до управління складними активами, такими як NFT, спрощує взаємодію та покращує ефективність порівняно з традиційними моделями на основі рахунків. Ці функції роблять Sui помітним досягненням в галузі технології блокчейн.

У наступній статті ми розглянемо механізм консенсусу блокчейну Sui, дослідимо його еволюцію та переваги, які він надає. Sui використовує протокол консенсусу, розроблений для роботи з його об'єктно-орієнтованою моделлю.

Ми проаналізуємо особливості механізму консенсусу Sui, включаючи методи толерантності до помилок та оптимізації пропускної здатності, щоб зрозуміти, як ці елементи сприяють його інфраструктурі.

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

Відмова від відповідальності:

  1. Ця стаття передрукована з [Cointelegraph], Усі авторські права належать оригінальному автору [Нік М]. Якщо є зауваження до цього перевидання, будь ласка, зв'яжіться з Gate Learnкоманда, і вони оперативно цим займуться.
  2. Відмова від відповідальності: Погляди та думки, висловлені в цій статті, є виключно власністю автора і не становлять жодної інвестиційної поради.
  3. Переклади статті на інші мови виконуються командою Gate Learn. Якщо не зазначено інше, копіювання, поширення або плагіат перекладених статей заборонені.
Empieza ahora
¡Regístrate y recibe un bono de
$100
!