Открыть сервис

Seed-фраза

Seed-фраза (англ. seed phrase, мнемоническая фраза, фраза восстановления) — это последовательность слов, генерируемая криптовалютным кошельком или другим децентрализованным приложением, которая позволяет восстановить доступ к приватным ключам и, соответственно, к управляемым ими активам. Seed-фраза является человекочитаемой формой записи криптографического сида (seed) — начального числа, из которого детерминированно выводятся все приватные ключи кошелька. Утрата seed-фразы в большинстве случаев означает безвозвратную потерю доступа к средствам.

История и происхождение

Концепция seed-фразы возникла как решение проблемы удобства и безопасности резервного копирования криптовалютных кошельков. Ранние кошельки первого поколения (например, Bitcoin Core) генерировали файл wallet.dat, содержащий все приватные ключи. Его резервное копирование было неудобным, а восстановление — сложным для неопытных пользователей.

В 2013 году разработчик Bitcoin Питер Вуйле (Pieter Wuille) предложил стандарт BIP-0032 (Bitcoin Improvement Proposal) — иерархические детерминированные (HD) кошельки. Этот стандарт позволил генерировать неограниченное количество ключей из одного мастер-ключа (seed). Однако сам мастер-ключ оставался длинной шестнадцатеричной строкой.

В 2013—2014 годах сообществом Bitcoin был разработан стандарт BIP-0039, который ввёл мнемонические коды — преобразование случайного seed-значения в последовательность слов из заранее определённого словаря. Это сделало резервное копирование интуитивно понятным: пользователь записывает 12, 18 или 24 обычных слова, а не 64-символьный шестнадцатеричный код. Стандарт BIP-0039 был принят большинством криптовалютных кошельков и стал индустриальным стандартом.

Устройство и принцип работы

Генерация seed-фразы

Процесс создания seed-фразы включает несколько этапов:

  1. Генерация энтропии. Кошелёк создаёт случайное число (энтропию) заданной длины: 128 бит для 12 слов, 192 бита для 18 слов, 256 бит для 24 слов.
  2. Вычисление контрольной суммы. К энтропии применяется хеш-функция SHA-256, от результата берётся несколько первых бит (длина зависит от размера энтропии: 4 бита для 128 бит, 6 бит для 192 бит, 8 бит для 256 бит).
  3. Формирование битовой строки. Энтропия объединяется с контрольной суммой, образуя единую последовательность бит.
  4. Разделение на слова. Битовая строка разбивается на группы по 11 бит. Каждая 11-битная группа представляет собой целое число от 0 до 2047.
  5. Выбор слов из словаря. Каждое число соответствует слову из стандартного словаря BIP-0039, содержащего ровно 2048 слов. Слова подбираются так, чтобы они были легко различимы и запоминаемы.
  6. Формирование фразы. Полученные слова записываются в порядке следования, образуя seed-фразу.

Восстановление кошелька

Для восстановления кошелька пользователь вводит seed-фразу в любой совместимый кошелёк, поддерживающий BIP-0039. Программа:

  1. Преобразует каждое слово в его числовой индекс из словаря.
  2. Восстанавливает исходную битовую строку.
  3. Проверяет контрольную сумму (если она не совпадает, фраза считается недействительной).
  4. Извлекает энтропию и использует её как seed для генерации мастер-ключа.
  5. Из мастер-ключа по алгоритму BIP-0032 (иерархическая детерминированная генерация) восстанавливаются все приватные и публичные ключи, а также адреса кошелька.

Дополнительная защита: парольная фраза (BIP-0039 passphrase)

Стандарт BIP-0039 предусматривает опциональную парольную фразу (passphrase) — дополнительную строку, которую пользователь может задать при создании кошелька. Парольная фраза не хранится в кошельке и не является частью seed-фразы. Она смешивается с seed-материалом перед генерацией мастер-ключа. Без знания парольной фразы восстановить кошелёк только по seed-фразе невозможно. Это добавляет дополнительный уровень защиты: даже если злоумышленник получит seed-фразу, без парольной фразы он не сможет получить доступ к средствам.

Виды и стандарты

Длина seed-фразы

Наиболее распространённые длины seed-фраз:

Количество словЭнтропия (бит)Контрольная сумма (бит)Уровень безопасности
121284Стандартный
151605Повышенный
181926Высокий
212247Очень высокий
242568Максимальный

На практике чаще всего используются 12- и 24-словные фразы. 12 слов считаются достаточными для большинства пользователей, 24 слова — для хранения крупных сумм или институционального использования.

Стандарты

