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

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

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

Протокол захисту часових міток блоків Біткойна

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

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

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

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

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

Невеликі помилки в алгоритмі регулювання складності

Наразі складність видобутку Біткойн коригується кожні 2016 блоків, що еквівалентно приблизно двом тижням при цільовому часі видобутку в 10 хвилин. Під час розрахунку корекції складності видобутку протокол враховує різницю часових міток між першим і останнім блоками в 2016-блоковому вікні. Це вікно фактично містить 2015 інтервалів блоків (2016 мінус 1). Таким чином, теоретично використовуваний цільовий час повинен становити 60 секунд × 10 хвилин × 2015 інтервалів = 1,209,000 секунд.

Однак, протокол Біткойн використовує число 2016 у розрахунках. 60 секунд × 10 хвилин × 2016 = 1,209,600 секунд. Це призводить до того, що цільовий час перевищує фактичний на 0.05%. Іншими словами, фактичний цільовий інтервал блоків Біткойн не 10 хвилин, а 10 хвилин і 0.3 секунди.

Ця незначна різниця на практиці не є суттєвою. Насправді, з моменту народження Біткойна середній інтервал між блоками залишався приблизно на рівні 9 хвилин 36 секунд, що помітно нижче 10 хвилин. Це в основному пов'язано з тим, що з 2009 року обчислювальна потужність мережі стабільно зростала. Саме з цієї причини нещодавнє зменшення винагороди за блок сталося раніше, ніж очікувалося, у квітні 2024 року, а не в січні 2025 року.

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

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

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

Кроки атаки такі:

  1. Для більшості блоків зловмисник встановлює мітку часу на одну секунду раніше, ніж у попередньому блоці.
  2. Щоб максимально сповільнити просування часу, атакуючий може безперервно підтримувати однакову мітку часу для 6 блоків, а потім збільшити на 1 секунду в 7-му блоці, і так далі.
  3. У останньому блоці кожного періоду налаштування складності зловмисник встановлює мітку часу на реальний світовий час.
  4. Часовий штамп першого блоку наступного циклу складності встановлюється назад у минуле, на 1 секунду раніше за час другого з кінця блоку попереднього циклу.

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

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

Можливість та виклики атаки

Хоча на теорії ця атака має руйнівний характер, її реалізації заважає ряд викликів:

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

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

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

Існує кілька можливих способів виправити цю вразливість:

  1. Змінити алгоритм коригування складності, обчислити часовий проміжок між різними вікнами блоків 2016 та повністю виправити помилку "на один менше". Але це може вимагати хард-форку.

  2. Скасувати правила MTP, вимагати, щоб час завжди просувався в кожному блоці. Але це може призвести до того, що час застрягне в дуже далекому майбутньому.

  3. Введення нових правил: вимога, щоб час першого блоку нового періоду складності не був раніше певного часу до останнього блоку попереднього періоду. Наразі обговорюваний діапазон часу варіюється від 10 хвилин до 2 годин.

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

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

Висновок

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

BTC-1.49%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 5
  • Поділіться
Прокоментувати
0/400
NFTArchaeologisvip
· 07-11 18:01
Як забутні електронні артефакти, що фіксують кроки Блоків і сліди інтелектуальної еволюції…
Переглянути оригіналвідповісти на0
LootboxPhobiavip
· 07-11 09:28
виправлення вразливостей, зростання стане стабільним
Переглянути оригіналвідповісти на0
TheShibaWhisperervip
· 07-11 09:27
Собак навіть знає, що це велике оновлення, вже втекло.
Переглянути оригіналвідповісти на0
ChainWanderingPoetvip
· 07-11 09:23
Це ж має бути зміна алгоритму складності? Схоже, знову доведеться щось поробити~
Переглянути оригіналвідповісти на0
SingleForYearsvip
· 07-11 09:17
Цю кляту вразливість ремонтують вже багато років.
Переглянути оригіналвідповісти на0
  • Закріпити