Доказ роботи: дорого створювати, легко перевірити
Блок-заголовок містить хеш попереднього блоку, Merkle-корінь, що підтверджує всі транзакції, відміток часу, цільове значення складності та 32-бітний nonce. Блок вважається дійсним лише якщо подвійне SHA-256 цього заголовка нижче за цільове значення – і немає коротшого шляху до знаходження відповідного nonce, окрім грубого перебору з очікуваною кількістю спроб, яка дорівнює 2²⁵⁶ поділеному на цільове значення. Ця асиметрія – складно створити, миттєво перевірити – є основою безпеки доказу роботи: потока Bitcoin приблизно 700 ЕГц (7×10²⁰ хешів за секунду) і споживає близько 100 ТВт на рік лише для того, щоб ця головоломка залишалася дорогою для розв’язання.
Корекція складності: саморегулюючий механізм
Біткоїн прагне до середнього інтервалу між блоками в 10 хвилин. Кожні 2 016 блоків – приблизно два тижні – протокол перекалібровує цільове значення відношенням фактично минулих часів до очікуваних 20 160 хвилин, з обмеженням у 4 рази вгору або 0,25 вниз на ретаргетинг: блоки, що надходять швидше за очікуване, зменшують цільове значення (складніша головоломка), а блоки, що надходять повільніше, збільшують його (легша головоломка). Цей негативний зворотний зв’язок є надзвичайно стійким – коли Китай заборонив майнінг у 2021 році та хеш-потік мережі впав на 50% протягом ночі, складність скоригувалася протягом трьох ретаргентів і час блоків відновився приблизно через шість тижнів, без необхідності будь-якої координації за межами правил протоколу.
Block valid iff: SHA256(SHA256(header)) < target new_target = old_target × (actual_time / expected_time) [capped ×4 / ×0.25] P(attacker with fraction q catches up from z blocks) = (q/p)^z if q < p z=6, q=0.10 → P ≈ 0.10^6 ≈ 0.0001%
Забезпечення консенсусу типу ‘Байтоніанський генерал’ без знання, хто чесний
Задача про витривлення байтовських генералів (Lamport, 1982) досліджує, як N розподілених учасників досягають згоди, коли до f із них можуть брехати. Класична теорія потребує щонайменше N ≥ 3f+1 чесних учасників, що передбачає можливість ідентифікації окремих осіб. Прорив Біткоїна у 2008 році обходить цю проблему, не покладаючись на підрахунок голосів. Замість цього, кожному голосу приписується реальна обчислювальна вартість, що генерується за рахунок справжньої енергії. Блок є «голосом», який потребує реальних витрат енергії для виробництва, тому атакувачу необхідно контролювати більше 50% загальної потужності хешування мережі, щоб надійно обігнати чейну ланцюг – це атака 51%. Ноди дотримуються правила найдовшої ланцюга, завжди вважаючи ланцюжок з найбільшою сукупною долею доказів роботи за дійсним. Цей провідний консенсус експоненціально швидко збігається: ймовірність того, що атакуючий з часткою хешування q перегонить чейну ланцюг на z блоків відсталості, становить (q/p)^z, коли q < p, а саме при q = 0.10 та звичайному z = 6 підтвердженнях, ймовірність зміни становить приблизно 0.0001%.
Чому чесна гірнича діяльність є раціональним вибором
Гірнічання в кінцевому підсумку – це гра-теоретична рівновага, а не просто криптографія. Гірщики отримують винагороду за блок (3,125 BTC після зменшення на 50% у 2024 році, яке повториться кожні 210 000 блоків до обмеження в 21 мільйон монет) плюс комісії за транзакції, які стають домінуючою стимулюючою силою, коли винагороди зменшуються з часом. Підтримка 51% обчислювальної потужності коштувала б приблизно 10 мільярдів доларів у обладнання та близько 20 мільйонів доларів на день на електроенергію – значно більше, ніж будь-який реальний виграш від подвійного витрати, тому рівновага Неша передбачає чесне гірнічення: шахрайство суворо менш вигідне, ніж співпраця, що дозволяє безпосередньо працювати довірливій, неконтрольованій мережі без будь-якого центрального органу. (Не кожна ланцюг використовує цю точну механіку – Ethereum перейшов на доказ праведності у 2022 році, замінивши обчислювальну вартість заставленим забезпеченням, яке підлягає конфіскації за недбалість, що зменшило енергоспоживання приблизно на 99,95%, зберігаючи при цьому логіку «дорожнечі атаки».)
Frequently asked questions
Що робить видобування на основі доказів праці важким для підробки?
Блок є дійсним лише за умови, що подвійне SHA-256 його заголовка нижче цільового значення, і немає шляху знайти відповідний nonce, крім грубого вгадування — очікувана кількість спроб дорівнює 2^256 поділеному на ціль. Створення дійсного блоку навмисно дороге, але будь-який вузол може перевірити знайдене хеш за мікросекунди, що створює асиметрію, яка є основою безпеки доказів праці.
Як біткоїн регулює складність блоків, щоб час блоку був близько 10 хвилин?
Кожні 2016 блоків (приблизно два тижні) протокол перескасовує ціль у відношенні фактичного до очікуваного часу виконання, обмежене коефіцієнтом 4 вгору або 0,25 вниз на переналаштування. Цей зворотний зв’язок відновив стабільність блоків тривалістю 10 хвилин протягом приблизно шести тижнів після заборони видобутку в Китаї, яка вночі зменшила хеш-потік у два рази.
Що таке атака з 51% володіння та наскільки ймовірно вона має відбутися?
Правило найдовшого ланцюга означає, що вузли завжди слідують за ланцюгом із найбільшою сукупною долею доказів праці, тому нападнику потрібно більше ніж половина загальної хеш-потужності мережі, щоб надійно обігнати чесну ланцюг. При частці нападника q = 0,10 і z = 6 підтвердженнях ймовірність того, що він наздожене, становить приблизно 0,0001%, тому шість підтверджень є традирним порогом остаточності.
Спробуйте наживо
Усе, що вище, працює прямо у вашому браузері — відкрийте the simulation і змінюйте параметри під час роботи. Нічого не встановлюється, нічого не завантажується на сервер, уся модель живе в одній вкладці.
▶ Відкрити симуляцію the simulation