

Осиротілий блок — це блок, батьківський блок якого невідомий або відсутній у мережі блокчейн. На ранніх етапах розвитку блокчейн-технологій, зокрема в мережі Bitcoin, такі блоки становили технічну проблему для вузлів мережі. Під час роботи старих версій програмного забезпечення Bitcoin Core вузли могли отримувати і обробляти блоки навіть за умови відсутності або недоступності критичних даних про їх походження чи батьківські блоки.
Ситуація докорінно змінилася з випуском версії Bitcoin Core 0.10 на початку 2015 року. Це значне оновлення програмного забезпечення запровадило вдосконалені механізми валідації блоків і мережеві протоколи, які фактично усунули появу справжніх осиротілих блоків у буквальному значенні. Покращені процеси валідації гарантували, що блоки без підтверджених батьківських блоків більше не приймаються і не розповсюджуються мережею. Незважаючи на цю технічну еволюцію, термін «осиротілий блок» залишився у криптовалютній спільноті, хоча його значення з часом трансформувалося.
У сучасних дискусіях щодо блокчейну часто виникає плутанина між термінами «осиротілий блок» і «застарілий блок», хоча це різні поняття. Термін «осиротілий блок» і надалі широко використовується у криптовалютній сфері, але часто неправильно застосовується для позначення дійсних добутих блоків, які були відкинуті з головного блокчейну. З технічної точки зору ці блоки коректно називати «застарілими блоками» або «зниклими блоками».
Поширення терміну «осиротілий блок» у сучасному вжитку здебільшого пов’язане з тим, як клієнтське програмне забезпечення блокчейну відображає винагороди за блок. Якщо добутий блок не потрапляє до головного ланцюга, програмне забезпечення позначає відповідні винагороди як «осиротілі», що і спричинило закріплення цієї термінології серед більшості учасників криптоекосистеми. Відтак, навіть якщо ці блоки мають відомі та підтверджені батьківські блоки, у спільноті їх і надалі називають осиротілими, а не більш технічно коректним терміном «застарілий блок». Така мовна конвенція глибоко закріпилася у криптовалютній культурі, хоча з технічної точки зору є некоректною.
Застарілі блоки є природним наслідком розподіленої й децентралізованої структури блокчейн-мереж. Вони виникають, коли двоє або більше майнерів одночасно розв’язують криптографічну задачу і передають свої дійсні блоки у мережу майже в один момент часу. Таке одночасне надсилання призводить до тимчасового форку, що спричиняє поділ мережі на декілька конкуруючих версій реєстру транзакцій.
У разі такого поділу різні вузли мережі можуть першими отримати різні блоки залежно від свого географічного розташування та стану мережевого підключення. Це призводить до того, що одні вузли валідують і будують ланцюг на основі одного блоку, а інші — на основі альтернативного. Обидва блоки є криптографічно дійсними та відповідають усім критеріям консенсусу. Однак протокол блокчейну визначає, що лише один ланцюг визнається як основний.
Вирішення цього тимчасового форку відбувається за принципом найдовшого ланцюга, який є базовою засадою механізму консенсусу блокчейну. У процесі додавання нових блоків один із ланцюгів стає довшим. Мережа досягає консенсусу, приймаючи найдовший ланцюг як основний, а коротший ланцюг і його блоки ігноруються. Блоки з відкинутого ланцюга стають застарілими, а обчислювальна робота, витрачена на їх видобуток, фактично зникає.
Розподілений характер блокчейн-мереж означає, що передавання інформації між вузлами займає певний час — від мілісекунд до кількох секунд, залежно від якості мережі та географічної відстані. Така затримка створює умови, коли кілька дійсних блоків можуть бути добуті й розповсюджені до моменту досягнення консенсусу. Генерація застарілих блоків є невід’ємною рисою proof-of-work блокчейнів.
Генерація застарілих блоків — цілком природний процес у блокчейн-мережах, який у більшості випадків відбувається випадково, а не через навмисні дії. Імовірнісний характер майнінгу, мережеві затримки та глобальна розподіленість майнерів означають, що одночасне знаходження блоків є статистично неминучим. Це явище загалом не становить загрози, а лише певну неефективність системи.
Втім, застарілі блоки можуть створюватися навмисно, коли зловмисники намагаються вплинути на блокчейн через різні вектори атак. Досвідчені атакуючі можуть створювати альтернативні дійсні ланцюги з метою подвійного витрачання або реорганізації історії блокчейну. Такі атаки зазвичай потребують значних обчислювальних ресурсів і частіше вдаються на блокчейнах із низьким хешрейтом або за умов нестабільної роботи мережі.
Механізми безпеки у провідних блокчейн-мережах і економічні стимули, що узгоджують поведінку майнерів із цілями безпеки мережі, роблять успішні реорганізації ланцюга надзвичайно складними та дорогими. Чим довше блок залишається у головному ланцюгу, тим дорожче створити альтернативний ланцюг, який його замінить. Це забезпечує зростаючу впевненість, що записи у блоках стають постійними та незворотними.
Осиротілий блок — це блок у блокчейні, що не має батьківського блоку. Він виникає через затримки мережі або невідповідності даних вузлів. Такі блоки не потрапляють до основного ланцюга і стають недійсними після досягнення консенсусу мережею.
Осиротілі блоки з’являються, коли кілька майнерів одночасно знаходять рішення через затримки мережі та уповільнення блокчейн-мережі. Вони виникають, коли конкуруючі блоки створюються майже одночасно, і лише один підтверджується у головному ланцюгу, а інші стають осиротілими.
Осиротілі блоки спричиняють тимчасові форки мережі, зменшують винагороди майнерів, оскільки лише один ланцюг стає головним. Майнери втрачають винагороди за осиротілі блоки, проте мережевий консенсус згодом стабілізується без тривалих негативних наслідків.
Осиротілі блоки не потрапляють до головного ланцюга, тоді як блоки-«дядьки» — це дійсні блоки, створені під час майнінгу, але не обрані як прямі нащадки, і майнери отримують часткову винагороду залежно від їх віддаленості від головного ланцюга.
Майнери, як правило, не отримують винагороди за осиротілі блоки. Однак окремі блокчейни можуть передбачати спеціальні компенсації. Ethereum раніше надавав знижену винагороду майнерам осиротілих блоків, але припинив цю практику після переходу на proof-of-stake.
Оновлення механізмів консенсусу та впровадження шардингу підвищують ефективність синхронізації вузлів, скорочуючи кількість осиротілих блоків. Також варто оптимізувати затримки мережі та покращити швидкість розповсюдження блоків у мережевій інфраструктурі.
Bitcoin і Ethereum ігнорують осиротілі блоки й не включають їх до головного ланцюга. Ethereum використовує протокол Gossipsub для підвищення ефективності розповсюдження блоків. Осиротілі блоки не впливають на головний ланцюг жодної з цих мереж.











