Розбір польоту: смартконтракти

Сам термін смартконтракт (англ. Smart contract — «розумний контракт») ввів Нік Сабо – вчений у галузі інформатики, криптографії, а також в галузі права, відомий у зв’язку з дослідженнями в області розумних контрактів та криптовалюти.

Ще у 1996 році він визначив такий документ, як «набір обіцянок у цифровій формі, включаючи протоколи, у межах яких Сторони виконують інші свої обіцянки». Можна сказати, що йдеться про врегулювання відносин сторін шляхом закріплення їх вираженої волі у формі певного коду, який придатний для зчитування комп’ютером.

З розвитком комп’ютерної техніки та технології blockchain ідея автоматичних контрактів, які самостійно виконуються за допомогою алгоритмів, стала популярною. І сьогодні з багатьма юридичними нюансами вона все-таки втілюється в життя.

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

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

Поділ контрактів

Умовно контракти, які мають певний елемент «розумності», можна поділити на такі категорії:

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

Яким чином відбувається їх реалізація? 

1. Паперова (електронна) форма з автоматизованою системою грошових транзакцій.

На сьогодні такий формат врегулювання правовідносин широко поширений у світі та, зокрема, в Україні. Прикладом може бути застосування механізму заморозки коштів на рахунку платника та їх автоматичне списання на користь отримувача коштів у разі настання певної обставини. Для реалізації такого механізму залучається фінансова установа, а сам такий договір, наприклад, може бути підписаний фізичною особою одноразовим електронним ідентифікатором відповідно до Закону України «Про електронну комерцію».

Таким чином, маємо договір, який укладено без використання паперу з елементом автоматичного виконання певних дій у разі настання вказаних у договорі обставин. Такий договір може бути та в формі публічної оферти та розміщуватися на вебсайті. Отже, відразу після підписання договору та виконання певних дій запускається алгоритм, який діє за принципом «if – then» – якщо настає певна обставина, відбувається відповідна дія з коштами на банківському рахунку однієї зі сторін договору.

2. Паперова (електронна) форма з елементами, які виконуються в автоматичному режимі.

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

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

3. Паперова (електронна) форма та її точна копія, записана комп’ютерним кодом.

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

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

Отже, у програмі має бути:

  • введено такі поняття (variables) як послуги, строк, вартість;
  • додані функції (functions), які запускали б певні алгоритми в разі настання певної обставини (if – then), які можуть перевірятися через запити до відповідних систем (requests).
  • у функції може бути вказано порядок дій, наприклад, перевести визначену кількість коштів на рахунок виконавця. Для цього у функцію має бути передано атрибути (attributes), а саме – кількість коштів, рахунок, з якого має бути проведено списання та на який мають бути зараховані кошти.

У вказаній досить спрощеній частині логіки комп’ютерної програми необхідно буде також визначити критерій оцінки належного надання послуг, що у разі повної автоматизації правовідносин також має бути зроблено програмою. Тож необхідно вбудовувати додаткову програму, яка аналізувала б текст консультації, що є окремим, значно ширшим завданням. Ще одне важливе питання – яким саме чином проходитимуть розрахунки та як програма на них впливатиме? Одним із можливих варіантів є надсилання платіжного доручення в банк платника, але в цьому разі програма не має повного контролю над виконанням договору, як це було задумано.

А коли щось піде не так? Чи зможуть сторони, пославшись на такий «комп’ютерний договір», відстояти свої порушені права чи законні інтереси в суді? Можливо, але лише в тому разі, якщо буде письмовий договір, а на комп’ютерну програму посилатимуться як на умови виконання договору, які сторони вирішили закріпити у такій формі на виконання самого контракту. Зробити однозначний прогноз фактично неможливо.

4. Договір повністю у формі комп’ютерної програми.

Однією з мов, на якій розроблюються smart-контракти у межах Ethereum, є Solidity. Ця мова програмування дещо схожа на JavaScript. З її допомогою можна створити, наприклад, smart-контракт, у якому в межах певної громадської організації можна проводити голосування, де процес і підрахунок голосів буде повністю автоматизовано.

З іншого боку, можна зробити smart-контракт, у якому поставлятимуться певні товари, а оплата за них виражатиметься у криптовалюті, – наприклад, знову ж таки, – Етерах, які списуватимуться з балансу платника. При цьому все це відбуватиметься у межах blockchain, і, за словами багатьох дослідників, умови договору будуть можливі для трактування лише в одному ключі, так само як і їх виконання.

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

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

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

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


Точка зору автора може не співпадати з офіційною позицією редакції LegalHub