Смарт-контракт простими словами – що це і кому потрібно

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

Що таке смарт-контракт?

Смарт-контракт походить від англійського терміну smart contract, що перекладається як «розумний контракт». Це комп’ютерний код, який записується в блокчейн – децентралізований ланцюжок блоків, що зберігається на безлічі комп’ютерів. І виконується такий код самостійно. Він дозволяє обмінюватися активами – грошима, акціями та іншими видами власності безпосередньо без участі третіх осіб.

У контракті прописані всі умови угоди і, якщо учасники їх виконують, автоматично отримують необхідне.

Смарт контракт простыми словами

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

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

У випадку зі смарт-контрактом є тільки – покупець, продавець і комп’ютерний алгоритм. Програма самостійно звіряє чи виконані всі умови угоди її учасниками і, якщо так, автоматично розподіляє активи. Покупцеві переходить нерухомість, продавцеві – гроші. Це, звичайно, ідеальний варіант до якого сучасному світу ще далеко.

Смарт контракт на блокчейне

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

Розумний контракт сам все перевіряє і сам себе виконує

Трохи історії

Не можна сказати, що розумні контракти з’явилися разом з криптовалютою в останні 9 років. Ідея витала в повітрі ще в 90-х роках минулого століття. Першим її описав відомий американський вчений і криптограф Нік Сабо. Зокрема, за його визначенням, розумний контракт – це «електронний протокол передачі даних, який забезпечує виконання умов контракту усіма сторонами»

Однак середовища, в якому розумні контракти могли б існувати, на той час не було. А тому описана ідея чекала свого часу. І він настав – в 2008 році з появою технології блокчейн і першої криптовалюти біткоін.

Все б чудово, однак можливості блокчейна біткоіну для створення смарт-контрактів вельми обмежені. На ньому можна програмувати найпростіші алгоритми, а тому розробники продовжували експериментувати далі.

Так з’явилася платформа Ethereum, створена Віталіком Бутеріним з нуля, на якій розумні контракти вже змогли постати у всій красі. У розробників з’явилася можливість створювати додатки, не запускаючи власний блокчейн. Все це завдяки тому, що смарт-контракти в Ethereum написані Тьюринг-повною мовою, тоді як в мережі біткоін повнота по Тюрінгу відсутня.

Як працює смарт контракт

Смарт-контракт і блокчейн пов’язані нерозривно. Адже комп’ютерний алгоритм повинен бути десь записаний і для цього використовується так званий децентралізований ланцюжок блоків blockchain.

Смарт-контракт має:

  • чітко прописані умови, при досягненні яких він буде виконаний;
  • цифрові підписи учасників договору;
  • доступ до предмету договору – інакше кажучи, до товарів або послуг, про які йде мова.

Смарт контракт може:

  • відслідковувати, чи виконані всі умови, прописані в ньому;
  • самостійно на основі попереднього пункту приймати рішення.

Прийнявши рішення розумний контракт:

  • завершує операцію, розподіляючи активи між учасниками;

або

  • якщо умови не виконані, накладає штрафи, пеню. Також може автоматично закрити доступ до активів при необхідності.

Активується смарт-контракт і починає виконувати запрограмовані дії за допомогою транзакції, відправленої з гаманця користувача, або повідомлення від іншого розумного контракту, переданого йому безпосередньо через мережу. Для того, щоб активувати розумні контракти Ethereum, знадобиться необхідна кількість газу (Gas), яким оплачуються транзакції в мережі Ефіру.

Смарт-контракт і зовнішній світ – оракули

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

Вони пов’язують smart-contract з різними джерелами даних за межами блокчейну. Наприклад, розумні контракти Etherium часто використовують оракул Oraclize.

Переваги розумних контрактів

Серед головних плюсів розумних контрактів виділяють такі:

  • Вони незмінні і добре захищені від несанкціонованого внесення змін або втрати даних, що забезпечується за допомогою децентралізованого зберігання.
  • Прозорість – всі зацікавлені користувачі можуть спостерігати за розвитком подій. При цьому самі учасники процесу зберігають конфіденційність.
  • Вони самостійно перевіряють умови і самостійно виконуються.
  • Смарт-контракти неможливо підкупити, перетягнути на свою сторону – тут діють чіткі математичні алгоритми.
  • Знижують витрати за рахунок усунення з процесу посередників.
  • Висока швидкість завдяки автоматизації – те, що сьогодні займає дні і навіть тижні, завдяки контракту може бути виконано буквально протягом декількох хвилин.
  • Стандартизація – чим далі, тим більше варіантів смарт-контрактів з’являється, з яких можна вибирати під свої потреби.

