Биткойн повторные транзакции: интересная техническая проблема с низкой вероятностью
Биткойн-транзакции обычно используют неиспользуемые выходы, ссылаясь на ID предыдущей транзакции. Эти выходы могут быть использованы только один раз, иначе возникнет проблема двойной траты. Тем не менее, в истории Биткойна действительно имели место две группы абсолютно идентичных транзакций. Эта ситуация могла возникнуть, потому что coinbase-транзакции не имеют входов, а напрямую создают новые токены. Таким образом, две разные coinbase-транзакции могут отправить одинаковое количество на один и тот же адрес, причем способ построения также будет совершенно одинаковым, что приведет к образованию абсолютно идентичных транзакций. Поскольку содержание транзакций одинаково, их ID также совпадает.
Эти две группы повторяющихся транзакций произошли между 14 и 15 ноября 2010 года, временной интервал составляет около 16 часов. Первая группа повторяющихся транзакций (d5d2....8599) сначала стала копией, но странно, что она впервые появилась в блокчейне после другой повторяющейся транзакции (e3bf....b468).
Появление повторных транзакций создает некоторые проблемы для системы. Они могут вызывать путаницу в кошельках и блокчейн-браузерах, а также затруднять определение источника Биткойна. Это также может быть использовано для атак, например, чтобы заплатить кому-то дважды двумя повторными транзакциями, но на самом деле доступно только половина средств.
Чтобы решить эту проблему, в 2012 году разработчики Биткойна предложили и реализовали мягкий хардфорк BIP30, запрещающий использование дублирующихся идентификаторов транзакций, если только предыдущий идентификатор транзакции не был использован. В сентябре 2012 года это правило было дополнительно изменено, чтобы применяться ко всем блокам, за исключением двух упомянутых ранее дублирующихся транзакций.
В марте 2013 года вступил в силу мягкий хард-форк BIP34, требующий, чтобы транзакции coinbase содержали информацию о высоте блока. Это, кажется, полностью решает проблему повторных транзакций, так как теперь все транзакции должны быть уникальными. Однако в некоторых блоках до активации BIP34 первый байт scriptSig транзакции coinbase совпадает с будущей действительной высотой блока. Это означает, что проблема повторных транзакций все еще может возникнуть в будущем.
Следующий блок, в котором могут возникнуть повторные транзакции, — это 1,983,702, который, как ожидается, будет сгенерирован около января 2046 года. Однако для использования этой уязвимости майнерам потребуется потратить огромные средства, тогда как доход будет весьма ограниченным. По текущей цене Биткойна такая атака может потребовать более 15 миллионов долларов.
Хотя этот уязвимость не выглядит как основная угроза безопасности Биткойна, разработчики все же работают над поиском решения. Один из возможных методов заключается в обязательном выполнении обещания SegWit. В целом, это маловероятная, но очень интересная техническая проблема, отражающая сложность системы Биткойн и долгосрочный процесс ее эволюции.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
19 Лайков
Награда
19
5
Поделиться
комментарий
0/400
OffchainWinner
· 07-17 11:17
Цок-цок, в истории был только один случай повторной транзакции.
Посмотреть ОригиналОтветить0
GetRichLeek
· 07-16 01:09
Вау, ничего себе! Яма была выкопана еще в 2010 году. Если бы я знал тогда, что стоит купить немного и ловить падающий нож, это не было бы убытком.
Посмотреть ОригиналОтветить0
PerpetualLonger
· 07-16 00:57
покупайте падения — это бумажный тигр, только вера может вернуть Кошелек к жизни
Посмотреть ОригиналОтветить0
SellTheBounce
· 07-16 00:57
Старая система снова выдает ошибки, покупайте падения, действительно смелые покупатели.
Посмотреть ОригиналОтветить0
OnchainGossiper
· 07-16 00:50
Этот баг просто абсурдный, в конце текста оставляют интригу.
Биткойн историческая загадка повторных транзакций: причины, влияние и будущие риски
Биткойн повторные транзакции: интересная техническая проблема с низкой вероятностью
Биткойн-транзакции обычно используют неиспользуемые выходы, ссылаясь на ID предыдущей транзакции. Эти выходы могут быть использованы только один раз, иначе возникнет проблема двойной траты. Тем не менее, в истории Биткойна действительно имели место две группы абсолютно идентичных транзакций. Эта ситуация могла возникнуть, потому что coinbase-транзакции не имеют входов, а напрямую создают новые токены. Таким образом, две разные coinbase-транзакции могут отправить одинаковое количество на один и тот же адрес, причем способ построения также будет совершенно одинаковым, что приведет к образованию абсолютно идентичных транзакций. Поскольку содержание транзакций одинаково, их ID также совпадает.
! Дубликаты транзакций биткоина: интересная ошибка с минимальным риском
Эти две группы повторяющихся транзакций произошли между 14 и 15 ноября 2010 года, временной интервал составляет около 16 часов. Первая группа повторяющихся транзакций (d5d2....8599) сначала стала копией, но странно, что она впервые появилась в блокчейне после другой повторяющейся транзакции (e3bf....b468).
! Дубликаты транзакций биткоина: интересная ошибка с минимальным риском
Появление повторных транзакций создает некоторые проблемы для системы. Они могут вызывать путаницу в кошельках и блокчейн-браузерах, а также затруднять определение источника Биткойна. Это также может быть использовано для атак, например, чтобы заплатить кому-то дважды двумя повторными транзакциями, но на самом деле доступно только половина средств.
Чтобы решить эту проблему, в 2012 году разработчики Биткойна предложили и реализовали мягкий хардфорк BIP30, запрещающий использование дублирующихся идентификаторов транзакций, если только предыдущий идентификатор транзакции не был использован. В сентябре 2012 года это правило было дополнительно изменено, чтобы применяться ко всем блокам, за исключением двух упомянутых ранее дублирующихся транзакций.
! Дубликаты транзакций биткоина: интересная ошибка с минимальным риском
В марте 2013 года вступил в силу мягкий хард-форк BIP34, требующий, чтобы транзакции coinbase содержали информацию о высоте блока. Это, кажется, полностью решает проблему повторных транзакций, так как теперь все транзакции должны быть уникальными. Однако в некоторых блоках до активации BIP34 первый байт scriptSig транзакции coinbase совпадает с будущей действительной высотой блока. Это означает, что проблема повторных транзакций все еще может возникнуть в будущем.
Следующий блок, в котором могут возникнуть повторные транзакции, — это 1,983,702, который, как ожидается, будет сгенерирован около января 2046 года. Однако для использования этой уязвимости майнерам потребуется потратить огромные средства, тогда как доход будет весьма ограниченным. По текущей цене Биткойна такая атака может потребовать более 15 миллионов долларов.
! Дубликаты транзакций биткоина: интересная ошибка с небольшим риском
Хотя этот уязвимость не выглядит как основная угроза безопасности Биткойна, разработчики все же работают над поиском решения. Один из возможных методов заключается в обязательном выполнении обещания SegWit. В целом, это маловероятная, но очень интересная техническая проблема, отражающая сложность системы Биткойн и долгосрочный процесс ее эволюции.
! Дубликаты транзакций биткоина: интересный баг с минимальным риском