Блокчейн вважається демократичною технологією, яка лежить в основі біткоїна та інших криптовалют. Ідея використання «доказу роботи» (proof-of-work) — принципу, за яким записи транзакцій вносить той, хто виконав найбільші математичні обрахунки, мала б зробити криптовалюти децентралізованими. Проте, як виявилося, людина може зловживати найдемократичнішими технологіями.

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

Шукаючи нові рішення, експериментатори знайшли новий спосіб побудови блоків та винагороди людей, які готові на нього витрачати ресурси — стейкінг. На заміну «доказу роботи» прийшла ідея «доказу частки» (proof-of-stake). «Український капітал» продовжить розпочатий раніше розумовий експеримент та на словах створить криптовалюту, яка працює на «доказі частки».

Трохи теорії

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

В минулому тексті ми створили відносно робочий протокол криптовалюти «інфокоїн». Для того, щоб не заплутатися, нинішня криптовалюта буде мати іншу назву — нехай це буде «стейкоїн». Для тих, хто знайомий з протоколом інфокоїну, протокол стейкоїну на початкових етапах буде аналогічним. Швидко пройдемо етапи розвитку стейкоїну як децентралізованої цифрової валюти.

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

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

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

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

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

Що таке «доказ роботи» та майнінг

Ідея «доказу роботи» (proof-of-work) є способом уникнути такої ситуації, коли хтось з учасників мережі хоче обманути іншого та здійснити повторну витрату. Вона містить поєднання двох інших, з однієї сторони, парадоксальних, а з іншої — дієвих ідей:

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

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

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

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

Чому вони не є ідеальними

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

По-перше, існує ризик «Атаки 51%» — це одне з найвідоміших вразливих місць цього принципу. Ми пам’ятаємо, що правдивість підтвердження операцій полягає у складності обчислень, які потрібні для їх підтвердження. А що буде, якщо хтось матиме понад 50% потужностей мережі? Правильно, буде «Атака 51%» — вірогідність, що хтось з переважаючою частиною потужностей, ніж всі інші учасники мережі, зможе повністю контролювати її.

Раніше «Атака 51%» розглядалася як ризик лише на початку розвитку біткоїну. Тоді, коли криптоентузіазм тільки зароджувався, а майнінгом займалася мала кількість учасників, існував реальний ризик такого «заволодіння» мережею. З часом, коли біткоїн та майнінг стали популярними, всі заспокоїлися.

Однак, коли говорять про те, що більш ніж половина майнінгу відбувається в авторитарному Китаї, проблема «Атаки 51%» починає грати новими фарбами. Однак, дешевизна китайської електроенергії та легкий доступ до обладнання сприяв розвитку майнінгу в Китаї до нещодавніх подій.

Загалом вразливостей є набагато більше, а описану вище можна просто швидко пояснити. Навіть за умов, якщо не володієш більшою частиною, а просто не одним комп’ютером, є безліч можливостей впливати на мережу. Як мінімум — можна створювати збої, а як максимум — описане вище, але з меншою ймовірністю.

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

Стейкінг — альтернатива майнінгу

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

Одним із варіантів, який дозволить зберегти демократичність криптовалюти, забезпечити безпеку, але і не перетворити її у цифрову валюту центрального банку, є стейкінг (від stake – «частка»).

Цей принцип називають «доказом частки» (proof-of-stake). Якщо порівняти його з майнінгом та «доказом роботи», то записи підтверджує не той хто виконав найшвидше складне обчислення, а кого випадково обрав алгоритм серед власників якоїсь частки криптовалюти. Так зі стейкінгом і забезпечується робота блокчейну.

Для того, щоб брати участь в підтвердженні транзакцій, валідатору необхідно:

  • або мати у себе на гаманці якусь кількість криптовалюти — це принцип «чистого доказу частки» (pure proof-of-stake);
  • або заморозити у себе на гаманці якусь кількість криптовалюти — це принцип «бондового доказу частки» (bonded proof-of-stake).

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

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

Існують альтернативні версії стейкінгу. Одна з них — за принципом «делегованого доказу частки» (delegated proof-of-stake). За ним учасники мережі можуть обмінювати криптовалюту на «голоси», які можуть витратити для вибору свого делегата-валідатора. Він разом з іншими делегатами буде підтверджувати транзакції, а частину отриманої винагороди віддавати своїм «виборцям».

Іншим принципом є «ліквідний доказ частки» (liquid proof-of-stake). За ним виборці можуть делегувати не лише валідатора, а й передавати свої «голоси» іншому виборцю. Також існує «гібридний доказ частки» (hybrid proof-of-stake) — тут proof-of-stake може працювати поряд з proof-of-work.

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

Доказ частки: в чому його переваги та недоліки

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

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

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

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

Ну і ще однією перевагою цього протоколу є те, що більшість можливостей змахлювати в протоколі «доказу роботи» не буде з ним працювати. Найвідоміша «Атака 51%» можлива, але для неї треба багато коштів. Та й навіть після атаки постраждає сам нападник — більшістю криптовалюти володіє саме він. 

Однак, немає жодного протоколу без недоліків. Достатня кількість експертів стверджують, що «доказ частки» не є ідеальним варіантом для розподіленого консенсусного протоколу. Це, власне, і є однією з причин, чому найбільші криптовалюти не полишають протокол «доказу роботи» (хоч ефір планує).

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

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

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

Тож

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

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

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