Уразливості смарт-контрактів

Розумні контракти все ще знаходяться на своїй експериментальної стадії розвитку. А тому передбачити при їх створенні всі можливі баги практично нереально. У всякому разі поки що. А критичні помилки нерідко можуть привести до непоправних наслідків.

Згадаймо перший децентралізований венчурний фонд the DAO на Ефіріумі. В результаті атаки з використанням виявленої хакером уразливості, фонд втратив більше 60 мільйонів доларів – вони поступово переводилися на рахунки зловмисника.

З інших недоліків розумних контрактів можна відзначити такі моменти:

  • Правове регулювання цієї сфери поки залишає бажати кращого.
  • Багато роботи і в удосконаленні програм-оракулів.
  • Доробки вимагає і сама технологія блокчейна, зокрема, як ніколи актуальні питання швидкості обробки транзакцій і масштабованості.
  • Відсутність гнучкості – всі умови чітко заздалегідь запрограмовані. В окремих випадках задекларована раніше перевага у вигляді незмінності може обернутися недоліком. Наприклад, якщо буде допущена помилка при введенні даних, виправити її неможливо.
  • Вірогідна і можливість, що дані можуть бути підмінені на зовнішньому джерелі інформації.

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

Уязвимости смарт контрактов

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

Багато хто почувши словосполучення «розумний контракт» відразу включає уяву і уявляє собі чи не всемогутню програму, що здатна вирішити насущні проблеми. Хоча на ділі смарт-контракти переважно виконують дуже прозаїчні завдання.

Як створити смарт контракт

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

Програмування смарт-контрактів в мережі Ефіріума відбувається на мові Solidity. В якості онлайн редактора і компілятора використовується Remix. Готовий код радять спершу залити в тестову мережу і виловити можливі баги.

У простих контрактах діє логіка «if-then-else», «when-do» – якщо … то … інакше. Часто дію смарт-контракту пояснюють на прикладі торгового автомата. Ви кидаєте долар і цим запускаєте наступну дію (якщо.. то) – у вас з’являється можливість вибрати товар (то… це). Коли вибір зроблений, на черзі наступна дія – ви отримуєте бажане.

Приклад смарт-контракту на Ефіріумі і не один можна знайти на etherscan.io. Точніше тут викладено тисячі вихідних кодів і в кожному можна детально вивчити логіку побудови коду. Ось зразок простої програми для голосування.

Пример смарт контракта на эфириуме

Восени 2017 року був запущений проект, покликаний максимально спростити створення смарт-контрактів для людей, які не розуміються на програмуванні. Платформа називається Etherparty. В даний час функціонує бета-версія майданчика. Розробники обіцяють, що за допомогою даного інструменту створювати розумні контракти на будь-якому сумісному блокчейні зможуть користувачі з нульовим рівнем знань.

Види розумних контрактів

Смарт-контракти сьогодні можна розділити на кілька видів. Все залежить від того, наскільки всі етапи їх виконання автоматизовані. Зокрема:

  • контракти, в яких всі стадії повністю прописані в програмному коді;
  • основна частина прописана на папері і запрограмований тільки, припустимо, етап проведення платежів.

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

Блокчейн-мережі і криптовалюта зі смарт-контрактами

Можливості смарт-контракту різняться в залежності від блокчейна, використовуваного для їх зберігання. Як уже згадувалося вище, розумні контракти найпростішого зразка можна створювати на блокчейне біткоіну. Найпопулярніша в даний час платформа для роботи таких контрактів – Ethereum.

Умные контракты Ethereum

Серед інших майданчиків відзначимо такі:

  • Форк бітокіна – Super Bitcoin, Bitcoin God;
  • NEO – цю платформу нерідко називають китайським Ефіром, оскільки принципи двох систем багато в чому схожі. Але головна перевага NEO полягає в тому, що тут підтримуються такі популярні мови програмування як Python, Go, Java.
  • EOS – наголос зроблений на асинхронні розумні контракти, які можуть виконуватися паралельно один з одним, що на порядок збільшує швидкість обробки даних.
  • NXT – платформи, де можна вибрати один з готових контрактів. Кількість поки не дуже велика. Створити власний можливості немає.
  • Cardano – платформа не вважає себе конкурентом Ефіріума, оскільки позиціонується розробниками як блокчейн третього покоління, в той час як Ethereum вони називають блокчейном другого покоління.
  • Sawtooth – представлений в кінці січня 2018 року блокчейн-консорціумом Hyperledger розподілений реєстр з обмеженим доступом. Підтримує смарт-контракти на мові Solidity.

