Биткойн устранит уязвимость атаки на искажение времени, повышая безопасность сети.

robot
Генерация тезисов в процессе

Биткойн исправляет уязвимость: проблема атаки временного искажения будет решена

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 года средняя вычислительная мощность постоянно увеличивается.

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

Атака временного искажения

Атака с искажением времени была впервые обнаружена около 2011 года и использовала ошибку Сатоши Накамото в расчете сложности. В этой атаке предполагается полная централизация майнинга, где майнеры могут устанавливать любые временные метки, разрешенные протоколом. Злоумышленник устанавливает временные метки большинства блоков на одну секунду раньше, чем у предыдущего блока, замедляя таким образом продвижение блокчейна во времени, при этом соблюдая правила MTP.

Чтобы как можно медленнее продвигать время, майнеры могут поддерживать одинаковую метку времени в течение шести последовательных блоков, а затем увеличить время на одну секунду в следующем блоке, повторяя этот процесс. Это означает, что метка времени блока сдвигается вперед на одну секунду только каждые шесть блоков.

Эта атака будет приводить к тому, что блокчейн все больше отстает от реального времени, сложность будет увеличиваться, что сделает майнинг более трудным. Однако для повышения эффективности атаки в последнем блоке каждого цикла изменения сложности майнеры устанавливают временную метку на реальное время. Следующий блок (, который является первым блоком нового окна изменения сложности ), затем устанавливается обратно в прошлое, на секунду раньше, чем предпоследний блок предыдущего окна изменения сложности. Это все еще соответствует правилам MTP, так как отдельное отклонение не повлияет на медиану 11 блоков.

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

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

Возможность атаки и решения

Хотя теоретически такая атака может иметь разрушительные последствия, ее реализация сталкивается с некоторыми трудностями. Для выполнения атаки может потребоваться контроль над большей частью вычислительной мощности. Если честные майнеры вводят реальные временные метки, сложность атаки значительно увеличивается. Правила MTP и временные метки честных майнеров могут ограничить степень манипуляции временными метками со стороны злонамеренных майнеров. Кроме того, если честные майнеры создают первый блок в любом окне корректировки сложности, атака в этом цикле не сработает.

Другим фактором, который может усложнить выполнение атаки, является то, что она видима для всех. Любой может увидеть аномалии временных меток, и перед тем, как сложность будет снижена, необходимо манипулировать окружающими временными метками, что может дать нам время для внедрения срочного мягкого форка.

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

Чтобы решить эту уязвимость, разработчики предложили относительно простое решение. Новое предложение требует, чтобы время первого блока нового периода сложности не было раньше определенного количества минут до последнего блока предыдущего периода. В настоящее время обсуждаемый временной диапазон варьируется от 10 минут до 2 часов. В последнем предложении о большом консенсусе это время было установлено на уровне 2 часов.

Это ограничение в 2 часа составляет всего около 0,6% от целевого времени цикла корректировки сложности, что значительно ограничивает способность манипулировать сложностью вниз. Это изменение эффективно предотвращает атаки с искажением времени и минимизирует риск случайного создания недействительных блоков, при этом оставаясь согласованным с существующими правилами временных меток будущих блоков.

С помощью внедрения этого улучшения сеть Биткойн сможет лучше противостоять потенциальным атакам с временным искажением, что further повысит ее безопасность и стабильность.

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

BTC-2.63%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 4
  • Поделиться
комментарий
0/400
TokenGuruvip
· 9ч назад
бык啊 btc老项目还在认真修bug 不像某些 альткоин
Посмотреть ОригиналОтветить0
LootboxPhobiavip
· 07-30 16:54
Снова исправили уязвимости, я чуть не умер от страха.
Посмотреть ОригиналОтветить0
DaoResearchervip
· 07-30 16:38
Таким образом, согласно теории управления механизмом 3.0, в этом предложении присутствуют системные недостатки.
Посмотреть ОригиналОтветить0
defi_detectivevip
· 07-30 16:37
Подождите, что это за принцип? Я не понимаю. Можешь объяснить, брат?
Посмотреть ОригиналОтветить0
  • Закрепить