М'які форки проти жорстких форків: Історія розколів мережі Bitcoin та суперечок

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

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

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

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

Роль пропозицій щодо вдосконалення

Процес впровадження оновлень коду формалізовано через Bitcoin Improvement Proposals, відомі як BIPs. Ці документи готуються, проходять peer-review, публічно обговорюються та ретельно тестуються. Мета BIP — встановити приблизний консенсус у спільноті. Приблизний консенсус досягається, коли більшість людей задоволена, що заперечення проти пропозиції хибні або були враховані.

Після досягнення цього консенсусу наступний крок — інтеграція BIP у реалізацію клієнта програмного забезпечення, відомого як Bitcoin Core. Невелика кількість основних розробників має доступ до коміту в репозиторії коду. Це означає, що вони можуть завантажувати код на публічну платформу, визнану спільнотою. Однак їхня влада обмежена операторами вузлів.

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

Консенсус і сила вузлів

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

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

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

Визначення оновлень мережі: М'які проти жорстких форків

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

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

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

Природа жорстких форків

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

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

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

Характеристика М'який форк Жорсткий форк
Сумісність Зворотньо сумісний Несумісний
Необхідність оновлення Необов'язкове для деяких вузлів Обов'язкове для всіх
Результат Один ланцюг зберігається Ланцюг розколюється на два

Наслідки розколу

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

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

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

Війни за розмір блоку та Bitcoin Cash

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

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

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

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

Народження Bitcoin Cash

У серпні 2017 року розбіжності досягли точки кипіння. Учасники не змогли погодитися на єдиний метод масштабування. Група розробників і майнерів ініціювала жорсткий форк для збільшення ліміту розміру блоку. Це призвело до створення Bitcoin Cash (BCH).

Bitcoin Cash збільшив розмір блоку для більшої пропускної здатності транзакцій. Він прагнув реалізувати бачення peer-to-peer електронної готівкової системи з низькими комісіями. Розкол був суперечливим, обидві сторони претендували на представництво «справжнього» бачення оригінальної white paper.

З часу форку Bitcoin та Bitcoin Cash функціонують як повністю окремі мережі. Вони мають різні команди розробників, різні ринкові вартості та різні roadmap. Хоча вони ділять той самий генезис-блок та ранню історію, зараз це різні активи з різними філософіями щодо масштабування та корисності.

Подальші форки та фрагментація

Після розколу Bitcoin Cash відбулися інші жорсткі форки. У жовтні 2017 року запущено Bitcoin Gold (BTG). Його мета — децентралізувати майнінг шляхом зміни алгоритму proof-of-work. Створювачі хотіли зробити майнінг доступним для користувачів зі стандартними відеокартами, а не дорогим спеціалізованим обладнанням.

Ще один помітний розкол стався всередині мережі Bitcoin Cash. У листопаді 2018 року розбіжності щодо лімітів розміру блоку та технічних функцій призвели до створення Bitcoin SV (BSV). Прихильники BSV виступали за масивні розміри блоків для масштабування потужності до enterprise-рівнів.

Bitcoin Diamond (BCD) також з'явився наприкінці 2017 року. Він збільшив ліміт розміру блоку та скоригував загальну пропозицію монет. Кожен з цих форків намагався вирішити сприйняті недоліки основного протоколу. Однак успіх форку значною мірою залежить від підтримки спільноти та компетентності розробників. Більшість форків не зберегли тієї ж релевантності чи ринкової капіталізації, що й оригінальний ланцюг.

Segregated Witness: Альтернатива у вигляді м'якого форку

Хоча табір великих блоків обрав жорсткий форк, основна мережа обрала оновлення у вигляді м'якого форку під назвою Segregated Witness, або SegWit. Введений у 2017 році, SegWit був розумним інженерним рішенням проблеми масштабування без потреби в розколі ланцюга.

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

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

Виправлення malleability транзакцій

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

Відокремлюючи підпис від ID транзакції, SegWit забезпечив, що ID транзакцій не можна модифікувати. Це виправлення було необхідним для розвитку Lightning Network. Воно надало фундамент безпеки, потрібний для надійної роботи off-chain каналів платежів.

User Activated Soft Fork (UASF)