Основные стандарты, регламентирующие seed-фразы:

  • BIP-0039 (Bitcoin Improvement Proposal 39) — определяет формат мнемонических кодов и словарь из 2048 слов. Поддерживается большинством криптокошельков.
  • BIP-0032 (Hierarchical Deterministic Wallets) — описывает, как из seed-материала генерируется дерево ключей.
  • BIP-0044 (Multi-Account Hierarchy for Deterministic Wallets) — расширяет BIP-0032, добавляя поддержку нескольких криптовалют и аккаунтов в одном кошельке.
  • SLIP-0039 (Shamir's Secret-Sharing for Mnemonic Codes) — альтернативный стандарт, разработанный компанией SatoshiLabs (создатели Trezor). Позволяет разделить seed-фразу на несколько частей (shares), для восстановления требуется определённое количество частей (порог). Это повышает безопасность и отказоустойчивость.

Применение

Seed-фразы используются в:

  • Криптовалютных кошельках — аппаратных (Ledger, Trezor, SafePal), программных (MetaMask — организация признана экстремистской и запрещена в РФ, Trust Wallet, Exodus), мобильных и веб-кошельках.
  • Децентрализованных приложениях (dApps) — для управления идентификацией и доступа к сервисам.
  • Системах управления ключами — в некоторых блокчейн-проектах (например, в сети Ethereum для управления аккаунтами).
  • Протоколах децентрализованной идентификации (DID) — для восстановления доступа к цифровым удостоверениям.

Безопасность и риски

Основные угрозы

  • Физическая утрата — потеря бумажной записи, повреждение носителя (вода, огонь).
  • Кража — злоумышленник может получить seed-фразу, если она хранится в незащищённом виде (скриншот, текстовый файл, облачное хранилище).
  • Фишинг — поддельные сайты или приложения, которые запрашивают seed-фразу под видом восстановления доступа.
  • Кейлоггеры и вредоносное ПО — перехват ввода с клавиатуры, если seed-фраза вводится на заражённом устройстве.
  • Социальная инженерия — мошенники могут выведать seed-фразу через обман или манипуляции.

Правила безопасного хранения

  • Никогда не сообщайте seed-фразу третьим лицам — ни сотрудникам техподдержки, ни разработчикам кошелька, ни друзьям.
  • Не храните seed-фразу в цифровом виде — на компьютере, в облаке, в мессенджерах, на скриншотах.
  • Используйте физические носители — бумагу (огнестойкий сейф), металлические пластины (для защиты от воды и огня).
  • Создавайте несколько копий — храните в разных физически защищённых местах.
  • Используйте парольную фразу (passphrase) — дополнительный уровень защиты.
  • При вводе seed-фразы на новом устройстве убедитесь, что устройство не заражено — используйте аппаратные кошельки или изолированные компьютеры.

Критика и ограничения

  • Человеческий фактор — пользователи часто ошибаются при записи или восстановлении фразы (путают порядок слов, допускают опечатки).
  • Словарь BIP-0039 — хотя слова подобраны для минимизации ошибок, некоторые слова могут быть похожи (например, "abandon" и "ability").
  • Отсутствие стандартизации для всех блокчейнов — не все сети поддерживают BIP-0039, некоторые используют собственные схемы.
  • Уязвимость к физической краже — если злоумышленник получит бумажную копию, он получит полный доступ к средствам.

Интересные факты

  • Первое слово в seed-фразе не является случайным — оно частично определяется энтропией, но не несёт особой функции. Однако некоторые пользователи верят, что «красивая» seed-фраза (например, начинающаяся с «abandon») менее безопасна, хотя это не так.
  • Существуют проекты, предлагающие «браузерные seed-фразы» — генерацию фразы на основе пароля пользователя, но это считается небезопасным, так как снижает энтропию.
  • В 2023 году исследователи обнаружили, что некоторые аппаратные кошельки генерировали seed-фразы с недостаточной энтропией из-за ошибок в генераторах случайных чисел, что делало их уязвимыми для атак перебором.
  • Seed-фраза может быть использована для восстановления доступа не только к криптовалютам, но и к другим сервисам, использующим иерархические детерминированные ключи (например, к некоторым системам управления паролями).

Источники

  • Bitcoin Improvement Proposal BIP-0039: Mnemonic code for generating deterministic keys
  • Bitcoin Improvement Proposal BIP-0032: Hierarchical Deterministic Wallets
  • Bitcoin Improvement Proposal BIP-0044: Multi-Account Hierarchy for Deterministic Wallets
  • SLIP-0039: Shamir's Secret-Sharing for Mnemonic Codes
  • Документация аппаратных кошельков Ledger, Trezor, SafePal
  • Статьи по безопасности криптовалютных кошельков (CoinDesk, Cointelegraph, Binance Academy)

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →