Зрозумійте Sui Security
На цій сторінці представлено огляд основних гарантій, які Sui надає щодо безпеки.
Власники активів Sui та розробники смарт-контрактів можуть почати вивчати тут механізми, доступні для захисту своїх активів, і гарантії, які Sui надає їм. Розробники розумних контрактів також можуть дізнатися про загальну архітектуру безпеки Sui, щоб переконатися, що типи активів, які вони розробляють, використовують Sui для забезпечення безпечного досвіду для власників активів.
Перш ніж заглибитися в це, обов’язково прочитайте «Як працює Sui?» ознайомитися з основними компонентами Sui.
Особливості безпеки
Ми розробили Sui, щоб забезпечити дуже високі гарантії безпеки для власників активів. Ми гарантуємо, що активи на Sui можуть використовувати лише їхні власники відповідно до логіки, попередньо визначеної смарт-контрактами, які можна перевірити, і що мережа буде доступна для їх правильної обробки, незважаючи на те, що деякі валідатори, які керують Sui, не дотримуються протокол правильно (відмовостійкість).
Функції безпеки системи Sui забезпечують ряд властивостей:
Лише власник активу, яким він володіє, може дозволити транзакцію, яка працює з цим активом. Авторизація виконується за допомогою приватного ключа підпису, який відомий лише власнику активу.
Кожен може працювати зі спільними або незмінними активами, але додаткова логіка контролю доступу може бути реалізована за допомогою смарт-контракту.
Трансакції здійснюються з активами відповідно до попередньо визначених правил, встановлених творцем смарт-контракту, який визначив тип активу. Вони виражаються за допомогою мови Move.
Після завершення транзакції її наслідки, а саме зміни в активах, з якими вона працює, або створені нові активи, збережуться, а отримані активи будуть доступні для подальшої обробки.
Система Sui працює через протокол між набором незалежних валідаторів. Проте всі властивості безпеки зберігаються, коли невелика підмножина валідаторів не дотримується протоколу.
Усі операції в Sui можна перевірити, щоб переконатися, що активи правильно оброблені. Це означає, що всі операції на Sui видимі для всіх, і користувачі можуть використовувати кілька різних адрес для захисту своєї конфіденційності.
Валідатори визначаються періодично через блокування користувачів Sui та делегування маркерів SUI одному або кільком валідаторам.
Архітектура безпеки
Система Sui керується набором валідаторів, які обробляють транзакції. Вони реалізують протокол Sui, який дозволяє досягти згоди щодо дійсних транзакцій, поданих і оброблених у системі.
Протоколи узгодження, які використовує Sui, допускають частину валідаторів, які неправильно дотримуються протоколу Sui, завдяки використанню візантійського відмовостійкого широкомовлення та консенсусу. Зокрема, кожен валідатор має певну силу голосу, призначену йому через процес делегування/голосування користувачів за них за допомогою своїх токенів SUI. Sui зберігає всі свої властивості безпеки, якщо більше 2/3 частки призначено валідаторам, які дотримуються протоколу. Однак ряд властивостей аудиту зберігаються, навіть якщо більше валідаторів несправні.
Адреси та номер власності
Транзакція Sui є дійсною та може продовжуватися, лише якщо власник усіх належних активів, з якими вона працює, цифрово підпише її своїм особистим ключем підпису (наразі з використанням алгоритму EdDSA). Користувач може зберігати цей ключ підпису в секреті та не ділитися ним з іншими. Як наслідок, будь-яка інша сторона не може непомічено працювати з активом користувача, навіть якщо всі валідатори не дотримуються протоколу.
Приватний ключ підпису також відповідає публічній адресі в мережі Sui, яку можна використовувати для надсилання ресурсів користувача або дозволу смарт-контрактам визначати спеціальну логіку контролю доступу. Користувач може мати одну або кілька адрес, що відповідають декільком ключам підпису, для зручності чи конфіденційності. Адреса не потребує попередньої реєстрації, і надсилання активу на адресу автоматично створює цю адресу в мережі. Однак це означає, що користувачі повинні уважно перевіряти адресу одержувача переказів або сторони, залучені до будь-яких інших операцій, оскільки надсилання активів на неправильну адресу може мати незворотні наслідки.
Розумні контракти визначають типи активів і їх логіку
Усі активи мають тип, визначений у розумному контракті Sui. Sui надає кілька системних контрактів, таких як ті, що використовуються для керування власним токеном SUI, але також дозволяє будь-кому писати та надсилати спеціальні смарт-контракти. Транзакція з типом активу може викликати операції, визначені лише в розумному контракті, який визначив тип активу, і обмежена логікою в контракті.
З цієї причини користувачам рекомендується працювати зі своїми активами за допомогою смарт-контрактів, яким вони довіряють, які вони або інші, яким вони довіряють, перевірили, і розуміти логіку, яку вони визначають для операцій зі своїми активами. Смарт-контракти Sui визначаються як незмінні активи, щоб дозволити третім сторонам перевіряти їх, а також запобігати їх модифікації для підвищення впевненості. Мова смарт-контракту Move, яку використовує Sui, розроблена з урахуванням простоти аудиту та перевірки. Вас може зацікавити наш вступ до смарт-контрактів у Move.
Спільні активи дозволяють кільком користувачам оперувати ними за допомогою транзакцій; які можуть включати деякі з їхніх активів, а також один або кілька спільних активів. Ці спільні активи представляють дані та логіку, які використовуються для реалізації протоколів, які є посередниками між різними користувачами безпечним способом, відповідно до смарт-контракту, який визначив тип спільного активу. Sui дозволяє всім користувачам створювати транзакції зі спільними активами. Але тип смарт-контракту може визначати додаткові обмеження щодо адреси та способу використання спільних активів.
Остаточність угоди
Дійсна транзакція надіслана всім валідаторам для сертифікації, а її сертифікат також має бути надісланий усім валідаторам для завершення. Навіть якщо підмножина валідаторів не відповідає протоколу, транзакцію можна завершити за допомогою решти валідаторів, які правильно дотримуються протоколу Sui. Це досягається за допомогою використання криптографічних візантійських відмовостійких протоколів узгодження для трансляції та консенсусу, визначених протоколом Sui. Ці протоколи забезпечують як безпеку, тобто неправильні валідатори не можуть переконати правильних клієнтів у неправильному стані, так і живучість, тобто неправильні валідатори не можуть перешкодити обробці транзакцій.
Усі транзакції в Sui мають бути пов’язані з газовим активом, щоб покрити витрати на переробку Sui. Дійсна транзакція може призвести до статусу успішного виконання або перерваного виконання. Виконання може бути перервано через умову смарт-контракту, що визначає актив, або через те, що в ньому вичерпано достатньо газу для оплати вартості виконання. У разі успіху наслідки операції будуть уточнені; інакше стан активів в операції не змінюється. Однак газовий актив завжди отримує певну кількість газу, щоб пом’якшити атаки відмови в обслуговуванні на систему в цілому.
Клієнт-користувач може виконати процес подання транзакції та сертифіката самостійно або покладатися на сторонні служби для надсилання транзакції та взаємодії з валідаторами. Таким третім особам не обов’язково мати приватні ключі підпису користувачів і вони не можуть підробляти транзакції від імені користувачів. Вони можуть запевнити клієнта-користувача в тому, що транзакцію завершено за допомогою набору підписів від валідаторів, які засвідчують остаточність транзакції та її наслідки. Після цього користувачі можуть бути впевнені, що зміни, внесені в результаті транзакції, є остаточними.
Аудит і конфіденційність
Валідатори Sui надають користувачам засоби для читання всіх активів, які вони зберігають, а також історичних записів транзакцій, які вони обробили, які призвели до цих активів. Валідатори також надають криптографічні докази повного ланцюжка транзакцій, які сприяли стану активу. Користувачі-клієнти можуть запитувати та перевіряти цей ланцюжок доказів, щоб переконатися, що всі операції були правильними та результатом колективної угоди між валідаторами. Сервіси, які працюють з повними репліками, віддзеркалюючи стан одного або кількох валідаторів, проводять такі аудити регулярно.
Надзвичайний публічний аудит Sui також означає, що всі транзакції та активи в Sui є загальнодоступними. Користувачі, які дбають про свою конфіденційність, можуть використовувати кілька адрес, щоб отримати вигоду від певного рівня псевдонімності або сторонніх опікунських чи неопікунських послуг. Спеціальні смарт-контракти з додатковим криптографічним захистом конфіденційності також можуть надаватися третіми сторонами.
Цензурний опір і відкритість
Sui використовує встановлену модель делегованого підтвердження участі, щоб періодично визначати свій набір валідаторів. Користувачі можуть блокувати та делегувати свої токени SUI у кожній епосі, щоб визначити комітет валідаторів, які керуватимуть мережею Sui у наступній епосі. Будь-хто з більш ніж мінімальною сумою делегованої частки може керувати валідатором.
Валідатори керують мережею та надають винагороду користувачам, які делегували свій Sui для підтримки їх як валідаторів, за рахунок доходів від плати за газ. Валідатори з низькою надійністю та, у свою чергу, користувачі, які делегували їм свою частку, можуть отримати нижчу винагороду. Але частку користувачів не можуть конфіскувати ані зловмисні валідатори, ані будь-хто в мережі.
Цей механізм гарантує, що валідатори підзвітні користувачам Sui і можуть бути виключені за перших ознак ненадійності або неправильної поведінки, включаючи помічені спроби цензурувати дійсні транзакції. Завдяки вибору валідаторів і протоколу, з яким вони готові працювати, користувачі Sui також мають важливе значення для майбутньої еволюції системи Sui.
Подальше читання
Last updated