Атака, которая была организована силами одного человека и повлияла на работу всей сети, известна в криптосообществе уже довольно давно. Разработчики bitcoin уже почти год готовят изменения в коде, Хотя она не обладает фатальными последствиями, но способна значительно замедлить скорость обработки транзакций.
Согласно описанию на сайте bitcoin wiki, атака на гибкости использует недочёт в протоколе обработки переводов средств, позволяющий дублировать транзакции. Протокол разрешает взять любую транзакцию, подписать её, изменить id и отправить на утверждение в цепочку блоков. В результате только одна из конкурирующих транзакций попадёт в результирующую цепочку, и у сети обработка этих двух транзакций занимает гораздо больше времени.
Криптохулиган, называющий себя Alister Maclin (возможно, в честь шотландского новеллиста Alistair MacLean), признался на форуме bitcointalk, что именно он стоит за этой атакой, продолжавшейся несколько дней. Он согласился пообщаться с изданием Vice и поделиться подробностями о проведённой акции.
Временный всплеск количества отвергнутых транзакций
amaclin продемонстрировал интервьюеру свои возможности, включая и выключая атаку на сеть – эти действия были видны в статистике работы сети, доступной на сайте statoshi.info. По его словам, организовать такую акцию сведущему человеку довольно просто – это заняло у него пару часов и сотню строчек кода скрипта.
На вопросы о целях атаки amaclin отвечает, что делает это потому, что может, а также цитирует произведение Джека Лондона «Морской волк»: «Мы делаем всё, чтобы выжить, и прокормить наших жён и детей» (прообразом главного героя произведения стал, кстати, ещё один Маклин – капитан Алекс Маклин [Alex MacLean]). При этом он заявляет, что не преследует в данной ситуации корыстных целей.
Главным поводом для вмешательства в работу сети по словам активиста стало то, что ему не нравится количество паразитной энергии, которая тратится при обработке транзакций. «Биткоин тратит больше ресурсов (электричества, железа, человеческих усилий) в пересчёте на транзакцию, чем текущие централизованные системы». Также amaclin сетует на то, что биткоин-сообщество делает слишком мало для улучшения работы системы и оставляет всё на откуп кучке разработчиков, ответственных за обновления ядра.
Этим летом сеть биткоин подвергалась другому стресс-тесту – в том случае он был связан с размерами блока. Текущий размер блока позволяет обрабатывать слишком мало транзакций в единицу времени. Чтобы продемонстрировать эту ограниченность, биржа CoinWallet.eu 22 июня провела свой стресс-тест. Десять серверов с кошельками Bitcoin посылали транзакции два раза в секунду, и каждая из них рассылалась на 10–20 адресов. Выходы из этих сделок объединялись и отправлялись обратно на рассылавшие серверы. Однако, серверы CoinWallet сами упали, и компания не смогла создать нагрузки в тех объемах, которые планировались. Сеть этот стресс-тест выдержала без особых проблем.
Комментарии (20)
MAXH0
11.10.2015 09:39+13Господа!
Я конечно выскажу очень холираврное утверждение (хобби у меня такое. Кто не верит смотри профиль :)), но мне кажется что биткойн не достиг и одной из целей которуе он пастулировал изначально.
Во первых он не анонимен, а псевдо-анонимен. Получить анонимность можно, но не тривиально. И еще не факт, что это будет реальная анонимность Мир крипто — закрытый мир.
Во вторых хотя сейчас он в целом децентрализован, но угроза централизации есть. Более того она экономически выгодна (по тем же причинам, что образуются монополии — уход с рынка маргинальных игроков и их поглощение).
В третьих хваленая дефляционная природа биткойна в значительной мере фикция. Потому что инфляция/дефляция зависит не только от объема валюты, но и от объема рынка по которому эта валюта ходит. Выпустит чей то ЦБ удобную цифровую валюту (возможно *койны, но не обязательно), съест долю рынка и все — биткойн просядет.
В четвертых — зависимость от спекуляций… И ТД И ТП
Сейчас есть лучшие крипто-валюты (хотя и сырые). НО QWERTY эффект работает на совсем не идеальный биткойн.
Так что этот крипто-геросртат делает важное дело — показывает что биток должен меняться. Либо умереть и дать место другим крипто-валютам (хотя держателям битков это ОЧЕНЬ не понравится)polym0rph
12.10.2015 01:54Он свою задачу выполнил замечательно. Proof of concept.
Кому нужна реальная анонимность вкручивают всякие кольцевые подписи и миксеры.
Насчет угроз централизации — угрозы всегда были есть и будут. Практически в любой области.
Насчет дефляции и кто там чего может выпустить — так выпускайте, а мы посмотрим. Будет реально удобно и полезно — перейдем.
Я сразу скажу, мне Bitcoin нравится. Но также нравятся и все попытки ему создать проблемы. От этого технология развивается и становится более приспособленной.awoland
12.10.2015 10:00Так и Роберт Моррис свою задачу тоже на отлично выполнил. И ущерб в 96,5 миллионов долларов нанес.
elite7
12.10.2015 10:56Если не делать прививки, то может быть эпидемия?
Если не подвергать организм физическим нагрузкам, то можно заболеть?awoland
12.10.2015 12:05Прививки делают посредством введения в организм ослабленных и нежизнеспособных штаммов возбудителей заболевания. А в данном конкретном случае это не прививка, а распространение полноценного болезнетворного штамма (благо что не смертельного). И это в биологическом разрезе выглядит примерно как если вам или мне в глазные капли или жидкость для линз просто «для фана» штамм Neisseria gonorrhoeae введут… Чтобы пакость сделать и проблем создать.
elite7
12.10.2015 13:57пока гром не грянет мужик не перекрестится.
только публикация уязвимостей может заставить двигаться создателей программного обеспечения.
до момента публикации действует правило «безопасность через неясность»
С прививками тоже самое.
Либо прививки бесполезны и безопасны.
Либо прививки эффективны от конкретной болезни, но создают побочные эффекты, которые могут причинить существенный ущерб здоровью.awoland
12.10.2015 14:10Публикация и применение — суть разные вещи. В этом и сотоит соль этого спора.
И привика от оспы это не то же, что заражение всех поголовно этой самой оспой.
polym0rph
12.10.2015 13:01Ну так и супер. Не нанес бы он, позже может кто-то более коммерчески заинтересованный нанес бы на лярды ущерба.
А после проделок Морриса хоть как-то взялись безопасность докручивать.
orcy
11.10.2015 14:19> что делает это потому, что может
Судя статье больше похоже на поведение attention whore, столько пафоса.
awoland
Не знаю насколько актуален в данной конкретной теме Д.Лондон, но ответили этому подражателю Герострата грамотно: «With Great power comes great responsibility my child......»
idiv
Ну тут все же, судя по его словам, каждый может такое провернуть с достаточными знаниями. Так что ответ несколько не в тему, здесь эта фраза настолько же к месту, как и к ситуации, когда человек грозит пальцем.
awoland
Судя по его словам, непримиримый
робингудборец c «количеством паразитной энергии» и «активист», на деле оказывается спамером — антагонистом (а проще говоря саботажником) и банальным стяжателем-халявщиком:...
, который не против прибрать к рукам что нибудь чужое из того, что кто-то плохо положил.
Хотя, следует отдать ему должное, программист он хороший и в технический принципах построения и функционирования системы разобрался неплохо.
Жаль что свои таланты он тратит не на улучшение критикуемой системы и устранение ее недостатков (и уязвимостей), а на их использование для извлечения личной выгоды и профита.
А по-поводу темы конкретно этой заметки — вот его ликующий топик на BTT:
Так что диагноз, как говорится, «на лицо» и это далеко не человек в белой шляпе.
idiv
Я не говорю, что он все правильно сделал. Но если вся система может лечь от действий одного человека — грош цена этой системе.
awoland
Отнюдь нет. Вся система от этого не ляжет, но замедлится. Все, чего удалось добиться ему — создать проблемы другим пользователям, замусорив блокцепь испорченными транзакциями:
idiv
Как по мне, если платеж, условно, вместо минуты проходить будет за неделю — это скорее «лежит», чем «замедлился». И тут был всего один человек, а если этим займется бoльшее число участников?
awoland
Так платеж пройдет, только с другим txid и пользователь (или сервис) не смогут его отследить. Это проблемы не для системы (биткойны так украсть не получится), а исключительно для ее пользователей.
idiv
А разве может система существовать без пользователей? Я не понимаю, какой толк от такой системы, что у нее проблем нет, а у пользователей есть? Это же как в старом анекдоте выходит «проблемы индейцев шерифа не интересуют».
Mad__Max
Задержек по большому счету это особых не создает. Только неудобства и путаницу для пользователей. Появляются 2 одинаковые транзакции (но с разными уникальными id). Одна из которых проходит (практически с той же скоростью как и без атаки), а вот 2я «зависает» навсегда как некорректная.
В результате деньги то до адресата дошли и с примерно той же скорость. Но он видит 2 входящие транзакции (вместо одной). И у отравителя в исходящих тоже лишняя «зависшая» появляется. (от нее можно избавиться — но потребуется время потратить пока кошелек заново синхронизирует свое состояние в соответствии с блокчейном).
Так же в некоторых случаях может создать путиницу. Отправитель создает транзакцию, передает ее id получателю. Скрипт атакующего успевает ее перехватить и отправить уже под другим id. Если он это сделал достаточно быстро есть довольно большая вероятность что подтверждена будет именно измененная транзакция. Тогда получатель проверяя по id исходную транзакцию — будет видеть, что она не дошла (не подтвердилась) и предоставит того, что платильщик заказывал.
В конце конечно все выяснится когда получатель списки транзакций вручную сверит и увидит поступление требуемой суммы на свой кошелек (просто под другим id). Но минимум 2 человека (отправитель и получатель) зря потратят свое время.
Так же это создает дополнительную нагрузгу на выч. мощности и память всех биткоин нод — т.к. им приходится проверять в 2 раза больше транзакций (оригиналы и дубли). Если нода стоит на слабом железе (типа дешевого виртуального VPS сервера) это может нехватку ресурсов.
В общем мелкая пакость. Опасности не представляющая, но слегка раздражающая.
Calvrack
кстати о брейнволлетах и их безопасности есть доклад с последнего дефкона — http://www.youtube.com/watch?v=foil0hzl4Pg
говорят что отслеживание ключей для всех фраз короче 5ти символов идет постоянно.
elite7
Да уж, белый хакер отказался от 733 биткойнов, без комментариев…