Редкое явление в истории Биткойна: повторные транзакции и их эволюция

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

Биткойн повторные транзакции: редкий, но интересный случай

Биткойн-транзакции обычно используют незатраченное выходное значение, ссылаясь на ID предыдущей транзакции. Эти выходы могут быть потрачены только один раз, иначе возникнет проблема двойной траты. Тем не менее, в истории Биткойна действительно были зафиксированы две группы полностью идентичных транзакций. Это возможно, потому что coinbase-транзакции не имеют никаких входов и напрямую создают новые токены. Таким образом, две разные coinbase-транзакции могут отправить одинаковое количество токенов на один и тот же адрес, создавая полностью идентичные транзакции. Поскольку эти транзакции идентичны, их ID транзакций также совпадают.

! Дубликаты транзакций биткоина: интересная ошибка с минимальным риском

Эти две группы повторяющихся сделок произошли между 14 и 15 ноября 2010 года, с интервалом около 16 часов. Первая группа повторяющихся сделок оказалась между второй группой. Мы классифицируем транзакции, начинающиеся с ID d5d2, как первую повторяющуюся сделку, хотя она впервые появилась на блокчейне позже другой повторяющейся сделки.

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

Повторная транзакция Биткойн: интересная ошибка с минимальным риском

Эти повторяющиеся сделки каждая на сумму 50 BTC, всего на сумму 200 BTC. На данный момент эти Биткойны еще не были потрачены. Теоретически, если кто-то владеет соответствующим приватным ключом, он может потратить эти Биткойны. Но как только они будут потрачены, повторяющиеся 50 BTC будут утеряны, поэтому фактически доступно только 100 BTC. Что касается того, из какого блока эти токены будут потрачены, в данный момент это еще не определено.

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

! Дубликаты транзакций биткоина: интересная ошибка с минимальным риском

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

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

! Дубликаты транзакций биткоина: интересная ошибка с минимальным риском

Тем не менее, в некоторых блоках, созданных до активации BIP34, все еще есть некоторые coinbase-транзакции, у которых первый байт scriptSig совпадает с будущей допустимой высотой блока. Это означает, что в крайне редких случаях повторные транзакции все еще могут произойти. Следующий блок, в котором может произойти повторная транзакция, это 1,983,702, который, как ожидается, будет создан около января 2046 года.

! Дубликаты транзакций биткоина: интересная ошибка с небольшим риском

Однако, учитывая сложность и стоимость копирования таких сделок, а также то, что возможности для их использования крайне редки, этот уязвимость не является основной угрозой безопасности Биткойна. Тем не менее, разработчики продолжают изучать способы полного решения этой проблемы, возможно, потребуется реализовать это через «мягкий форк». Одним из возможных решений является обязательное выполнение обязательств SegWit.

! Дубликаты транзакций биткоина: интересный баг с минимальным риском

BTC0.63%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • комментарий
  • Поделиться
комментарий
0/400
Нет комментариев
  • Закрепить