Проблема масштабованості біткоїна
Проблема масштабованості біткоїна пов'язана з початковим обмеженням розробниками розміром в один мегабайт базової структури для зберігання даних (блока) у його блокчейні[1][2][3] . Таке обмеження продиктовано особливістю побудови блокчейну, як повністю реплікованої розподіленої бази даних, що вимагає постійного пересилання між усіма учасниками кожного нового елемента. Зменшення розміру блоку істотно обмежує ефективність потенційної DDoS-атаки. Якщо врахувати середній час на формування блоку (10 хвилин) і середній розмір інформації про транзакції, то для гарантованого включення в блок кількість транзакцій не повинна бути занадто великою — на рівні близько трьох транзакцій в секунду.
З ростом популярності біткоїна, кількість транзакцій збільшилася, але через обмеження максимального розміру блоку не всі транзакції «попадали» у блок відразу, періодично виникала черга. У травні 2017 роки ситуація значно погіршилася, очікування включення транзакції в блок могло сягати кількох днів[4][5].
В системі біткоїн для прискорення обробки транзакції користувач може самостійно призначити комісію. Регулярне виникнення черг призвело до збільшення зборів з транзакцій, але не вирішило проблему затримки обробки транзакцій. Це робить використання біткоїнів досить дорогим і призводить до зростання часу очікування підтвердження транзакції, особливо для невеликих платежів — зникає сенс використовувати їх, наприклад, при оплаті в кафе і барах[4].
Для розв'язання проблеми пропонуються різні підходи. Business Insider в 2017 році характеризував цю дискусію як «ідеологічну битву за майбутнє біткоїну»[6].
Форки
Форк блокчейна — поділ безперервного ланцюга на дві гілки. Такий поділ в мережі біткоїн є частиною алгоритму і відбувається регулярно в процесі майнінгу. Нові блоки завжди містять посилання на попередника. Якщо два блоки, сформованих різними майнерами, посилаються на один і той же блок-попередник, це і є розподіл. Система не дає автоматичної переваги. Нові блоки в якості попередника можуть вказати будь-якого з них. В результаті на деякий час мережа розділяється. У якийсь момент одна з гілок стане довшим і «відстаюча» відмирає, так як система вважає істинної найдовший ланцюг.
Блокчейн також може розділятись, коли розробники змінюють протокол визначення того, які блоки є дійсними[7].
Хард форк
Хард форком називають розподіл блокчейну на два окремі ланцюги в результаті використання двох різних протоколів[8]. Новий протокол також може розділити мережу, якщо всі учасники мережі не будуть його дотримуватись[7]. Наприклад, Ethereum Classic виник у результаті хард форку Ethereum через різне розуміння необхідних дій у відповідь на атаку на DAO[9][10].
Спільноти Bitcoin XT, Bitcoin Classic і Bitcoin Unlimited запропонували збільшення межі розміру блоку, як метод збільшення масштабованості. Однак підтримка обох пропозицій з часом падала[11][6].
Софт форк
Згідно CoinDesk, на відміну від хард форк, софт форк — це зміна протоколу, в результаті якого створені блоки визнаються дійсними і старим програмним забезпеченням[7]. Згідно Investopedia, софт форк також може розділити мережу, якщо неоновлене програмне забезпечення буде створювати блоки, які не вважатимуться дійсними за правилами нового протоколу[12].
Один із засновників і розробник Blockstream Пітер Уілл в грудні 2015 року запропонувала зміни в форматі софт форку, що отримали назву SegWit[13][14]. SegWit пропонує зберігати частину даних (відкриті ключі) за рамками блокчейна. CoinTelegraph припускає, що SegWit дозволить створювати нові рішення другого рівня зверху біткоїну[14].
Софт форк активований користувачем (User-activated soft fork (UASF)) є спірною ідеєю, яка досліджує, як виконати оновлення блокчейну, яке не підтримується тими, хто забезпечує потужності мережі[7].
Запропоновані рішення
Були запропоновані різні пропозиції щодо масштабування біткоїну. У 2015 році Джефф Гарзік представив BIP 100, а Гевін Андресен BIP 101[2]. У середині 2015 року деякі корпорації підтримували збільшення розміру блоку до восьми мегабайт[15].
- Bitcoin XT був запропонований в 2015 році для збільшення потужності обробки транзакцій біткоїну за рахунок збільшення межі розміру блоку[16].
- Bitcoin Classic був запропонований в 2016 році, щоб збільшити продуктивність обробки біткоїну за рахунок збільшення межі розміру блоку[17].
- У 2016 році було укладено угоду між деякими майнерами і розробниками, яке неофіційно називалося «Гонконгською угодою», в якій містився план, в ході якого було б розглянуто як пропозицю SegWit, зроблену в грудні 2015 року розробниками Bitcoin Core, так і збільшення межі розміру блоку до 2 МБ. Однак обидві угоди не мали успіху[18].
- Bitcoin Unlimited захищає інтереси майнерів за рахунок збільшення ліміту розміру блоку і підтримується майнінг-пулами ViaBTC, AntPool, інвестором Роджером Вертом і головним вченим Bitcoin Unlimited Пітером Різуном[19]. Пропозиція Bitcoin Unlimited відрізняється від Bitcoin Core тим, що параметр розміру блоку не є жорстко запрограмованим, а скоріше вузли і союз майнерів підтримують розмір, який вони хочуть, використовуючи ідею, яку вони називають «виникаючим консенсусом»[19]. Ті, хто стоїть за пропозицією Bitcoin Unlimited, стверджують, що з ідеологічної точки зору майнери повинні самі вирішувати питання масштабування, так як вони є тими, чиє обладнання підтримує мережу[20].
- BIP148 — це пропозиція, яка називається «Активований користувачем софт форк» (UASF) або «популістське повстання». Планувалося, що він буде запущений 1 серпня 2017 року, і спробує змусити майнерів активувати SegWit[21]. Це стало непотрібним, тому що майнери вирішили проголосувати за активацію SegWit, використовуючи схему BIP 91.
Реалізовані рішення
Segregated Witness (SegWit)
SegWit:
- Змінює структуру зберігання даних в кожному блоці біткоїну[22].
- Забезпечує підвищення пропускної спроможності транзакції, залишаючись сумісним з більш ранніми версіями програмного забезпечення біткоїну[22].
- Усуває транзакційну інертність, яка стала перешкодою для інших проектів[22].
- Запровадження Lightning Network стало реальним[23].
Активація
У травні 2017 року Digital Currency Group (не плутати з Цифровою Валютною Ініціативою MIT Media Lab) оголосила рішення, що зветься SegWit2x («Нью-йоркська угода»),[24] активізуюче SegWit при 80%-ному порозі загального хеш-рейта біткоїну, що сигналізує на біті 4; і підняти обмеження розміру блоку до 2 МБ протягом шести місяців з підтримкою, яка перевищує 80 % від загального хеш-рейта біткоїну[25].У червні 2017 року пропозиція SegWit була ще більш ускладнена твердженням про те, що вона може порушити патенти, подані в USIPO[26]. Станом на середину 2017 року пропозицію SegWit2x підтримувало понад 90 % хеш-рейта, однак пропозиція SegWit2x була спірною ще й через те, що робота над проектом обмежувалася групою розробників тільки за запрошеннями[24]. В середині липня 2017 року стало очевидно, що майнери підтримали реалізацію пункту про SegWit до 1 серпня 2017 року, тим самим намагаючись уникнути ризику хард форку мережі біткоїн[27][28][29]. 21 липня BIP 91 був заблокований, що означало, що оновлення SegWit активується на блоці 477,120[30]. До 8 серпня була досягнута ще одна угода, коли 100 % майнінг-пулів біткоїну оголосили про підтримку SegWit, хоча SegWit не був повністю активований до, як мінімум, 21 серпня, після чого майнери почали відмовлятися від блоків, які не підтримують SegWit[31]. Більшість біткоїн-транзакцій не використали оновлення, але вони і не були в змозі це зробити, оскільки стандартизація формату адреси BIP 173 не була завершена. За перший тиждень жовтня частка операцій з бітокоїном з використанням SegWit зросла з 7 % до 10 %[32].
Bitcoin Cash
Bitcoin Cash, хард форк блокчейну биткоїна, з'явився 1 серпня 2017 року (починаючи з блоку 478,559)[33][34]. Після хард форку власники біткоїнів володіли рівними частками як біткоїнів (BTC), так і Bitcoin Cash'а (BCH)[35]. Bitcoin Cash збільшив розмір блоку з одного мегабайта до восьми мегабайт без застосування SegWit[36]. Ввечері 1 серпня 2017 року BCH посідав третє місце за рівнем капіталізації серед всіх криптовалют (після BTC і Ethereum)[37]
Інші пропозиції
SegWit2x
Реалізація SegWit в серпні 2017 року була тільки першою половиною так званої «Нью-Йоркської угоди», відповідно до якої ті, хто хотів збільшити ефективний розмір блоку SegWit, скомпрометували тих, хто хотів збільшити розмір блоку хард форком[38]. Друга половина SegWit2x включає в себе хард форк в листопаді 2017 року для збільшення розміру блоку до 2 мегабайт[39].
SegWit був створений людьми, не пов'язаними з SegWit2x, і багато хто з них проти SegWit2x[40].
Lightning Network
Lightning Network — це проект, що знаходиться в розробці, метою якого є усунення проблеми масштабованості біткоїну шляхом масштабування «поза мережею». Він призначений для забезпечення оновлення стану мікроканалу без використання будь-яких блокувань, що робить мікроплатежі виправданими (і без комісії).
Примітки
- Hayes, Adam (18 жовтня 2016). The Three Major Bitcoin Protocols Explained. Investopedia. Процитовано 18 січня 2017.
- Andrew Marshall (2 березня 2017). Bitcoin Scaling Problem, Explained. The Coin Telegraph. Процитовано 4 липня 2017.
- Andreas M. Antonopoulos (April 2014). Mastering Bitcoin. Unlocking Digital Crypto-Currencies. O'Reilly Media. ISBN 978-1-4493-7404-4.
- Козловский, Сергей (1.08.2017). Биткоин распался на две валюты: как это произошло. Русская служба Би-би-си. Процитовано 1.08.2017.
- Jordan Pearson (14 жовтня 2016). ‘Bitcoin Unlimited’ Hopes to Save Bitcoin from Itself. Motherboard (Vice Media LLC). Процитовано 17 січня 2017.
- Oscar Williams-Grut and Rob Price (26 березня 2017). A Bitcoin civil war is threatening to tear the digital currency in 2 — here's what you need to know. Business Insider. Процитовано 2 липня 2017.
- Amy Castor (27 березня 2017). A Short Guide to Bitcoin Forks. CoinDesk. Процитовано 1 липня 2017.
- Hayes, Adam (21 березня 2017). Can Bitcoin Hard Fork?. Investopedia. Процитовано 8 червня 2017.
- Adinolfi, Joseph. Exclusive: Grayscale launches digital-currency fund backed by Silver Lake’s co-founder Hutchins. MarketWatch. Процитовано 27 квітня 2017.
- Wirdum, Aaron van. Rejecting Today’s Hard Fork, the Ethereum Classic Project Continues on the Original Chain: Here's Why. Bitcoin Magazine. Процитовано 27 квітня 2017.
- Alyssa Hertig (24 травня 2017). Keep Calm and Bitcoin On? Developers Aren't Worrying About a Fork. CoinDesk. Процитовано 1 липня 2017.
- Soft Fork. investopedia.com. Investopedia. Процитовано 21 липня 2017.
- Corin Faife (5 січня 2017). Will 2017 Bring an End to Bitcoin's Great Scaling Debate?. CoinDesk. Процитовано 4 липня 2017.
- Andrew Marshall (20 квітня 2017). SegWit, Explained. CoinTelegraph. Процитовано 1 липня 2017.
- Evander Smart (19 жовтня 2016). ‘Why is My Bitcoin Transaction Taking So Long?’ Here’s Why. The Coin Telegraph. Процитовано 4 липня 2017.
- Alex Hern. Bitcoin's forked: chief scientist launches alternative proposal for the currency. the Guardian. Процитовано 20 серпня 2015.
- Rizzo, Pete (19 січня 2016). Making Sense of Bitcoin's Divisive Block Size Debate. CoinDesk. Процитовано 22 червня 2017.
- Pete Rizzo & Alyssa Hertig (24 травня 2017). Bitcoin's New Scaling 'Agreement': The Reaction. CoinDesk. Процитовано 29 червня 2017.
- Alyssa Hertig (14 травня 2017). CoinDesk Explainer: The Bitcoin Unlimited Debate. CoinDesk. Процитовано 29 червня 2017.
- Pete Rizzo (20 березня 2017). CoinDesk Explainer: Bitcoin Unlimited: Mining Power Should Determine Hard Fork. CoinDesk. Процитовано 2 липня 2017.
- Alyssa Hertig (8 червня 2017). Bitcoin's 'Independence Day': Could Users Tip the Scales in the Scaling Debate?. CoinDesk. Процитовано 29 червня 2017.
- Hertig, Alyssa (23 серпня 2017). SegWit Goes Live: Why Bitcoin's Big Upgrade Is a Blockchain Game-Changer. CoinDesk. Процитовано 23 серпня 2017.
- van Wirdum, Aaron (23 серпня 2017). Segregated Witness Activates on Bitcoin: This is What to Expect. Bitcoin Magazine. Процитовано 24 серпня 2017.
- Alyssa Hertig (23 червня 2017). Top Secret? Bitcoin Scaling Plan Segwit2x Leaves More Questions Than Answers. CoinDesk. Процитовано 29 червня 2017.
- Leading bitcoin ecosystem participants reach consensus on scaling issue. Econo Times (Econo Times). 25 травня 2017. Процитовано 23 червня 2017.
- Segregated Witness and the Possibility of Patent Infringement. Nigeria Times (Nigeria Times). 3 червня 2017. Архів оригіналу за 28 липня 2017. Процитовано 23 червня 2017.
- CNBC (14 липня 2017). Dispute could mean financial panic in bitcoin. Associated Press. Процитовано 19 липня 2017.
- Suberg, William (18 липня 2017). Suddenly, Bitcoin Hard Fork Looks Unlikely As Chinese Exchange Readies For SegWit. COINTELEGRAPH. Процитовано 18 липня 2017.
- Castor, Amy (18 липня 2017). CoinDesk Explainer: How BIP 91 Enacts SegWit While Avoiding a Bitcoin Split. CoinDesk. Процитовано 18 липня 2017.
- Hertig, Alyssa (21 липня 2017). BIP 91 Locks In: What This Means for Bitcoin and Why It's Not Scaled Yet. CoinDesk. Процитовано 21 липня 2017.
- Hertig, Alyssa (8 August 2017). It's Official: Segregated Witness Will Activate on Bitcoin. CoinDesk. Процитовано 9 August 2017.
- Suberg, William (9 жовтня 2017). Bitcoin: $4600, 50% Dominance, Forks Leave Altcoins No Room For Moon. CoinTelegraph. Процитовано 9 October 2017.
- Coleman, Lester (25 липня 2017). Bitmain Clarifies Its ‘Bitcoin Cash’ Fork Position. CryptoCoinsNews. Процитовано 27 липня 2017.
- Popper, Nathaniel (25 липня 2017). Some Bitcoin Backers Are Defecting to Create a Rival Currency. The New York Times. Процитовано 28 липня 2017.
- Song, Jimmy (24 липня 2017). Bitcoin Cash: What You Need to Know. MEDIUM. Процитовано 28 липня 2017.
- Norrie, Adam (29 липня 2017). Bitcoin Cash: Another Fork in the Road for Bitcoin. CryptoCoinsNews. Процитовано 29 липня 2017.
- Pollock, Darryn (2 August 2017). Bitcoin Cash Third-Biggest Cryptocurrency On First Day of Creation. COINTELEGRAPH. Процитовано 2 August 2017.
- Haywood, Matthew (16 серпня 2017). Segwit2x, 'The New York Agreement'. bravenewcoin.com. Процитовано 6 October 2017.
- Hertig, Alyssa (12 липня 2017). Explainer: What Is SegWit2x and What Does It Mean for Bitcoin?. CoinDesk. Процитовано 6 October 2017.
- https://bitcoincore.org/en/2017/08/18/btc1-misleading-statements/