BIP39 простым языком: как 2 048 слов защищают вашу криптовалюту
Содержание
Если вы когда-либо настраивали криптовалютный кошелёк, вас просили записать 12 или 24 слова. Эти слова --- не случайная выборка из словаря. Они взяты из точного стандарта BIP39 --- Bitcoin Improvement Proposal 39 --- и каждая деталь этого стандарта, от количества слов до способа выбора каждого из них, создана для максимальной безопасности и переносимости вашей криптовалюты.
Это руководство разбирает BIP39 с нуля: как энтропия превращается в seed-фразу, почему в списке ровно 2 048 слов и что происходит за кулисами, когда вы вводите эти слова в кошелёк.
Что такое BIP39?¶
BIP39 --- это спецификация, опубликованная в 2013 году, которая определяет, как преобразовать случайное двоичное число в читаемый человеком список слов --- мнемонику --- а затем превратить эту мнемонику в двоичный seed для получения криптографических ключей.
До BIP39 резервные копии кошельков представляли собой шестнадцатеричные строки: последовательности из 64 символов вроде 5e884898da28047151d0e56f8dc.... Переписывать их вручную было утомительно и чревато ошибками. Одна неверная цифра делала резервную копию бесполезной.
BIP39 решил эту проблему, сопоставив те же случайные байты с обычными английскими словами. Вместо копирования hex вы записываете "abandon ability able about above absent absorb abstract..." --- слова, которые легче прочитать, проверить и сохранить на бумаге или металле.
Три цели BIP39:
- Читаемость для человека --- Слова проще переписать, проверить и запомнить, чем hex.
- Обнаружение ошибок --- Встроенная контрольная сумма выявляет ошибки при записи.
- Детерминированное получение ключей --- Одни и те же слова всегда дают один и тот же мастер-seed независимо от программного кошелька.
128 бит энтропии превращаются в 12 слов¶
Безопасность seed-фразы BIP39 начинается с энтропии --- чистой случайности, сгенерированной криптографически стойким генератором случайных чисел (CSPRNG). Количество энтропии определяет число слов:
| Энтропия (бит) | Контрольная сумма (бит) | Итого (бит) | Слова |
|---|---|---|---|
| 128 | 4 | 132 | 12 |
| 160 | 5 | 165 | 15 |
| 192 | 6 | 198 | 18 |
| 224 | 7 | 231 | 21 |
| 256 | 8 | 264 | 24 |
Наиболее распространённые конфигурации --- фразы из 12 слов (128 бит) и 24 слов (256 бит).
Пошаговый процесс создания фразы из 12 слов:
- Генерация 128 случайных бит. Это исходная энтропия. На современной системе случайность берётся из CSPRNG операционной системы --- например, Web Crypto API в браузерах или
/dev/urandomв Linux. - Вычисление контрольной суммы. Берётся SHA-256 хеш этих 128 бит. Первые 4 бита хеша становятся контрольной суммой.
- Конкатенация. Эти 4 бита контрольной суммы добавляются к исходным 128 битам, получается 132 бита.
- Разбиение на 11-битные группы. 132 бита делятся на двенадцать групп по 11 бит.
- Сопоставление со словами. Каждая 11-битная группа --- число от 0 до 2 047. Это число используется как индекс в списке слов BIP39.
Результат --- 12 английских слов.
Насколько безопасны 128 бит? Существует 2^128 возможных комбинаций --- примерно 3,4 x 10^38. Для наглядности: если бы все компьютеры на Земле перебирали по триллиону комбинаций в секунду, на исчерпание всего пространства потребовалось бы около 10^14 лет. Подробнее о том, почему перебор seed-фраз непрактичен, читайте в статье Brute Force атака на Seed Phrase в 2026 году.
Список из 2 048 слов и контрольная сумма¶
Почему именно 2 048 слов? Потому что 2 048 = 2^11. Каждое слово кодирует ровно 11 бит данных, что делает преобразование между двоичными данными и словами чистым и обратимым.
Официальный английский список слов BIP39 был тщательно составлен с учётом нескольких свойств:
- Нет слов короче 4 символов. Это исключает неоднозначность.
- Первые 4 символа однозначно идентифицируют каждое слово. Можно сокращать без коллизий --- "abso" однозначно означает "absorb." Некоторые аппаратные кошельки используют это для ускорения ввода.
- Похожие слова исключены. Список избегает пар вроде "woman" и "women", отличающихся одной буквой.
- Слова отсортированы по алфавиту. Это делает поиск эффективным.
Списки слов BIP39 существуют на нескольких языках --- английском, японском, корейском, испанском, китайском (упрощённом и традиционном), французском, итальянском, чешском и португальском. Английский список используется чаще всего, но стандарт не привязан к языку. Все доступные списки описаны в статье Список слов BIP39 на всех языках.
Контрольная сумма обнаруживает ошибки¶
Контрольная сумма, встроенная в последнее слово, --- одна из самых полезных особенностей BIP39. Если вы случайно запишете неправильное слово или поменяете два слова местами, контрольная сумма почти наверняка не пройдёт проверку при восстановлении кошелька.
Для фразы из 12 слов контрольная сумма составляет 4 бита. Это означает, что только 1 из 16 случайно изменённых фраз пройдёт проверку. Для фразы из 24 слов контрольная сумма --- 8 бит, значит только 1 из 256 ошибочных фраз окажется валидной. Это не гарантия --- это страховочная сетка, а не замок --- но она обнаруживает подавляющее большинство ошибок записи.
Вы можете проверить контрольную сумму своей seed-фразы, не подвергая её воздействию интернета, с помощью офлайн-инструмента, такого как Bitcoin Seed Phrase Generator на SafeSeed, который полностью работает в вашем браузере.
От мнемоники к мастер-seed¶
Наличие 12 слов --- ещё не конец процесса. Кошельки не используют мнемонику напрямую в качестве криптографического ключа. Вместо этого мнемоника преобразуется в 512-битный двоичный seed через функцию растяжения ключа PBKDF2.
Преобразование работает так:
- Слова мнемоники объединяются в одну строку (через пробелы).
- Создаётся соль путём добавления строки "mnemonic" перед необязательной парольной фразой. Если парольная фраза не задана, соль --- просто строка "mnemonic".
- Применяется PBKDF2-HMAC-SHA512 с 2 048 итерациями, что даёт 512-битный seed.
Этот 512-битный seed затем используется для получения мастер-приватного ключа и chain-кода для дерева HD-кошелька, как описано в BIP32. Из этого единственного мастер-ключа можно сгенерировать неограниченное количество дочерних ключей --- и, соответственно, адресов --- для нескольких блокчейнов.
Необязательная парольная фраза (иногда называемая "25-м словом") добавляет мощный уровень защиты. Те же 12 слов с другой парольной фразой создают совершенно другой кошелёк. Это значит, что даже если кто-то узнает ваш список слов, он не сможет получить доступ к средствам без парольной фразы. Однако у парольной фразы нет контрольной суммы: неверная фраза молча создаст другой (пустой) кошелёк вместо сообщения об ошибке.
Подробнее о том, как мастер-seed порождает дочерние ключи и адреса, читайте в статье HD-кошельки и пути деривации.
BIP39 в разных блокчейнах¶
BIP39 был создан в экосистеме Bitcoin, но его применение выходит далеко за её пределы. Одни и те же 12 или 24 слова могут защищать средства в Ethereum, Solana, Polygon и десятках других сетей.
Между блокчейнами меняется не сама seed-фраза, а путь деривации, используемый после генерации мастер-seed. Bitcoin использует m/84'/0'/0' для нативных SegWit-адресов. Ethereum и EVM-сети используют m/44'/60'/0'/0. Solana использует m/44'/501'/0'/0'. Шаг преобразования мнемоники в seed везде одинаков --- всегда PBKDF2 с теми же параметрами.
Эта кроссчейн-совместимость --- одно из главных преимуществ BIP39. Единственная резервная копия защищает активы во всех поддерживаемых сетях. SafeSeed предоставляет генераторы seed-фраз для нескольких блокчейнов --- Bitcoin, Ethereum и Solana --- все на основе одного стандарта BIP39.
Есть исключения. Некоторые кошельки, прежде всего Electrum, используют собственную схему мнемоники, несовместимую с BIP39. Схема Electrum встраивает информацию о версии в саму мнемонику, что имеет другие компромиссы. Если вы импортируете seed Electrum в BIP39-кошелёк (или наоборот), вы получите другие ключи. Всегда уточняйте, какой стандарт мнемоники использует ваш кошелёк.
Распространённые ошибки, которых следует избегать¶
Понимание BIP39 ценно именно потому, что помогает избежать дорогостоящих ошибок. Вот самые частые из них:
Цифровое хранение seed-фразы¶
Снимок экрана, текстовый файл или отправка 12 слов самому себе по электронной почте сводят на нет всю защиту. Если ваше устройство скомпрометировано, злоумышленник получает всё. Запишите фразу на бумаге или выштампуйте на металле и храните в физическом виде. Подробные стратегии описаны в Руководстве по холодному хранению 2026.
Путаница между seed-фразой и приватным ключом¶
Seed-фраза генерирует множество приватных ключей; один приватный ключ контролирует ровно один аккаунт. Они не взаимозаменяемы. Экспорт приватного ключа из MetaMask не даёт вам seed-фразу, и наоборот. Читайте Seed-фраза vs приватный ключ для подробного сравнения.
Ввод seed-фразы на непроверенных сайтах¶
Ни один легитимный сервис никогда не попросит вас ввести seed-фразу на сайте при подключении к интернету. Фишинговые сайты, имитирующие интерфейсы кошельков, --- один из самых распространённых векторов атак. Если вам нужно сгенерировать или проверить seed-фразу, используйте инструмент, работающий полностью офлайн и на стороне клиента --- инструменты SafeSeed работают без отправки данных на сервер.
Игнорирование контрольной суммы¶
Если кошелёк сообщает, что seed-фраза недействительна, не пытайтесь её навязать. Контрольная сумма указывает на проблему. Проверьте каждое слово по списку BIP39. Частая ошибка --- путаница слов, которые начинаются с одних и тех же четырёх букв, но различаются дальше.
Забытая парольная фраза¶
Если вы установили необязательную парольную фразу и забыли её, ваши средства утрачены безвозвратно. Парольная фраза нигде не хранится --- она является частью криптографического ввода. Относитесь к ней с той же тщательностью, что и к самой seed-фразе.
BIP39 остаётся одним из самых элегантных стандартов в криптовалюте. Он превращает нечитаемые двоичные данные в нечто, что человек может записать на листе бумаги и хранить в банковской ячейке --- не жертвуя ни единым битом безопасности. Понимание его работы --- первый шаг к ответственной защите ваших цифровых активов.