Оффлайн-словарная атака на мнемонические фразы кошельков BNB: механизмы, риски и защита
Введение
Криптовалютные кошельки, работающие в сети Binance Smart Chain (BNB), в качестве основного средства доступа используют мнемонические фразы — последовательности из 12, 18 или 24 слов, стандартизированных по протоколу BIP-39. Эти фразы являются приватным ключом в человекочитаемой форме, и их компрометация означает полную утрату контроля над активами. Одним из наиболее опасных и широко применяемых методов атаки является оффлайн-словарная атака (offline dictionary attack), при которой злоумышленник не подбирает пароли в режиме реального времени через сеть, а генерирует и проверяет комбинации локально, без обращения к блокчейну. В этой статье мы подробно разберём принципы данного вида атаки, оценим её потенциальные последствия для пользователей BNB-кошельков и предложим комплекс мер по защите.
Что такое мнемоническая фраза BIP-39 и как она работает
Стандарт BIP-39
Mnemonic phrase (мнемоническая фраза) — это криптографическая конструкция, описанная в Bitcoin Improvement Proposal 39. Она позволяет превратить энтропию (случайный набор бит) в последовательность слов из заранее заданного словаря, содержащего ровно 2048 слов. Процесс генерации выглядит следующим образом:
- Система создаёт энтропию от 128 до 256 бит.
- К энтропии добавляется контрольная сумма (checksum).
- Полученная битовая последовательность разбивается на сегменты по 11 бит.
- Каждый сегмент сопоставляется с одним словом из словаря (2¹¹ = 2048 возможных значений).
- Результат — фраза из 12, 18 или 24 слов.
Мастер-ключ и производные ключи
Из мнемонической фразы с помощью алгоритма PBKDF2 и необязательной salt-фразы (passphrase) генерируется мастер-семя (master seed). Из этого семени методом BIP-32 (иерархические детерминированные кошельки) последовательно вычисляются все приватные и публичные ключи пользователя. Это означает, что владение мнемонической фразой эквивалентно владению всеми активами кошелька.
Механизм оффлайн-словарной атаки
Суть атаки
Оффлайн-словарная атака на мнемонические фразы BNB заключается в переборе комбинаций слов из словаря BIP-39 с целью восстановления корректной фразы, которая соответствует целевому адресу кошелька. В отличие от онлайн-атак, злоумышленник работает полностью локально — ему не требуется обращение к сети Binance Smart Chain для проверки каждой комбинации. Это позволяет:
- обходить ограничения на частоту запросов к сети;
- использовать параллельные вычисления (GPU, FPGA, ASIC);
- сохранять анонимность (отсутствие сетевого трафика).
Пошаговый алгоритм
1. Злоумышленник определяет целевой адрес кошелька (например, из публичного блокчейна).
2. Загружается словарь BIP-39 (2048 слов).
3. Генерируются все возможные комбинации слов:
- Для 12 слов: 2048^12 ≈ 2^132 вариантов (с учётом контрольной суммы — 2^128).
- Для 24 слов: 2048^24 ≈ 2^264 вариантов.

4. Каждая комбинация проверяется на корректность контрольной суммы.
5. Из корректных фраз вычисляется мастер-семя, затем — адрес кошелька.
6. Полученный адрес сравнивается с целевым.
7. При совпадении — атака завершена.
Оптимизации, используемые атакующими
| Метод оптимизации | Описание |
|---|---|
| Фильтрация по контрольной сумме | Из 2048¹² возможных комбинаций лишь часть (~1/256 для 12 слов) проходит проверку контрольной суммы, что сокращает пространство поиска |
| Параллелизация | Использование GPU (CUDA, OpenCL) для одновременной обработки тысяч гипотез |
| Применение аппаратных ускорителей | FPGA и ASIC-чипы, оптимизированные под алгоритмы PBKDF2 и SHA-256 |
| Предварительные словари (rainbow tables) | Заранее вычисленные таблицы, снижающие время проверки |
| Атака на слабую энтропию | Если пользователь использовал «настоящие» слова (не случайные из словаря BIP-39), пространство поиска резко сокращается |
| Брутфорс salt-фразы | Если пользователь использовал короткую или предсказуемую salt-фразу |
Оценка сложности
При использовании стандартной фразы из 12 слов с полной энтропией (128 бит) brute-force атака теоретически нереалистична при существующих вычислительных мощностях. Однако реальные угрозы возникают в случаях:
- Слабой энтропии: пользователь самостоятельно составил фразу из «знакомых» слов;
- Утечки части слов: злоумышленник знает 8–10 слов из 12;
- Уязвимости генераторов: плохо реализованные кошельки с предсказуемым генератором случайных чисел;
- Социальная инженерия: частичное раскрытие фразы при общении или в заметках.
Инструменты, используемые в оффлайн-атаках
Законные инструменты для исследования безопасности
Для оценки устойчивости кошельков исследователи безопасности используют следующие программные средства:
- BTCRecover — открытый инструмент для восстановления паролей и мнемонических фраз криптокошельков.
- John the Ripper — универсальный крекер паролей с поддержкой BIP-39.
- Hashcat — высокопроизводительный инструмент, поддерживающий работу на GPU.
- Custom Python-скрипты — на основе библиотек
mnemonic,bip32,bip44иweb3.
Пример логики проверки (псевдокод)

