Розмір блоку Bitcoin, пояснено

Що таке блоки?

Блок — це файл, у якому постійно записується інформація про найновіші транзакції в мережі Bitcoin (BTC). Кожен блок можна порівняти зі сторінкою у книзі бухгалтерського обліку, причому блоки з’єднуються між собою, утворюючи децентралізований реєстр, який є основою мережі Bitcoin.

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

На початку існування Bitcoin розмір блоків був обмежений до 36 мегабайтів даних транзакцій в кожному. Проте розмір блоку було зменшено до 1 МБ 14 липня 2010 року з метою запобігання загрозі транзакційного спаму, який може перевантажувати мережу, та потенційним атакам типу розподіленого відмовлення в обслуговуванні (DDoS).

Однак універсального консенсусу щодо оптимального розміру блоку досягти не вдалося. Головні розробники передбачали, що в майбутньому кількість транзакцій у мережі може перевищити доступний простір у блоці, і незабаром після введення ліміту в 1 МБ почали обговорювати необхідність його підвищення. Відтоді, як ліміт у 1 МБ було введено, кількість транзакцій, які мережа BTC обробляє за секунду, коливається в межах від двох до семи.

Графік кількості транзакцій Bitcoin за секунду

Джерело: Blockchain.com

 

Чому розмір блоку має значення?

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

На початку 2013 року середній розмір блоку Bitcoin становив приблизно 125 кілобайтів. До травня 2015 року зростання популярності мережі призвело до збільшення розміру блоку на 240% порівняно з 2013 роком — з 125 КБ до приблизно 425 КБ. Однак у той самий час провайдер інструментів крипторинку TradeBlock оцінив, що блоки досягали ліміту в 1 МБ щонайменше чотири рази на день у середньому.

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

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

На той час TradeBlock оцінював, що “тричі з кожних 100 транзакцій, які за інших обставин були б прийнятними, зазнають затримок через проблеми з пропускною здатністю мережі”.

Чому варто збільшити розмір блоку?

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

4 травня 2015 року Гевін Андресен опублікував статтю під назвою «Чому збільшення максимального розміру блоку є нагальним завданням», ще більше акцентуючи на важливості дискусії щодо розміру блоку, попри те, що середній блок BTC тоді заповнювався лише на 30-40%. Андресен попереджав:

«Якщо кількість транзакцій у черзі стане занадто великою, це може призвести до перенасиченої мережі, яка займатиметься нічим продуктивним. Скоріш за все, люди просто припинять використовувати Bitcoin, оскільки підтвердження транзакцій стане все менш надійним».

Пізніше у травні Андресен заявив, що перейде до роботи над альтернативним клієнтом Bitcoin XT, якщо спільнота не зможе досягнути консенсусу щодо впровадження збільшення розміру блоку. Версія 0.10 Bitcoin XT була запущена в грудні 2014 року розробником Bitcoin Core Майком Хірном, який був відомим критиком ліміту в 1 МБ.

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

12 червня 2015 року онлайн з’явилася заява, підписана великими китайськими майнінг-пулами (F2pool, BTCChina, Antpool, Huobi та BW), з вимогою збільшити розмір блоків до 8 МБ, що свідчило про глобальний інтерес до таких кроків.

22 червня 2015 року Андресен опублікував Bitcoin Improvement Proposal (BIP) 101, який пропонував «замінити фіксований максимальний розмір блоку на 1 мегабайт на максимальний розмір, який з часом зростає передбачуваними темпами».

Що таке BIP101?

BIP101 пропонував підвищити максимальний розмір блоку до 8 МБ з 11 січня 2016 року, після чого цей ліміт мав збільшуватися лінійно, подвоюючись кожні 730 днів до січня 2036 року.

Ліміт у 8 МБ дозволяв обробляти до 24 транзакцій за секунду. Пропозиція BIP101 отримала схвальні відгуки від великої частини громадськості, зокрема від провідних китайських майнінг-пулів.

Проте Bitcoin-спільнота залишалася розділеною у питанні збільшення розміру блоку. Брем Коен, творець BitTorrent, 23 червня 2015 року опублікував статтю під назвою «Іронічна криза Bitcoin», в якій аргументував необхідність встановлення комісій за допомогою ринкових механізмів, зберігаючи ліміт у 1 МБ:

«Запропоноване “рішення” проблеми досягнення ліміту швидкості транзакцій — це підвищення цього ліміту з 1 мегабайта до 20 мегабайтів. Такий підхід суперечить духу Bitcoin».

Коен стверджував, що високі комісії свідчитимуть про надання Bitcoin реальної цінності. Також він додав:

«У довгостроковій перспективі винагороди за майнінг Bitcoin повністю зникнуть (існує чіткий графік цього), і залишаться лише комісії за транзакції. Спроби “вирішити” проблему комісій підриватимуть безпеку Bitcoin навіть у разі їх ідеального втілення».

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

… (Залишок статті буде перекладено точно дотримуючись розмітки та змісту).