Переслано з: 2 хвилини на крипту
Про смарт контракти
— Що таке смарт контракти? Чи справді вони такі розумні? — поцікавився Микола.
— Десь такі ж розумні як комп'ютери років 40 назад: вміють виконувати простенькі алгоритми, які написав розробник.
Смарт контракт — це програма, яка складається з коду та даних. Можна виділити кілька властивостей:
-
Зберігаються у блокчейні за певною адресою. Тобто кожен валідатор зберігає його копію.
-
Виконують тальки те, що запрограмували. Контракт має чіткий набір команд (методів), які він може виконати. У разі виклику певної команди буде виконано саме ті інструкції, що в ній прописані.
-
Виконуються за запитом. Щоб контракт виконав певну команду, хтось має підписати та відправи транзакцію на його адресу. Валідатор, чия черга створювати блок, її виконає і запише її результуй. Інші валідатори підхоплять блок і теж запам'ятають зміни.
-
Зазвичай незмінні. Код контракту можна змінити, якщо це передбачає логіка самого контракту.
-
Можуть взаємодіяти з іншими контрактами. Тобто можуть викликати команди на інших контрактах чи питати в них данні.
-
Ізольовані. Не мають безпосереднього доступу до даних інших контрактів(але можуть спитати дані, якщо інший контракт передбачає таку команду) і можуть редагувати виключно свої дані.
-
Не мають доступу до зовнішнього світу чи глобального інтернету. Їм відомі лише дані всередині себе і про стан блокчейну зараз.
Токени, децентралізовані обмінники, кредитні протоколи, фармінги — це все приклади смарт контрактів.
Отож, смарт контракт — це невелика програма з певним набором характеристик.