Анализ и решение проблемы временного искажения протокола Биткойн

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

Уязвимость временного искажения в Протоколе Биткойн и ее решение

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

Защитный механизм временных меток блоков Биткойн

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

  1. Среднее прошедшее время ( MPT ) правило: временная метка блока должна быть позже среднего времени предыдущих 11 блоков.

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

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

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

Ошибка вычислений Сатоши Накамото

Цикл настройки сложности Биткойна составляет 2016 токенов, примерно две недели. При вычислении настройки сложности майнинга Протокол сравнивает временные метки первого и последнего токена в окне 2016 токенов. Однако Сатоши Накамото допустил небольшую ошибку при вычислении целевого времени:

Правильный расчет: 60 секунд * 10 минут * 2015 интервалов = 1,209,000 секунд Фактическое использование: 60 секунд * 10 минут * 2016 = 1,209,600 секунд

Эта ошибка в 0,05% приводит к тому, что фактический целевой интервал Биткойн составляет 10 минут и 0,3 секунды, а не ровно 10 минут. Хотя сама по себе эта ошибка незначительна, в сочетании с другим дефектом дизайна она создает более серьезные угрозы безопасности.

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

Принцип атаки с искажением времени

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

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

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

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

Оценка осуществимости атак и защита

Хотя такая угроза, как правило, очень велика, ее реализация сталкивается с некоторыми проблемами:

  1. Необходимо контролировать большую часть вычислительной мощности.
  2. Наличие честных майнеров увеличивает сложность атаки.
  3. Процесс атаки может быть наблюдаем, что дает сообществу время на реакцию.

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

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

Вывод

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

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

BTC0.59%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 4
  • Поделиться
комментарий
0/400
BlockchainThinkTankvip
· 17ч назад
Похоже, это старая проблема, исследовавшаяся еще в 2018 году. Рекомендуем быть осторожными.
Посмотреть ОригиналОтветить0
ReverseFOMOguyvip
· 07-25 06:20
удивительный bug都被挖出来了
Посмотреть ОригиналОтветить0
CompoundPersonalityvip
· 07-25 06:07
Уязвимости атак найдены бык-лягушка
Посмотреть ОригиналОтветить0
MEVSupportGroupvip
· 07-25 05:51
Давайте ударим по блоку.
Посмотреть ОригиналОтветить0
  • Закрепить