Проблема масштабованості біткойна — Вікіпедія
Ця стаття містить текст, що не відповідає енциклопедичному стилю. (січень 2018) |
Проблема масштабованості біткойна пов'язана з початковим обмеженням розробниками розміром в один мегабайт базової структури для зберігання даних (блока) у його блокчейні[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.
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, хард форк блокчейну биткойна, з'явився 1 серпня 2017 року (починаючи з блоку 478,559)[33][34]. Після хард форку власники біткойнів володіли рівними частками як біткойнів (BTC), так і Bitcoin Cash'а (BCH)[35]. Bitcoin Cash збільшив розмір блоку з одного мегабайта до восьми мегабайт без застосування SegWit[36]. Ввечері 1 серпня 2017 року BCH посідав третє місце за рівнем капіталізації серед всіх криптовалют (після BTC і Ethereum)[37]
Реалізація SegWit в серпні 2017 року була тільки першою половиною так званої «Нью-Йоркської угоди», відповідно до якої ті, хто хотів збільшити ефективний розмір блоку SegWit, скомпрометували тих, хто хотів збільшити розмір блоку хард форком[38]. Друга половина SegWit2x включає в себе хард форк в листопаді 2017 року для збільшення розміру блоку до 2 мегабайт[39].
SegWit був створений людьми, не пов'язаними з SegWit2x, і багато хто з них проти SegWit2x[40].
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 August 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 July 2017). Dispute could mean financial panic in bitcoin. Associated Press. Архів оригіналу за 19 липня 2017. Процитовано 19 July 2017.
- ↑ Suberg, William (18 July 2017). Suddenly, Bitcoin Hard Fork Looks Unlikely As Chinese Exchange Readies For SegWit. COINTELEGRAPH. Процитовано 18 July 2017.
- ↑ Castor, Amy (18 July 2017). CoinDesk Explainer: How BIP 91 Enacts SegWit While Avoiding a Bitcoin Split. CoinDesk. Процитовано 18 July 2017.
- ↑ Hertig, Alyssa (21 July 2017). BIP 91 Locks In: What This Means for Bitcoin and Why It's Not Scaled Yet. CoinDesk. Процитовано 21 July 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 July 2017). Bitmain Clarifies Its ‘Bitcoin Cash’ Fork Position. CryptoCoinsNews. Процитовано 27 July 2017.
- ↑ Popper, Nathaniel (25 July 2017). Some Bitcoin Backers Are Defecting to Create a Rival Currency. The New York Times. Процитовано 28 July 2017.
- ↑ Song, Jimmy (24 July 2017). Bitcoin Cash: What You Need to Know. MEDIUM. Процитовано 28 July 2017.
- ↑ Norrie, Adam (29 July 2017). Bitcoin Cash: Another Fork in the Road for Bitcoin. CryptoCoinsNews. Процитовано 29 July 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/