488 / 691BIP39-P

BIP39 passphrase

Дополнительная фраза для выведения seed

BIP39 passphrase — необязательный вход, который вместе со словесной резервной копией определяет seed кошелька. Он может защитить раскрытые слова, но добавляет ещё один секрет, потеря которого может помешать восстановлению.

При выведении BIP39 seed словесная фраза служит входом PBKDF2-HMAC-SHA512, а строка mnemonic, соединённая с passphrase, образует соль. Это не PIN устройства и не дополнительное обязательное слово из списка; без passphrase используется пустая строка.

Словесная фраза и соль mnemonic + passphrase обрабатываются как UTF-8 с нормализацией NFKD. PBKDF2-HMAC-SHA512 выполняет 2048 итераций и возвращает seed длиной 512 битов, то есть 64 байта. Длина выхода не означает 512 битов исходной секретной случайности. [BIP39 — Mnemonic generation and seed conversion]

Регистр букв и пробелы могут изменить результат. При этом разные записи Unicode после NFKD могут дать одинаковый вход: например, é и e с последующим комбинируемым акутом. Поэтому утверждение, что каждый иначе записанный текст обязательно создаёт другой кошелёк, неточно. [BIP39 — Mnemonic generation and seed conversion]

BIP39 не содержит checksum passphrase. Опечатка может вывести действительный seed и показать другой, обычно пустой кошелёк; исходные средства от этого не удаляются. Приложение может потребовать повторный ввод или сравнить известные данные. PIN, который только разблокирует устройство, не заменяет passphrase. [BIP39 — Mnemonic generation and seed conversion] [Trezor — What is a passphrase]

Имея словесную копию, атакующий может проверять варианты passphrase офлайн и сравнивать выведенные данные с известным кошельком. Достаточно непредсказуемая passphrase, которая не утекла, может затруднить атаку. Короткая цитата, повторно используемый пароль или только 2048 итераций не гарантируют защиту. [BIP39 — Mnemonic generation and seed conversion]

Если смена passphrase выводит другой seed, это не меняет условия подписания существующих выходов. Поэтому переход к новому кошельку требует настоящей транзакции. Аналогично пустой баланс сам по себе не доказывает потерю: сначала проверьте правильность входа и параметры восстановления. [Trezor — What is a passphrase] [BIP380 — Output Script Descriptors]

Надёжно сохраните копию passphrase и проверьте восстановление доверенным способом. Хранение отдельно от слов уменьшает совместную утечку, но должно позволять законное восстановление и наследование. Вернуть сильную забытую passphrase без копии может оказаться невозможно. Помимо слов и passphrase, могут потребоваться пути выведения и описания скриптов; Output Descriptor помогает сохранить эти данные. [Trezor — What is a passphrase] [BIP380 — Output Script Descriptors]

Другая passphrase может служить для отдельного кошелька или кошелька-приманки. Это не гарантирует, что атакующий поверит показанному балансу, и не устраняет следы платежей и копий. Разделение кошельков, устойчивость к подбору и безопасность при принуждении — разные свойства. [BIP39 — Mnemonic generation and seed conversion]

Пример · BIP39-P

Регистр букв может изменить кошелёк

Те же мнемонические слова с passphrase «alpha» и «Alpha» дают разные seed по BIP 39. Это короткие примеры, не безопасные пароли. В спецификации нет контрольной суммы passphrase; опечатка может открыть другой, обычно пустой кошелёк. Приложение может добавить собственную проверку.

Для полной картины прочитайте эту статью вместе с BIP 39, PBKDF2, BIP39 checksum, Самостоятельное хранение. На эту статью также ссылаются Seed Phrase, BIP 39, Cold Storage, BIP85.

01Является ли passphrase тем же, что мнемонические слова или PIN?

Нет. Слова и необязательная passphrase — два входа для получения seed по BIP 39, оба с нормализацией NFKD. Если passphrase использовалась, одних слов недостаточно. PIN устройства её не заменяет. Для полного восстановления также могут потребоваться пути деривации и данные скрипта.

02Защищает ли passphrase раскрытые мнемонические слова?

Достаточно непредсказуемая passphrase, не утёкшая вместе со словами, может затруднить получение правильного seed. Но владеющий словами атакующий может перебирать варианты офлайн; короткая или предсказуемая passphrase — ненадёжная защита. Потеря сильной passphrase без резервной копии может означать невосстановимую потерю доступа.

DOC · 001BIP39 — Mnemonic generation and seed conversionСпецификация ↗DOC · 002Trezor — What is a passphraseДокументация ↗DOC · 003BIP380 — Output Script DescriptorsСпецификация ↗
Сначала источники · Не является инвестиционной рекомендацией