Допис
Діліться своїми знаннями.
Порада щодо безпеки Sui Move: Не кидайте гарячу картоплю
У Суї кожен актив є об'єктом, а кожен об'єкт - маленька державна машина.
Однією з поширених моделей застосування є Hot Potato: структура без здібностей, яку потрібно споживати до того, як транзакція закінчиться або все це припиняється.
На це часто покладаються флеш-кредити. Квитанція повертається позичальникові і повинна бути повернута до протоколу для підтвердження погашення.
❌ Додати крапку до квитанції ✅ Ви щойно представили критичний вулн
Тепер позичальник може скинути картоплю і піти без погашення.
Можливість падіння Move дозволяє будь-кому знищити об'єкт, якщо ви навмисно не запобігаєте цьому, пропустивши здатність падіння.
Порада професіонала: перевірте кожну структуру у вашому протоколі.
🔴 Якщо це є зобов'язанням (наприклад, квитанція про флеш-позику), видаліть крапку 🟢 Якщо його не слід копіювати, видаліть копію 🔵 Якщо він не повинен бути глобальним, видаліть магазин
Sui Move надає вам низькорівневий контроль над семантикою активів. Зловживайте навіть однією здатністю, і примусове виконання порушується.
Поводьтеся з предметами обережно. Не кидайте гарячу картоплю
- SDKs and Developer Tools
- Transaction Processing
Відповіді
1Якщо Hot Potato - це структура без здібностей, навіщо комусь додавати краплю? За визначенням, він не повинен мати падіння чи будь-яких інших здібностей.:)
Крім того, я думаю, що було б краще мати додаткові поля для квитанції, як-от суму, яка була позичена, і відповідати їй, а не жорстко кодувати 10 MIST. Це краще проілюструє, як можна використовувати квитанцію.
Ви знаєте відповідь?
Будь ласка, увійдіть та поділіться нею.
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Зароби свою частку з 1000 Sui
Заробляй бали репутації та отримуй винагороди за допомогу в розвитку спільноти Sui.
- Чому BCS вимагає точного порядку полів для десеріалізації, коли структури Move мають названі поля?53
- Помилки перевірки кількох джерел» у публікаціях модуля Sui Move - автоматичне вирішення помилок43
- Невдала операція Sui: об'єкти, зарезервовані для іншої транзакції25
- Як обмеження здібностей взаємодіють з динамічними полями в гетерогенних колекціях?05