Біткойн стикається з ризиком атак на основі спотворення часу, нова пропозиція може вирішити проблеми безпеки

robot
Генерація анотацій у процесі

Біткойн безпекові ризики: атака на спотворення часу

Огляд

26 березня 2025 року один з розробників Біткойну запропонував нову пропозицію щодо покращення, відому як "Велике очищення консенсусу", яка є м'яким форком. Це оновлення має на меті виправити кілька тривало існуючих вразливостей і слабкостей у протоколі Біткойн. Одна з найбільш серйозних вразливостей відома як "атака на спотворення часу", що є основною темою цієї статті.

Біткойн безпека уразливість: атака на спотворення часу

Захист часових міток блоків Біткойн

Перед тим, як обговорити атаку на спотворення часу, давайте спочатку розглянемо поточні правила захисту від маніпуляцій з часом:

  1. Середній минулий час (MPT) правило: Часова позначка блоку повинна бути пізніше середнього часу останніх одинадцяти блоків.

  2. Правила часу блоків у майбутньому: на основі константи MAX_FUTURE_BLOCK_TIME, часова мітка блоку не може бути більш ніж на 2 години попереду середнього часу рівноправних вузлів. Максимально допустима різниця між часом, наданим вузлом, та місцевими системними годинниками становить 90 хвилин, як ще один рівень безпеки.

Правила MPT забезпечують те, щоб блоки не відкотилися занадто далеко в минуле, тоді як правила блоків майбутнього запобігають їх надмірному просуванню в майбутнє. Варто зазначити, що неможливо впровадити механізми, подібні до правил блоків майбутнього, для запобігання наявності в блоках часових міток з минулого, оскільки це може вплинути на початкову синхронізацію блокчейну. Атака на спотворення часу передбачає підробку часових міток, щоб вони далеко поверталися в минуле.

Біткойн безпека вразливість: атака на спотворення часу

Обчислювальні помилки в початковому коді

У протоколі Біткойн існує незначна, але помітна обчислювальна помилка. При обчисленні корекції складності видобутку протокол використовує 2016 блоків як обчислювальну основу, тоді як насправді слід використовувати інтервал у 2015 блоків. Це призводить до того, що цільовий час перевищує необхідний на 0,05%, внаслідок чого фактичний цільовий інтервал видобутку Біткойн становить 10 хвилин і 0,3 секунди, а не рівно 10 хвилин.

Хоча ця похибка в 0,3 секунди загалом не має великого значення, вона пов'язана з ще однією серйознішою проблемою. Розрахунок складності базується на першому та останньому блоці в кожному вікні з 2016 блоків, і цей підхід має недоліки. Більш раціональним підходом було б обчислення різниці в часі між останнім блоком попереднього вікна з 2016 блоків та останнім блоком поточного вікна.

Біткойн безпека вразливість: атака на спотворення часу

Принцип атаки спотворення часу

Атака на спотворення часу використовує вищезгадані обчислювальні помилки. У ідеальних умовах, припустивши, що майнінг повністю централізований, нападник може маніпулювати часовими мітками блоків наступним чином:

  1. Більшість часових міток блоків лише на одну секунду випереджає попередній блок.
  2. Кожні шість блоків мітка часу пересувається вперед на одну секунду, щоб дотримуватися правил MTP.
  3. В останньому блоці кожного циклу корекції складності встановіть мітку часу на справжній світовий час.
  4. Перший штамп часу нового циклу складності знову повернувся в минуле, на секунду раніше, ніж передостанній блок попереднього циклу.

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

Здійсненість та виклики атаки

Хоча теоретично така атака є руйнівною, її реалізація стикається з багатьма викликами:

  1. Можливо, потрібно контролювати більшість мережевої обчислювальної потужності.
  2. Існування чесних майнерів ускладнить атаки.
  3. Правила MTP та чесний часовий штамп обмежать ступінь зворотності зловмисних часових штампів.
  4. Якщо чесний майнер згенерує перший блок будь-якого вікна коригування складності, атака в цьому циклі буде недійсною.
  5. Атакуючі дії на блокчейні є публічно видимими і можуть спричинити термінове м'яке відгалуження для виправлення.

Біткойн безпека уразливість: атака спотворення часу

Потенційні рішення

Щоб виправити цей уразливість, є кілька можливих рішень:

  1. Змінити алгоритм корекції складності, обчислити часовий проміжок між різними вікнами блоків 2016 та виправити обчислювальні помилки.
  2. Скасувати правила MTP, вимагати, щоб час кожного блоку обов'язково рухався вперед.
  3. Встановлення нових обмежувальних правил: вимога, щоб час першого блоку нового періоду складності не був раніше визначеного часу (наприклад, 10 хвилин або 2 години) перед останнім блоком попереднього періоду.

У новій пропозиції "Велика узгодженість очищення" пропонується запровадити обмеження в 2 години. Це обмеження становить приблизно 0,6% від цільового часу циклу коригування складності, що може ефективно обмежити ступінь маніпуляції складністю.

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

Біткойн безпека вразливість: атака на спотворення часу

BTC0.79%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 6
  • Поділіться
Прокоментувати
0/400
LuckyBearDrawervip
· 9год тому
Цей баг обговорюється, але все ж гірший, ніж складність майнінгу.
Переглянути оригіналвідповісти на0
MetaverseVagabondvip
· 9год тому
Ой, мімімі! Знову проблема!
Переглянути оригіналвідповісти на0
DataBartendervip
· 9год тому
Схоже, знову божественний баг. Я спочатку піду принесу маленький стілець.
Переглянути оригіналвідповісти на0
EyeOfTheTokenStormvip
· 9год тому
Ай, знову хтось грає з Міткою часу. Відкрити лонг чи Шорт? Не панікуйте, всі.
Переглянути оригіналвідповісти на0
airdrop_huntressvip
· 10год тому
Знову що робиш? Чому знову заговорили про машину часу??
Переглянути оригіналвідповісти на0
just_another_walletvip
· 10год тому
Ай, розробляючи стільки років, дірки одна за одною.
Переглянути оригіналвідповісти на0
  • Закріпити