PoW або PoS: про вибір методу консенсусу для криптовалютных проектів

Новини криптовалюта

PoW или PoS: о выборе метода консенсуса для криптовалютных проектов

Сьогодні індустрія криптовалют використовує два основних методи консенсусу: Proof-of-work (PoW) і Proof-of-Stake (PoS), їх варіації і комбінації. За яким із них майбутнє?

Нескінченні дискусії на тему «PoW vs PoS» призводять до того, що поляризація думок в криптовалютном співтоваристві часто носить мало не релігійний характер. У цій статті співзасновник проекту Zano Андрій Сабельников (Andrey Sabelnikov) він же crypto_zoidberg робить спробу порівняти два основних методи консенсусу та перспективи їх використання в сучасних і майбутніх блокчейнах. Подальше зміст статті зберігає стиль і точку зору автора.

Поява PoS

Історія виникнення PoS йде в 2011-й рік, коли на старому доброму Bitcointalk стали висловлюватися ідеї консенсусу на основі голосування власників монет («холдерів») ,а не майнер, і підігрівало інтерес до них “марне” спалювання електрики при майнинге PoW.

Першою реалізацією стала криптовалюта PeerCoin (PPC), яка, як пізніше з’ясувалося, мала і ряд характерних для PoS недоліків. Але рубікон був пройдений, і почалося поступове осмислення нової парадигми.

Сьогодні є величезна кількість проектів, які так чи інакше використовують одну з різновидів PoS моделей другого покоління (DPoS, LPOS, POI, PoA). Незважаючи на те, що у всіх цих алгоритмів свої назви, з точки зору автора, в основному це варіації на тему PoS. Ми в кінці статті дуже коротко розглянемо кілька прикладів, які цікаві саме в контексті піднятої проблеми.

Проблема «Nothing at stake» у PoS-системах

Майже кожна модель PoS піддається критиці за те, що вона вразлива до так званої проблеми «Nothing at stake». Ідея цієї атаки пов’язана з явищем, відомим як «Трагедія загальних ресурсів» (Tragedy of the commons). У загальному вигляді «трагедії загальних ресурсів» описуються як ряд явищ, в яких інтереси індивідів можуть суперечити благ загального користування, і як найбільш простий приклад наводять спільне пасовище, нераціональне користування яким з боку більшості призводить до виснаження цього ресурсу цілком. Таким же чином може розглядатися довільний блокчейн-проект, в якому як благо загального користування мається на увазі можливість майнінгу і отримання винагороди.

На відміну від PoW, де майнінг є обчислювально дорогим процесом і може одночасно здійснюватися стосовно якоїсь однієї ланцюжка, PoS майнинге не робиться ніяких вагомих додаткових витрат/зусиль для голосування в альтернативній ланцюжку, іншими словами, майня так само другу ланцюжок, PoS-майнер нічого не втрачає (Nothing at stake). Очевидно, що програмне забезпечення проекту за замовчуванням не сприятиме проведенню атаки 51% шляхом майнінгу будь-яких доступних ланцюжків, але теорія ігор говорить про те, що, якщо індивідуальні інтереси будуть диктувати іншу стратегію, теоретичний PoS майнер модифікує код відповідним чином, дотримуючись цієї стратегії.

Для прикладу розглянемо умовний блокчейн c PoS і з вже емітованими 18 млн монет, де всі монети розподілені між 1 800 000 власниками рівними частинами (10 монет для кожного держателя). Якась частина власників (можливо, і всі) беруть участь у майнинге PoS, тому кожен раз, коли створюється блок, це робить один із 1 800 000 власників.

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

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

Вважається, що атака буде успішною, якщо майнеру вдалося мотивувати 51% PoS майнер на участь в атаці, і оскільки майнер обчислювально нічого не варто майнить будь-кількість ланцюгів, їх легко (дешево) мотивувати на участь в атаці.

Читайте также:
Індія завершує підготовку до регулювання криптовалют

Аналіз практичних аспектів

Не можна розглядати теорію ігор Nothing at stake, не враховуючи, що PoS майнер є власником монет, і особисто зацікавлений у збереженні/збільшення ціни монети. Вартість монети складається з величезної кількості чинників, але безпосереднім умовою існування ліквідності є фактична здатність мережі виконувати свою безпосередню функцію — надійно проводити платежі, і якщо мережа буде скомпрометована подвійний витратою через атаку 51%, наслідки можуть бути самі фатальні — починаючи з серйозних обвалів курсу і закінчуючи делістингом з бірж, які в першу чергу страждають від таких атак.

Таким чином, у випадку, якщо мережа переключиться на шкідливу ланцюжок, підкуплений PoS майнер ризикує тільки еквівалентом цінності своїх монет. Аналогічно з “Трагедією загальних ресурсів”, середній PoS-майнер мотивується особистою вигодою більше, ніж турботою про безпеку мережі. Якщо його власна прибуток (у разі, коли він виграє блок під шкідливої альтернативної ланцюжку) буде більше, ніж його потенційна втрата (тобто понад 10 монет), тоді у майнера все ще буде мотивація приєднатися до атаки.

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

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

