Зовите меня Измаил

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

(Иллюстрация из одного из первых изданий романа «Моби Дик»)

Обзор

К сожалению, миграционные кризисы в истории человечества — отнюдь не редкость, и примеров тому множество, начиная со Второй мировой войны и заканчивая относительно недавними конфликтами в Сирии, Югославии и Афганистане. В критической ситуации беженцам часто приходится в спешке покидать свой дом ради безопасного убежища, бросая имущество. Как и многие читатели этой статьи, я знаю об этом не понаслышке — всего два поколения назад мои предки-евреи, проживающие в Германии до Второй мировой войны, вынуждены были искать убежище в Великобритании. Мои предки были довольно богаты, но не смогли ничего забрать с собой, поэтому ступили на британскую землю без гроша за душой.  Как показала история, деньги — не самое большое, чего можно было лишиться в то время. Моей семье повезло остаться в живых. Да, можно попытаться провезти золото или бриллианты на себе, но вас всегда могут обыскать или ограбить, особенно при пересечении границы враждебной страны.

Сторонники биткоина уверены: решить эту проблему, с которой сталкиваются беженцы и все, кто опасается конфискации капитала, может цифровая валюта.  Просто создайте «мозговой кошелек» — и не нужно ничего носить с собой, достаточно вспомнить пароль к биткоиновому кошельку. По сути, деньги (возможно, миллионы долларов!) хранятся в вашей памяти.

sha256(Call me Ishmael)=a88910233e176ef4489b52d686f326d7ff9ccff686065a44cbd3665384508ad6

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

Эксперимент с «мозговыми кошельками»

В таблице ниже указаны восемь «мозговых кошельков», которые я создал на основе цитат из популярных художественных произведений, текстов песен или академической литературы. Ни один из этих кошельков раньше не использовался, я сгенерировал восемь новых неиспользованных адресов. Я отправил 0,005 BTC на каждый адрес одной транзакцией. Я хотел проверить жизнеспособность «мозговых кошельков», а также то, смогут ли хакеры разгадать выбранную мной парольную фразу, и как быстро.

Passphrase Source Sha256 Type Address

Зовите меня Измаил

«Моби Дик», Герман Мелвилл a88910233e176ef4489b 52d686f326d7ff9ccff6 86065a44cbd366538450 8ad6 Сжатый 121qcemzF3HHsvhggufE XNedHncAzzT41T
Несжатый 168z2uEg5Shzsgknq561 oefN2xmLpjZUvH
Все знают, что молодой человек, располагающий средствами, должен подыскивать себе жену. «Гордость и предубеждение», Джейн Остин be09c4df6444afa6adff 8098c0cf273c3e9fef04 a1a8e20de8218eca0bec 383d Сжатый 17N4w1bMcfU6XCYABVwh EyJSW8bjkZX1Wr
Несжатый 1PuZXtWfXRdBzFcQ9ARuL 7D8ydnfmhQKzF
Это было лучшее изо всех времен, это было худшее изо всех времен; это был век мудрости, это был век глупости; это была эпоха веры, это была эпоха безверия; это были годы Света, это были годы Мрака; это была весна надежд, это была зима отчаяния «Повесть о двух городах», Чарльз Диккенс e051a4337000945d99a4 6ac1b56244106f732535 c11c22c229c6d620ab47 199f Сжатый 1DMowSp8G1v5bFyfV4R DFcPRERfcqycWVx
В начале сотворил Бог небо и землю. Библия f153b22c61d6013bf2d7 aa5a3fe7532718763613 1e9022dab1304333751a 7301 Сжатый 1EsxEASH5tSHGzmKohT FNBGr9xAcyTawyL
Ответ, мой друг, витает в воздухе. «Blowin’ in the Wind», Боб Дилан aeac73098d2b9a29ba47 c4893c2d0b6fbbba487d 21b1b3a57a55ee11c7a6 a476 Сжатый 175hVojnUG3P652wxMog VvzdAx2yFAo4q5
Сеть устойчива в своей неструктурированной простоте. «Белая бумага» по биткоину, Сатоши Накамото  1ecbe1b2d3242ee7b31e acc5aa2e382b19a8f937 825c2fac012221fdc0c4 9f35 Сжатый 19bHzxnvf8RFcjSCZsx1 TDREbEAryYYbRJ

Кража средств

Все средства из кошельков были украдены за один день, и 0,04 BTC, которые я потратил на этот маленький эксперимент, пропали — возможно, безвозвратно. Примечательно, что три перевода исчезли еще до того, как транзакция была подтверждена. В одном случае свидетелем преступной транзакции стал независимый биткоин-узел — это произошло всего через 0,670 секунды после того, как моя транзакция попала в его пул памяти. Эта молниеносно быстрая кража коснулась адреса, защищенного с помощью парольной фразы «Зовите меня Измаил» (Call me Ishmael), с которой начинается роман «Моби Дик».

Скорость кражи средств из «мозговых кошельков» (в секундах)

(Источник: BitMEX Research)
(Примечание. Время указано на основе регистрации транзакции в пуле памяти одного из наших узлов, несвязанных с этим экспериментом)

В таблице ниже показано, как быстро были похищены оставшиеся средства. Четыре кражи произошли через 22 блока; похоже, у всех краж один виновник, так как все четыре значения UTXO использовались в качестве входных данных в одной и той же транзакции. Последняя кража — из кошелька, паролем к которому была цитата из «белой книги» биткоина, — произошла через 80 блоков.

Скорость кражи средств из «мозговых кошельков» (в блоках)

(Source: BitMEX Research)
(Примечание. Первые 4 кражи произошли в рамках одной транзакции)

Плата за транзакцию

Мошеннические транзакции отличались очень высокой комиссией —  например, комиссия по несжатой транзакции по кошельку с паролем «Зовите меня Измаил» составила 390 сатоши за виртуальный байт, что на несколько порядков выше принятой рыночной ставки. Это говорит о том, что хакер пытается опередить других хакеров и, возможно, законного владельца монеты и первым получить подтверждение своей транзакции в блокчейне. В этом сценарии по крайней мере две стороны знают приватный ключ, и более высокая комиссия повышает вероятность успеха транзакции.

Значение эксперимента

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

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

Но что стало со средствами, украденными с моих восьми адресов?  На момент написания этой статьи известно, что шесть из этих выводов ушли по новым, ранее не неиспользовавшимся адресам, причем монеты не были потрачены, еще один ушел по уже использовавшемуся адресу, но тоже не был потрачен. И только средства с одного кошелька были потрачены  — того, что был защищен фразой «Сеть устойчива в своей неструктурированной простоте». Базовый анализ (который вполне может быть неверным) показал, что эти монеты, по всей видимости, были отправлены на HitBtc.

Заключение

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

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

Но если вам все же необходимо использовать «мозговой кошелек», то, помня о результатах этого эксперимента, не выбирайте простые или поэтичные пароли. Учитесь на моих ошибках.