Активація SegWit стала ключовим моментом в історії управління. Вона включала стратегію під назвою User Activated Soft Fork, або UASF. Традиційно оновлення сигналізувалися майнерами. Однак майнери вагалися активувати SegWit.

У відповідь рух користувачів вирішив запускати версію програмного забезпечення (BIP 148), яка відхилятиме блоки від майнерів, що не підтримують SegWit. Це чинило економічний тиск на майнерів. Якщо вони не оновляться, їхні блоки відхилятимуть користувацькі вузли, і вони втратять дохід.

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

Taproot: Розширення приватності та смарт-контрактів

У листопаді 2021 року мережа активувала ще один значний м'який форк під назвою Taproot. Як і SegWit, це було оновлення з зворотною сумісністю. Воно ввело Schnorr підписи та Merkelized Abstract Syntax Trees (MAST).

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

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

Наслідки для функціональності

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

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

Масштабування без форків: Рішення рівня 2

З уясненням обмежень on-chain масштабування розвиток змістився до рішень рівня 2. Це вторинні протоколи, побудовані поверх основного блокчейну. Вони обробляють транзакції off-chain і використовують основний ланцюг лише для фінального розрахунку.

Найпомітніший приклад — Lightning Network. Він використовує state channels, щоб дозволити двом сторонам транзактувати необмежену кількість разів без запису кожної трансферу в блокчейн. Записуються лише початкові та кінцеві баланси. Це дозволяє майже миттєві платежі з низькою вартістю.

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

Сайдчейни

Сайдчейни — ще один механізм для розширення функціональності. Сайдчейн — це незалежний блокчейн, прив'язаний до основного ланцюга Bitcoin. Активи можна переміщувати між двома ланцюгами за допомогою two-way peg.

Сайдчейни можуть мати власні правила консенсусу. Вони можуть підтримувати швидші часи блоків чи різні функції, неможливі на основному ланцюзі. Наприклад, Liquid Network фокусується на швидких, конфіденційних транзакціях для бірж. Rootstock приносить смарт-контракти в стилі Ethereum до екосистеми Bitcoin.

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

Сучасні інновації та суперечки

Еволюція мережі триває з новими концепціями, які розширюють межі можливого. Введення SegWit та Taproot мимоволі дозволило нові типи зберігання даних. Це призвело до появи Ordinals.

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

Це створило спосіб мінтингу non-fungible tokens (NFTs) безпосередньо в блокчейні. Дані зберігаються в witness-частині транзакції, яка дешевша завдяки SegWit. Деякі користувачі святкують це як новий use case, що збільшує дохід майнерів, інші вважають спамом, що перевантажує мережу.

OP_CAT та скриптинг

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

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

Інтероперабельність та wrapped активи

Хоча внутрішні оновлення тривають, ширша криптоекосистема розробила способи використовувати Bitcoin на інших ланцюгах. Wrapped Bitcoin (WBTC) та Threshold Bitcoin (tBTC) — приклади токенізованих версій активу, що існують на блокчейнах на кшталт Ethereum.

WBTC покладається на custodian, який тримає реальні монети та видає токени. Це приносить ліквідність до DeFi-застосунків на інших мережах. tBTC намагається зробити це децентралізовано за допомогою threshold cryptography, уникаючи single point of failure.

Ці рішення дозволяють власникам брати участь у лендінгу, боргуванні та торгівлі на платформах, що підтримують складні смарт-контракти. Вони заповнюють прогалину між безпечним store of value та гнучким світом DeFi.

Висновок

Історія Bitcoin визначається боротьбою за баланс між стабільністю та інноваціями. Через механізми м'яких та жорстких форків мережа подолала глибокі розбіжності та технічні виклики. Розкол з Bitcoin Cash підкреслив складність досягнення консенсусу щодо масштабування, тоді як оновлення на кшталт SegWit та Taproot продемонстрували силу зворотньо сумісних покращень.

Сьогодні екосистема продовжує еволюціонувати через рішення рівня 2, сайдчейни та нові протоколи на кшталт Ordinals. Процес управління залишається повільним та обережним за дизайном, пріоритизуючи безпеку та цілісність децентралізованого реєстру понад усе. З появою нових технологій на кшталт fractal scaling та відновлених opcodes спільнота знову залучиться до суворого обговорення, що визначає цю цифрову економіку.

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