Як би там не було, найбільш поширена криптовалюта для смарт контрактів в даний час – Ефіріум. Чи вдасться іншим потіснити його з цифрового Олімпу – покаже час.

Застосування смарт контрактів

Окреслимо головні області, в які можна успішно впровадити розумні контракти. Зокрема, це:

  • логістика;
  • аудит;
  • страхування;
  • кредитування;
  • охорона здоров’я;
  • бухгалтерський облік;
  • ідентифікація особистості;
  • реєстрація прав;
  • ігрова індустрія;
  • вибори і інші всілякі голосування;
  • краудфандінг і багато іншого.

Виборчий процес

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

Кредитування

Людина бере в кредит квартиру, машину або телевізор і щомісяця зобов’язана виплачувати n-ну суму банку. Якщо позичальник прострочив платіж за допомогою смарт-контракту замок автомобіля або житла буде заблокований, а телевізор перестане включатися.

Азартні ігри

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

Оренда житла

Візьмемо в якості іншого прикладу сферу оренди житла. Взаємодіяти між собою орендодавець і орендар можуть за допомогою смарт-контракту. Розумний контракт переведе власнику нерухомості гроші, коли орендар отримає ключі. Якщо оплата за будь-який місяць буде прострочена, і зовсім заблокує вхід в приміщення квартиронаймачу. Звісно в разі, якщо використовується «розумний» замок з доступом до інтернету.

ICO

І якщо в більшості цих областей застосування розумних контрактів тільки знаходиться на стадії планування або тестування, то в сфері первинного розміщення токенов (ICO) вони вже щосили використовуються. З їх допомогою тисячі проектів збирають гроші на свій розвиток. Смарт-контракт для ICO, наприклад, може бути розроблений таким чином, що в разі, якщо кампанія зі збору коштів провалиться, гроші будуть повернуті вкладникам.

Смарт-контракт – приклад з реального життя

За складністю смарт-контракти бувають різні. Одні представляють собою найпростіші алгоритми, інші – складні моделі, які вимагають значно більше обчислень. Як приклад перших можна привести мультипідпис – multisig. Припустимо, сторони договору один одному не довіряють. Вони заморожують за допомогою розумного контракту певну кількість грошей. Надалі витратити їх можливо тільки в тому випадку, якщо свій підпис поставило більше половини учасників, що зараз активно вже використовується.

Більше конкретики!

Застосування смарт-контракту в нерухомості – вже можна вважати складним варіантом. Вперше в світі квартира подібним чином була продана в Україні на правому березі Києва. Для проведення операції використовувався смарт контракт Ефіріуму, а також децентралізований американський маркетплейс Propy. Покупцем став радник цього майданчика, а також засновник видання TechCrunch Майкл Аррінгтон. Оплата відбувалася в криптовалюті Ефіріум. На даному етапі розвитку смарт-контрактів процес відбувався так:

  1. Покупець і продавець уклали контракт, і покупець вніс депозит, необхідний для оплати житла.
  2. Оскільки учасники угоди перебували в різних куточках світу, за допомогою майданчика локальному представнику покупця була видана довіреність від його імені, засвідчена місцевим нотаріусом.
  3. Propy робить необхідні дії по проведенню операції – оплата роботи оцінювача, всіляких зборів.
  4. Продавець зустрічається з представником покупця у нотаріуса для підписання документів.
  5. Відбувається перереєстрація права власності на покупця – дані вносяться до реєстру.
  6. Як тільки смарт-контракт отримує дані з реєстру, він розблокує гроші, і вони переходять до продавця.

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

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

как выглядит смарт контракт

Смарт-контракти – які перспективи?

Перспективи у смарт-контрактів справді величезні. Вони здатні кардинально змінити багато сфер життя: від нерухомості до азартних ігор, страхування, поставки товарів, голосувань. Однак тільки тоді, коли їх робота буде багаторазово протестованою і передбачуваною. Поки ж все знаходиться на стадії експериментів.

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

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

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






Leave a Reply

Your email address will not be published.

19 − seven =