Разработчики криптовалюты Bitcoin, функционирование которой основано на принципах пиринговых сетей, за последнее время выпустили ряд критических обновлений безопасности клиента, направленные на исключение неправомерного использования средств на счетах пользователей. Необходимость подобных «заплаток» стала очевидна после относительно недавнего взлома крупнейшей биржи по обмену денежных знаков Mt Gox. Добычей злоумышленников стали данные и хешированные пароли более 62 000 пользователей сети Bitcoin, а обменный курс резко упал с 17 долларов до ноля (а точнее - до 0,01$ по информации mtgoxlive.com).
Хакерская атака на Mt Gox
Справедливости ради, нужно отметить, что отправной точкой взлома был не клиент bitcoin и не система безопасности этой сети, основанная на протоколе OpenSSL и криптографических функциях и алгоритмах Эрика Янга. Злоумышленникам удалось подобрать пароль к одной из административных учётных записей биржи Mt Gox, что предоставило им возможность совершить транзакцию в размере 432 000 BTC (платёжных единиц системы Bitcoin), и по курсу на момент взлома их стоимость оценивалась в 8 млн долларов США. Учитывая, что в свободном обращении, на тот момент, находилось около 7 млн. «монет» BTC, неизвестным хакерам были подконтрольны около 6% всей платёжной системы.
Стоит предположить, что основной целью такого вторжения было не личное обогащение, а крах системы в целом. Иначе невозможно объяснить попытку за один раз вывести из оборота bitcoin столь крупную сумму. И поскольку денежные знаки этой системы не обеспечены ничем, кроме спроса (зачастую спекулятивного), единовременная продажа столь значительной их части привела к полному обесцениванию криптовалюты. К слову, BTC представляют собой мощнейший дефляционный инструмент, позволяющий реализовывать самые смелые инвестиционные программы. Увеличение курса, а значит и стоимости 1 BTC в 2010 году составило 5500% - от 0,6$ в начале года до 35$ в третьем квартале. Предположения о деструктивной направленности вторжения подтверждаются тем фактом, что были предприняты (к счастью, безуспешные) попытки преодолеть ограничения биржи Mt Gox на вывод более 1000 долларов в сутки.
Возможности системы, где точно известно общее количество эмитированных денежных знаков, а каждому из них соответствует определённая сигнатура, позволили разработчикам произвести отмену всех операций, совершенных после атаки на Mt Gox и таким образом восстановить ценность денежных знаков. Кроме того, успешному восстановлению поспособствовал сам взломщик – после получения контроля над учётной записью на бирже им были проданы все BTC со счета, после чего была предпринята попытка выкупить их по более низкой цене и вывести, но ему помешал лимит вывода.
Новые угрозы
В августе 2011 года специалисты антивирусной компании Symantec обнаружили новый вид вирусов-троянов, использующих учётные данные пользователей bitcoin для кражи денег из электронных кошельков. Вредоносные программы подобного рода пытаются взломать хэши денежных знаков и файлов-хранилищ. Шансов на удачный подбор паролей не много - используемая технология openSSL надёжно защищает от подобных проникновений. Но ключи к кошелькам можно украсть – особенно если они хранятся не на съёмных носителях либо доверены не совсем надёжному сервису.
Конечно, разработчики не разглашают подробности взлома Mt Gox, но есть все основания полагать , что атака стала возможна после кражи ключей, а также копирования файла кошелька bitcoin, например с помощью вируса, отсылающего определённые файлы с заражённой машины.
Ответ Bitcoin
Казалось бы, протокол OpenSSL должен предоставлять неразрушимую защиту для файлов и ресурсов клиента. Так оно и есть, до тех пор, пока злоумышленник не получит одновременно доступ к файлу кошелька и к ключам от него.
Первое серьёзное улучшение безопасности по сравнению с базовой версией было реализовано в релизе Bitcoin 0.4.0, выпущенном 23 сентября 2011 года. С этого момента всем владельцам BTC стало доступно шифрование файла кошелька, а вернее той его части, в которой содержится клиентская часть открытого ключа, передаваемая контрагенту при совершении перевода. При выполнении любых операций с имеющейся криптовалютой требуется ввод пароля, что делает невозможным использование украденных файлов кошельков. Однако, при утере пользователем пароля от кошелька, восстановление контроля над ним невозможно. То же самое относится и к утере самого файла. Именно поэтому при использовании Bitcoin необходимо надёжно хранить пароли и делать резервные копии кошелька.
Также версия клиента 0.4.0 предлагает пользователям более оптимизированное строение древовидной системы хэшей и базы данных с поддержкой защиты от атак типа denial-of-service (отказ в обслуживании). На первый взгляд, пиринговой сети не стоит опасаться DDoS-атак, ведь в структуре Bitcoin отсутствует главный пул серверов, нет каких либо сервисов, представляемых пользователям централизованно. Но основное достоинство распределённой сети – полная децентрализованность, в ряде случаев может быть и самым серьёзным недостатком, особенно если злоумышленник пытается получить доступ одновременно к большому количеству кошельков участников системы, например, использовав бот-сети.
Bitcoin 0.5.0: Улучшения продолжаются
В следующем «большом» релизе разработчики сосредоточились на интерфейсе, сделав его более удобным и простым. Также были добавлены функции drag-n-drop для осуществления платежей и возможность экспорта списка проведённых транзакций в .csv файл.
Для сторонних разработчиков были введены новые rpc-команды, позволяющие более качественно организовать информационный обмен с другими приложениями. Также была проведена солидная работа по ускорению загрузки в клиент и обработки блоков данных, содержащих подписанные данные о уже проведённых транзакциях.
Ещё один шаг
Последние версии приложений Bitcoin 0.5.1 и Bitcoin 0.5.2 содержат большое количество улучшений, направленных на ускорение работы программы и добавляют некоторые rpc функции. Также улучшена обработка небольших платежей, вплоть до 0.0001 BTC и исправлен ряд мелких ошибок обработки адресов контрагентов, в некоторых случаях приводящих к полному зависанию программы. Начиная с версии 0.4.0 серьёзных улучшений безопасности не было.
Перспективы развития криптовалют
Факт существования и бурного развития peer-to-peer платёжной системы доказывает состоятельность идеи о возможности реализации в будущем принципиально иной экономической модели, не основанной на едином эмиссионном центре. Конечно, принципы реализации сети Bitcoin во многом экспериментальны, и если быстрые дефляционные процессы не погубят её, то ещё через 5-6 лет стабилизации в распоряжении пользователей окажется инструмент, свободный от налогов, платёжных комиссий и любого другого внешнего вмешательства.
Удастся ли Bitcoin занять своё место среди мировых валют, покажет время. Но уже сейчас можно с уверенностью сказать, что по мере роста общего количества транзакций разработчикам придётся либо кардинально менять схему хранания данных, либо вводить промежуточные центры обработки, которые будут ответственны за хранение всего дампа платежей и сигнатур денежных знаков. Уже сегодня процедура загрузки всей необходимой информации при первоначальной установке клиента может длиться часами, и в дальнейшем это время будет только увеличиваться.
Эта статья рассказывает только о ранних версиях кошелька. Есть более актуальный обзор Bitcoin Core.