PoW или PoS: о выборе метода консенсуса для криптовалютных проектов

Глобальне розподіл багатства

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

PoW или PoS: о выборе метода консенсуса для криптовалютных проектов

Розподіл BTC за адресами

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

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

Тут ми не будемо оперувати словом Bitcoin в аналізі атак 51%, який піде нижче. Це було б неправильно з ряду об’єктивних причин: Bitcoin — унікальний проект, і він існує в трохи інший технологічної реальності (практично неможливо знайти додатковий хэшрейт для такого великого гравця, важко підкупити ASIC-майнер в силу специфічності їх обладнання тощо). Ми будемо аналізувати далі знеособлений проект.

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

PoS

Як ми з’ясували вище, для того щоб мотивувати PoS майнер хабарем, вона повинна бути не менше еквіваленту цінності наявних у майнера монет. Якщо ми встановлюємо розмір хабара, наприклад, до 0.01 монети, ми охоплюємо тільки власників гаманців для першої і другої сходинки (0.15% всіх монет), для решти мотивація буде недостатньою. Якщо збільшити до 1 монети, то ми вже охоплюємо 4 рядки, і це вже 4.57% — все ще безнадійно мало. Для того щоб досягти 51%, нам доведеться дійти до рядка з балансами в 100-1000 монет. Хабар у 100 монет охопить тільки 38.44% монет, а в 1000 монет охопить вже 58.29%, тому вважаємо на око — хабар в 750 монет може переконати 51% майнер взяти участь в атаці.

Читайте также:
BioCoin і Talkbank випустили першу в Росії криптовалютную карту

PoW

Припустимо, винагорода за блок на даний момент становить 12.5 монет, і, грубо кажучи, видобуток 6 блоків (кількість підтверджень за замовчуванням) повинна коштувати не більше 75 монет (еквівалент вартості цих монет, з точки зору вартості хэшрейта). Це дуже важливо — фактично вартість атаки 51% дорівнює 75 монет (76, якщо комусь важливо). Це не було проблемою раніше, в ті часи, коли майнеры самі налаштовували свої ферми на майнінг конкретного проекту, тому що він їм подобався, або тому, що їх обладнання ефективніше всього працювало з цим алгоритмом. Вільних потужностей, здатних обігнати головну ланцюжок, було ніде взяти. А тепер обладнання вільно здається в оренду на відкритих майданчиках (сервіси на кшталт Nicehash), і це робить атаку 51% на PoW проект як мінімум в 10 разів дешевше, ніж атака на аналогічний проект з PoS.

Але є ще пара тем для роздумів:

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

2. ASIC. У PoW таборі думки розкололися: одні вважають це злом і винаходять алгоритми хешування, які повинні максимально ефективно працювати на масовому обладнанні (ProgPoW, RandomX). Їх опоненти не напружуються і використовують швидкі криптостойкие алгоритми (SHA-256, SHA-3, Blake), стверджуючи, що ASIC — це насправді — захист від 51%. І на тлі викладених вище міркувань останні виглядають навіть більш життєздатними, але тільки до тієї хвилини, поки ASIC-пристрої раптово не знайдуть здатність майнить не один, а кілька споріднених алгоритмів (ця здатність є у деяких ASIC, наприклад, Giant+A2000), хоча такі пристрої і програють більш спеціалізованим. І потрібно ще враховувати один важливий нюанс — з моменту запуску проекту до появи у вільному продажі першого ASIC на нього може пройти досить багато часу, і весь цей час проект буде сильно вразливий.

3. Атака на основі Nothing At Stake — це суто теоретична атака з безліччю припущень. Наприклад, необхідною умовою є припущення, що у атакуючого є прямий канал зв’язку з усіма холдерами, яких він має намір підкупити, для того щоб організувати цю атаку. Це мало реалістично, по-перше. По-друге, це навряд чи можна буде втримати в таємниці від бірж, які будуть в змозі вжити заходів, щоб захиститися від цього (наприклад, тимчасово призупинити депозити або збільшити кількість підтверджень до неадекватної кількості). Коли ми говоримо про атаку проти 51% проти PoW, це дуже лінійний практичний сценарій, який відбувався не раз,наприклад, на Ethereum Classic.

Читайте также:
Крейг Райт атакує: чим обернеться спроба псевдо-Сатосі заявити авторські права на «Білу книгу» і код Биткоина

Як «посилити» консенсус

Як було сказано вище, проблема Nothing at stake є суто теоретичною, і немає жодного підтвердження реально здійсненим атак на базі цієї проблеми, однак, якщо після прочитання вищевикладеного склалося враження, що проблема неактуальна зовсім, то це не так. Проблема існує, хоч і на іншому рівні щодо PoW, і для її рішення додаються чималі зусилля. Серед існуючих рішень я виділив два основних напрямки, про яких розповім дуже коротко.

Рішення на основі Візантійські Fault Tolerance

