Огляд компромісів для різних реалізацій Sidechain PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Огляд компромісів для різних реалізацій Sidechain

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

Ця стаття є останньою в серії основних дизайнів сайдчейнів, які існують для біткойнів. Перед цим настійно рекомендується прочитати попередні частини: (1) Космічні ланцюги(2) Варіанти використання Spacechain(3) Softchains(4) Привідні ланцюги(5) Федеративні ланцюги.

Що таке сайдчейни в двох словах? Блокчейни, які дозволяють переміщувати ваші біткойни з блокчейну біткойнів до іншого сайдчейну. У цьому полягає проблема та труднощі з проектуванням сайдчейну — насправді ви не можете цього зробити. Ви не можете перемістити біткойн із блокчейну біткойн в інший блокчейн; це неможливо, оскільки єдине місце, де насправді існує ваш біткойн, — це блокчейн біткойнів. Вони фактично не можуть існувати ніде. Все, що дійсно можна зробити, це певним чином заблокувати свій біткойн у блокчейні біткойнів, а потім створити інші токени в іншому ланцюжку, щоб представляти ці біткойни. Найвище прагнення сайдчейну полягає в тому, щоб зробити це таким чином, щоб можна було перевірити, що ці токени існують лише 1:1 із справжніми біткойнами (просто), і де єдиний спосіб розблокувати біткойни в основному ланцюзі в будь-якій ситуації — це підтверджено заблокувати токени, якими ви законно керуєте в іншому ланцюжку (це дуже важко зробити безнадійним способом, що не зробить біткойн дорожчим для перевірки).

Майже всі труднощі, пов’язані з розробкою бічного ланцюга, зводяться до того, як розроблено цей механізм блокування та розблокування: як працює блокування, які умови необхідні для їх розблокування та як ці умови перевіряються та виконуються. Односторонні механізми, де ви можете лише заблокувати монети і ніколи їх не розблокувати, тривіально прості. Просто запишіть трохи біткойнів за допомогою OP_RETURN і вимагайте перевірки, щоб карбувати токени в новому ланцюжку, і все готово. Набагато складніше двосторонні механізми, що підтримують як замикання, так і розблокування. Поки що не розроблено жодного двостороннього механізму, за винятком тих, які збільшують вартість перевірки основного блокчейну біткойнів (softchains), або тих, які вводять нові припущення довіри щодо безпеки монет, заблокованих «у сайдчейні» (drivechains та федеративні ланцюги). .

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

Централізація видобутку

Усі різні проекти, через які я пройшов, за винятком Liquid, так чи інакше залежать від біткойн-майнерів для забезпечення безпеки сайдчейну. RSK, хоча це федеративна прив’язка, все ще використовує біткойн-майнери. Теоретично Softchains міг би використовувати щось інше, але якби він не забезпечував таку ж безпеку з підтвердженням роботи (PoW), як майнери біткойнів, то це відкривало б блокчейн біткойнів для атак відмови в обслуговуванні (DoS). Отже, насправді, якби програмний ланцюг був розгорнутий, він використовував би майнери біткойнів. Spacechains PoW явно базується на підтвердженні біткойн-майнерами транзакції зобов’язань для сайдчейну. Привідні ланцюги спеціально розроблені для майнінгу біткойнів за допомогою злиття. Немає можливості втекти від залучення майнерів до бічних ланцюгів, якщо все, що коли-небудь розгортається, окрім чистого об’єднаного сайдчейну.

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

Майнери повинні перевірити блокчейн, щоб займатися майнінгом, незалежно від того, чи передається ця функція аутсорсингу. Без перевірки ланцюжка вони не мають уявлення, чи містить блок, який вони майніть, лише дійсні транзакції; все, що потрібно, це один недійсний блок, щоб зробити знайдений блок недійсним і втратити всі гроші, які вони могли заробити. Однак ця вимога до перевірки не є причиною використання пулів для майнінгу: це передбачуваність винагороди. Майнер із 1% хешрейту лише дуже рідко знаходить блок і отримує всю винагороду, тоді як майнер із 1% хешрейту, який використовує пул, регулярно збиратиме приблизно 1% винагороди за блок, яку сукупно заробляє пул. Вартість перевірки невелика. Передбачуваність винагороди є перевагою продажу, ось чому розробники намагаються знайти спосіб отримати ті самі переваги, не вимагаючи централізованого пулу. Це дозволить майнерам не залежати від централізованої організації, яка контролює, які транзакції надходять у блок.

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

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

Привідні ланцюги? Вони стверджують, що вирішують цю проблему, але насправді це не так. Поняття драйвчейну полягає в тому, що творець блоку сплачує більшу частину зборів майнерам за видобуток їхнього блоку, залишаючи собі лише невелику частину. Ця невелика частка у світі надзвичайно низької норми прибутку — це більший прибуток, який можна отримати, що знову ж таки повертається до того, що ви зможете вивести інших майнерів з бізнесу, якщо ви це зробите самі. Навіть якщо ви припустите, що творці блоків драйвчейну не залишають собі жодної комісії, віддаючи 100% майнерам, навіщо їм це робити, якщо не було іншого аспекту цього бічного ланцюга, який вони могли б монетизувати? Ймовірно, це форма Витягувана вартість майнера (MEV), на якому майнери могли заробляти гроші, маючи той самий ефект централізації. У довгостроковій перспективі будь-який тип децентралізованого майнінг-пулу мав би залучати майнерів, які керують усіма цими вузлами бічного ланцюга на додаток до вузла основного ланцюга, що може стати дуже нереальною перспективою для дрібних майнерів. Це створило б штучну підлогу, яка б обмежувала децентралізований майнінг.

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

Ризики прив’язки та консенсусу

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

Softchains представляють дуже явний консенсусний ризик для основної мережі Bitcoin. По-перше, це підвищує вартість перевірки на програмний ланцюг, доданий лише для вузлів основного ланцюга, і залежно від розміру блоків або складності правил для перевірки це може бути незначним збільшенням або досить значним збільшенням. По-друге, будь-який консенсусний розкол через недетерміновану помилку може вплинути на основний ланцюг. Такий помилка була причиною розриву ланцюга це сталося в 2013 році. Через те, як працює база даних, яку біткойн використовує для читання та запису даних, деякі вузли «закінчують» час, коли вони можуть читати та записувати дані, і анулюють інакше недійсний блок. Оскільки ці операції були обмежені залежно від ресурсів окремого комп’ютера, не існувало узгодженої ситуації, яка спричинила б це, оскільки ресурси кожного окремого вузла різні.

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

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

Якщо така динаміка відбувається з приводними ланцюгами і майнери викрадають монети з прив’язки, у користувачів цього бічного ланцюга буквально не буде іншого вибору, крім активованого користувачем м’якого форка (UASF), щоб анулювати цю прив’язку. Це буде зовсім інша динаміка, ніж остання UASF; у 2017 році користувачі по суті грали в гру курки, де монети мали по обидва боки вилки. Обидва варіанти були доступні людям, які підтримували UASF. У випадку UASF, щоб зупинити крадіжку приводу, користувачі не матимуть обох доступних варіантів. Лише на стороні вилки UASF вони мали б монети; у ланцюжку спадщини вони не мали б нічого. У них буквально немає стимулів повертатися до застарілого ланцюга, якщо UASF зазнає невдачі та призведе до розриву ланцюга.

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

Обернути

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

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

Це гостьовий пост від Shinobi. Висловлені думки повністю належать їм і не обов’язково збігаються з думками BTC Inc або Bitcoin Magazine.

Часова мітка:

Більше від Журнал Bitcoin