Была ли успешная двойная атака на биткойнскую сеть? Если нет, действительно ли нужно ждать подтверждения?

Существует большая озабоченность в связи с ожиданием подтверждений, чтобы избежать двойной атаки, но когда-либо на самом деле была двойная трата?

Кажется, что существует два типа двойной атаки. Один из них совершается без значительной доли общей мощности горной промышленности. Чтобы успешно совершить это, злоумышленник должен отправить обе транзакции почти одновременно. Если между законной транзакцией и двойным траттом существует значительная задержка, почти каждый минер получит законную транзакцию перед двойным трат. Шахтеры отклонят двойные расходы, и законная сделка почти гарантированно будет включена в следующий блок. Таким образом, чтобы успешно совершить этот двойной трат, злоумышленник должен отправить обе транзакции одновременно, так что половина сети работает, а половина сети работает над другой. Однако, если они это сделают, то получателю будет легко сразу обнаружить, и, таким образом, получатель может отклонить платеж в течение нескольких секунд. Таким образом, двойная атака без существенной доли сетевой мощности не представляет проблемы - она ​​легко и сразу обнаруживается (или она не срабатывает).

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

Таким образом, если двойная атака никогда не была совершена, ежедневные пользователи, переносящие небольшие количества биткойнов, могут быть очень уверены, что они не станут жертвами двойной траты (каковы шансы быть первыми?) и отказаться ожидая подтверждения.

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

Правильно ли этот анализ?

24 голоса | спросил Isaac Kriegman 8 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowThu, 08 Sep 2011 01:38:18 +0400 2011, 01:38:18

5 ответов


12

Для чего это стоит, MyBitcoin.com заявил , что их закрытие было вызвано серией двойных расходов атаки:

  

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

Пользователь theymos (администратор форумов bitcointalk.org) имел публично предупредили , что принятие транзакций после одного подтверждения было« безумным ».

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

Наиболее критически на ваш вопрос о том, ждать ли подтверждение, однако, является тот факт, что вы пропустили возможный вектор атаки, известный как «финни-атака» после Hal Finney, который идентифицировал его . В финни-атаке шахтер включает в себя один «двойной» из двух транзакций в своих собственных блоках при горном деле, но не передает его в сеть. Когда они в конце концов находят блок, они приобретают что-то с конфликтующей транзакцией (второй «двойной» в атаке двойного траттинга), а затем сразу же транслируют свой блок, что приведет к аннулированию транзакции покупки в блок-цепочке. Если продавец не ждет подтверждения, атакующий уйдет как с приобретенным предметом (надеюсь, что-то наполовину), так и с их оригинальными биткойнами.

Так как эта ситуация и ее варианты применяются в основном к продавцам, предлагающим мгновенно «по требованию», ваш анализ «ежедневных пользователей, передающих небольшое количество биткойнов», остается примерно правильным. Имейте в виду, что, если принятие 0-подтверждающих транзакций стало нормой, стимул для атаки «отправить их одновременно» значительно повысился (требуя хотя бы одного подтверждения, это предотвратит это в подавляющем большинстве случаев). Но на данный момент постоянных пользователей следует больше беспокоиться о регулярном старом «мошенничестве с оплатой труда» в отношении неконсолированных транзакций и нападениях «человек-в-середине», когда собеседник передает сообщения между двумя доверенными лицами, которые хотят сделать бизнес, затем уходит с деньгами, пока они оба кричат, что другой человек их обманывает (эта атака была выполнена в дикой природе).

tl; dr Торговцы и биржи определенно должны ждать подтверждения в любое время, когда транзакции имеют значительную ценность и /или в обмен на наличные товары. Лица, передающие небольшие суммы, должны быть более обеспокоены другими аспектами доверия к обмену и могут эффективно защитить себя с помощью всего лишь одного подтверждения.

ответил eMansipater 8 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowThu, 08 Sep 2011 04:28:54 +0400 2011, 04:28:54
10

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

Ваш анализ верен. Вы можете действовать с меньшим количеством подтверждений с одинаковым уровнем надежности, если вы следите за сетью из нескольких точек - в идеале, как можно ближе к большому количеству больших пулов шахт. И если кому-то удастся вызвать такую ​​атаку, у вас будет неопровержимое доказательство - конфликтная транзакция.

Интересно, готовы ли пулы шахт предоставить веб-страницу, в которой перечислены транзакции, которые они намерены включить в следующий блок (при условии, что они заминировали именно тогда). Если бы некоторые из более крупных пулов сделали это, это позволило бы вам быть более уверенным, что в сети не было конфликтной транзакции. Если у двух крупнейших пулов есть ваши транзакции, и ни один из пулов не имеет конфликтной транзакции, вы можете быть почти уверены, что можете быть в безопасности даже без подтверждений.

ответил David Schwartz 8 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowThu, 08 Sep 2011 02:14:08 +0400 2011, 02:14:08
7

11 марта 2013 года была незапланированная жесткая вилка, и в результате была проведена хотя бы одна двойная атака, в ходе которой было потрачено много средств (биткойны стоимостью 10 долларов США).

ответил Stephen Gornick 8 AMpMon, 08 Apr 2013 10:28:22 +040028Monday 2013, 10:28:22
4

Сентябрь /октябрь 2013 г. - Операторы пула GHASH.IO были обвинены в двойных расходах против BetCoin Dice:

https://bitcointalk.org/index.php?topic=321630.0

Выдержки:

«Я говорю, что ghash.io, вероятно, был вовлечен в эту двойную трату. Я получил сообщение от пользователя пула, что с 25 по 27 сентября не было блоков (вознаграждений). Это означает, что хэш-мощность пользователя использовалась бесплатно операторами пула для выполнения этой атаки. "

Дело в том, что BetCoin Dice использовал 0-подтверждающий метод на тратах, и что хэш-мощность GHASH.IO злоупотреблялась /использовалась для проверки /подтверждения только выигрышных ставок (без учета неубывающих ставок). Существовал достаточно значительный поток подтверждений только на выигрыш, чтобы предложить «кто-то» в пуле ghash.io, но все-таки, возможно, удваивает расходы на биткойны, а затем использует хэш-мощность ghash.io для получения выигрышных подтверждений в блок-цепочке перед необоснованными транзакциями может быть подтверждено остальной частью сети.

CEX.IO, очевидно, отрицает причастность, но вызывает большой вопрос о том, как мы должны следить за мошенничеством так? Помимо людей, которые подвержены влиянию, кто-нибудь беспокоится о результатах проверки блоков (недействительными и действительными?)

ответил Shaun Wilson 13 FriEurope/Moscow2013-12-13T18:51:23+04:00Europe/Moscow12bEurope/MoscowFri, 13 Dec 2013 18:51:23 +0400 2013, 18:51:23
1

Старый ответ Дэвида Шварца подразумевает, что ни одна успешная двойная трата даже транзакции UNCONFIRMED никогда не была замечена. Это необходимо обновить:

Было проведено хотя бы одно значительное двойное расходование 15- транзакции подтверждения в течение вилки .7 /.8.

Ежедневно проводятся двойные траты неподтвержденных транзакций. См. http://respends.thinlink.com

ответил Tom Harding 28 FebruaryEurope/MoscowbSat, 28 Feb 2015 22:13:48 +0300000000pmSat, 28 Feb 2015 22:13:48 +030015 2015, 22:13:48

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132