Алгоритми BFT вивчаються вже близько 30 років, і існує хороша наукова база, яка доводить надійність алгоритмів цього сімейства, у тому числі і pBFT (надійність забезпечується у разі, якщо кількість нечесних учасників консенсусу в системі не перевищує однієї третини). Існує кілька проектів, які використовують цей підхід для здійснення або посилення консенсусу, і більшість з них стверджують, що у зв’язку з цим вони отримують властивість, яка називається «finality», що можна перевести як «остаточність». Під ним розуміється неможливість перебудувати ланцюжок (а, отже, скасувати транзакцію) після якогось кількості підтверджень. Нагадаю, що в класичному консенсусі Накамото перемикання на іншу подцепочку може статися на будь-яку глибину, і, отже, навіть після численних підтверджень немає 100% гарантії, що транзакція не буде скасована.

Розглянемо суть такого підходу на прикладі технології Casper, яка розробляється командою Ethereum.

Уточнення***: насправді в Ethereum розглядаються дві моделі PoS — одна під авторством Влада Замфира «A Template for Correct-by-construction consensus protocols» (Casper CBC) і друга під авторством Віталіка Бутерина і Вірджіла Гріффіта «Casper the Friendly Finality Gadget» (Casper FFG). У даній статті ми розглянемо останній варіант, оскільки він швидше за все буде використаний в Ethereum. Докладніше про відмінності цих підходів читайте в цій статті.

Casper FFG позиціонується як поліпшення моделі консенсусу, потенційно застосовне до будь-PoW системі, і архітектурно являє собою надбудову над PoW. Основна ідея полягає в тому, що раз в 100 блоків група PoS валідаторів динамічно формує чекпоїнти. Для того щоб стати валідатором, потрібно сформувати спеціальний депозит, асоційований з адресою валідатора, і надалі цей депозит може бути використаний для стимулювання чесної поведінки валідатора (про це нижче). Алгоритм безпечний, поки ⅔ з валідаторів ведуть себе чесно, при тому, що ⅔ визначаються саме за кількістю монет у гаманці.

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

Таким чином, з точки зору протоколу Casper FFG, після двох чекпойнтов блоки володіють властивістю «finality», тобто якщо ⅔ валідаторів два рази підтвердили чекпоїнти в ланцюжку, то блок, що знаходиться під чекпойнтами, не може бути скасований.

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

Читайте также:
Coinbase відкриє торгівлю токенами-акціями

Гібридні рішення

Також є ряд проектів, у яких стійкість консенсусу досягається за рахунок гібридизації PoW і PoS. Найчастіше з гібридом PoW/PoS асоціюють проект Decred. Вони використовують систему тікетів, які купуються за певну кількість монет, і ці тікети отримують право голосувати за блок через якийсь час, і далі ймовірність підтвердити блок для тікета зростає з часом — чим більше вік, тим більше шансів (в якомусь сенсі це теж є системою депозитів). У цій статті наводиться доказ Jake Yocom-Piatt, в якому стверджується, що в мережі Decred вартість атаки 51% для атакуючого, має незначну кількість PoS, буде в 20 разів більше, ніж для Bitcoin. Однак при розрахунках з якоїсь причини вказується вартість купівлі обладнання, незважаючи на те, що в таких моделях прийнято підраховувати вартість оренди хэшрейта на час проведення атаки.

Іншим цікавим прикладом гібридного PoW/PoS є Zano, проект, заснований на технології конфіденційності. Насамперед, згідно теорії Nothing at stake, атакуючий повинен мати можливість комунікації з холдерами, щоб переконати їх взяти участь в атаці. У разі анонімної кріптовалюти, в блокчейне якої немає інформації ні про місце, ні про балансах гаманців, це зробити буде ще складніше.

Для того щоб захиститися від Long Range атаки, а також від проблеми Nothing at stake, в Zano використовується спеціальне правило вибору ланцюжка (fork choice rule), яке аналізує не сумарну складність всього ланцюжка (від генезису), а завжди порівнює тільки дві подцепочки відносно точки розгалуження і воліє таку гілку, яка мінімально змінює співвідношення PoW складності до PoS складності, при цьому зберігши або збільшивши кумулятивну складність. Таким чином, для того щоб реалізувати атаку 51%, навіть якщо атакуючому вдалося підкупити якусь кількість PoS майнер, йому також доведеться інвестувати значну кількість грошей для забезпечення PoW-частини атаки, що в кінцевому підсумку набагато дорожче, ніж атака на класичний PoW або PoS за від окремо.

Резюме

Незважаючи на потенційне протиріччя ідей децентралізації, поточні рішення, що забезпечують «остаточність» («finality») на основі pBFT, виглядають більш захищеними від цілого спектра атак, включаючи Long Range атаки і Nothing at stake, а також відкривають можливість для реалізації надійних чистих PoS систем у майбутньому. Але питання про те, де знаходиться правильний баланс між централізацією і надійністю, залишається відкритим, що дає непогані шанси гібридним рішенням.

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

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

Source
Оцініть статтю
Популярний портал | Proexpress.com.ua | все найцікавіше в Україні

Thanks!

Our editors are notified.