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

bitcoin

Специалист по безопасности Дэвид Джерард в своём блоге сообщил, что использующие класс SecureRandom() JavaScript-приложения криптовалют могли генерировать уязвимые ключи. Созданные в браузере пароли также можно взломать.

В чём заключается проблема?

Функция генерирует ключи, которые имеют менее 48 бит энтропии. Затем SecureRandom() запускает номер, полученный через устаревший алгоритм RC4. Это ещё больше снижает количество бит энтропии, а ключ становится более предсказуем.

Уязвимы адреса, созданные с использованием BitAddress до 2013 года, а также Bitcoinjs до 2014 года. Слабые ключи генерируют приложения, использующие версии jsbn.js до 2013 года — они содержат SecureRandom().

В декабре 2017 года у пользователей Reddit украли Bitcoin Cash через сервис рассылки Mailgun. Расследование показало, что злоумышленник взломал аккаунт сотрудника сервиса и через него запрашивал смену паролей.

Источник: блог Дэвида Джерарда

Наши тесты для вас:
Тест на знание сленга веб-разработчиков.
Кто вы во вселенной Звёздных Войн?
А вы точно программист?