from mnemonic import Mnemonic
from bip32 import BIP32
import hashlib
WORDLIST = load_bip39_wordlist() # 2048 слов
TARGET_ADDRESS = "0x..." # Целевой адрес BNB
for combination in generate_combinations(WORDLIST, length=12):
if not checksum_is_valid(combination):
continue
mnemonic_phrase = " ".join(combination)
seed = Mnemonic.to_seed(mnemonic_phrase)
derived_address = BIP32(seed).get_address("BNB")
if derived_address == TARGET_ADDRESS:
print(f"Найдено: {mnemonic_phrase}")
break
Примечание: данный пример приведён исключительно в образовательных целях для демонстрации принципов криптографической защиты.
Потенциальные последствия для пользователей BNB
Финансовые потери
Компрометация мнемонической фразы приводит к потере всех средств на кошельке — как BNB, так и любых токенов (BEP-20, BEP-721 и др.), размещённых на производных адресах.
Отсутствие возможности восстановления
В отличие от банковских счетов, криптовалютные транзакции необратимы. Переведённые активы невозможно вернуть.
Масштабная уязвимость
Если злоумышленник обнаружил слабость в конкретном генераторе мнемонических фраз (например, в мобильном кошельке с низкой энтропией), под угрозой оказываются все пользователи, использующие данное программное обеспечение.
Меры защиты и рекомендации
1. Использование полной энтропии

- Всегда используйте фразы, сгенерированные проверенным кошельком (Ledger, Trezor, Trust Wallet и др.).
- Никогда не составляйте мнемоническую фразу самостоятельно из «удобных» слов.
- Приоритет — фразы из 24 слов (энтропия 256 бит).
2. Использование salt-фразы (BIP-39 passphrase)
- Дополнительная фраза, добавляемая к мнемонике, резко усложняет атаку.
- Salt-фраза не хранится на устройстве и должна быть запомнена.
3. Хранение фразы в офлайн-режиме
| Метод хранения | Уровень безопасности |
|---|---|
| Бумага (записанная от руки) | Средний — уязвим к физическому доступу |
| Металлическая пластина (Cryptosteel, Billfodl) | Высокий — устойчив к воде и огню |
| Множественное копирование в разных местах | Высокий — защита от потери |
| Фото/скриншот/заметка в телефоне | Крайне низкий — запрещено |
| Облачные хранилища | Крайне низкий — запрещено |
4. Применение аппаратных кошельков
Аппаратные кошельки хранят ключи в защищённом чипе и никогда не передают мнемоническую фразу в операционную систему компьютера. Это защищает от программного вредоносного ПО, которое может копировать фразу из оперативной памяти.
5. Использование мультисигнальных схем
Разделение средств между несколькими кошельками с требованием множественных подписей снижает риск полной потери.
6. Регулярный аудит безопасности
- Проверяйте, не находится ли ваш адрес в списках уязвимых кошельков.
- Обновляйте прошивки аппаратных кошельков.
- Используйте инструменты типа BTCRecover на своих собственных кошельках для проверки устойчивости.
Юридические и этические аспекты
Оффлайн-словарная атака на чужие криптокошельки является уголовным преступлением в большинстве юрисдикций, включая страны ЕС, США, Россию и Китай. Применение таких методов подпадает под статьи о незаконном доступе к компьютерной информации, краже и мошенничестве. Данная статья носит исключительно образовательный характер и направлена на повышение информированности пользователей о существующих угрозах и способах защиты.
Заключение
Оффлайн-словарная атака на мнемонические фразы BNB-кошельков представляет серьёзную угрозу, особенно в случаях слабой энтропии, частичной утечки слов или уязвимостей в генераторах случайных чисел. Хотя полный перебор при стандартных 12–24 словах с полноценной энтропией остаётся вычислительно неразрешимой задачей, множественные реальные факторы делают данную атаку практически осуществимой. Защита включает использование проверенных генераторов, максимальной энтропии, дополнительных salt-фраз, аппаратных кошельков и физически безопасного хранения мнемонических фраз. Ваша мнемоническая фраза — это ваш кошелёк: сохраняйте её так же осторожно, как хранилище золота.