dApp та смарт-контракти: поглиблений курс
Смарт-контракти
Як будуються, захищаються та управляються децентралізовані застосунки.
У цьому уроці
- Поширені ризики смарт-контрактів
- Що робить аудит
Ключові висновки
- 1Незмінний код означає, що помилки можуть бути катастрофічними
- 2Аудити шукають вразливості перед запуском
- 3Реентерабельність та неправильні дозволи — класичні експлойти
Підсумок уроку
Безпека смарт-контракту — це запобігання небажаним діям коду з реальними активами.
Ментальна модель
Смарт-контракти простими словами
Безпека смарт-контракту — це запобігання небажаним діям коду з реальними активами. Аудит смарт-контракту підвищує впевненість, але не є страховкою.
- Поширені ризики смарт-контрактів
- Що робить аудит
Механіка
Як розмірковувати про смарт-контракти
Аудитори перевіряють логіку, дозволи, граничні випадки та відомі класи вразливостей.
Програми винагород за знахідки помилок та час у продакшені дають додаткові свідчення.
Ключі оновлень та адміністраторські ролі можуть бути настільки ж важливими, як і сам код.
- Незмінний код означає, що помилки можуть бути катастрофічними
- Аудити шукають вразливості перед запуском
- Реентерабельність та неправильні дозволи — класичні експлойти
Приклад
Смарт-контракти у застосуванні
Помилка реентрабельності може дозволити зловмиснику здійснити повторний виклик контракту до оновлення балансів, спустошуючи кошти за відсутності захисту.
Поширені помилки
Як смарт-контракти збиває з пантелику
Логотип аудиту на сайті — недостатня підстава; потрібно знати, яку версію перевіряли та чи відповідає розгорнутий контракт перевіреній.
Нотатки про ризики
Перш ніж покластися на смарт-контракти
Реентрабельність, маніпуляція ціною оракула, неперевірені дозволи, помилкові оновлення та нескінченні апрували можуть створити катастрофічні шляхи збитків.
- Перевірте обсяг аудиту смарт-контракту.
- Перегляньте адміністраторські права або права оновлення.
- Уникайте непотрібних необмежених апрувалів.
Практика
Закріпіть смарт-контракти
- Перевірте обсяг аудиту смарт-контракту.
- Перегляньте адміністраторські права або права оновлення.
- Уникайте непотрібних необмежених апрувалів.
Повторення
Ключові терміни
- Оракул
- Сервіс, що передає реальні дані (наприклад, ціни) смарт-контрактам у ланцюжку.
- Смарт-контракт
- Код, що самовиконується у блокчейні та працює точно так, як написано, коли виконуються умови.
- Маніпуляція оракулом
- Використання хибного потоку цін для виведення коштів з протоколу.
- Блокчейн
- Спільний реєстр лише для додавання, реплікований на багатьох комп'ютерах, захищений криптографією та консенсусом.
- Механізм консенсусу
- Процес, за допомогою якого розподілена мережа погоджується на дійсному стані реєстру (наприклад, PoW, PoS).
Примітки до джерел
Редакційні посилання
Ці посилання є відправними точками для перевірки механізмів, перевірок ризиків та контексту продукту за цим уроком.
Перед тим як продовжити
Чи можете ви виконати ці завдання?
- Перевірте обсяг аудиту смарт-контракту.
- Перегляньте адміністраторські права або права оновлення.
- Уникайте непотрібних необмежених апрувалів.
Пов'язані матеріали
Читати далі
Контрольна точка
Завершити цей урок
Пройдіть перевірку, щоб зберегти прогрес, потім продовжуйте трек по порядку.
Закріпити цей урок
Відповідайте правильно на кожне запитання, щоб завершити урок.
Поширений ризик смарт-контракту — це…

