Вы сохраняете на бумаге одну запись — двенадцать или двадцать четыре слова — и уверены, что ваши криптоактивы в безопасности. Но эта бумага защищает не один аккаунт. Она защищает все аккаунты во всех блокчейнах, которые поддерживает ваш кошелёк. В Zelcore это более 80 сетей одновременно. Понимание того, почему это так и что это означает для решений о хранении активов, — основа всего, что связано с безопасностью самостоятельного хранения.
Как сид-фраза кодирует целый мир ключей
Сид-фраза выглядит как набор случайных слов, но на деле это точное представление исходной энтропии. BIP-39 — предложение по улучшению Bitcoin, стандартизировавшее этот формат, — задаёт список ровно из 2 048 английских слов. Каждое слово кодирует 11 бит информации, поэтому ни одно слово не является лишним: каждое несёт определённые данные. Фраза из 12 слов кодирует 128 бит энтропии, а из 24 слов — 256 бит.
Мнемоническая фраза сама по себе не является криптографическим сидом. Прежде чем вывести какие-либо ключи, кошелёк обрабатывает мнемоническую фразу с помощью PBKDF2-HMAC-SHA512 — вычислительно затратной функции растягивания ключа — в 2 048 итераций. Результат — 512-битное двоичное значение: собственно сид. Такое растягивание делает перебор практически невыполнимым, даже если злоумышленник угадает часть слов.
Есть важное следствие: если добавить необязательную парольную фразу (иногда её называют 25-м словом), функция PBKDF2 учтёт её и создаст совершенно другой 512-битный сид. Те же двенадцать слов с другой парольной фразой откроют совершенно отдельный кошелёк. Между ними нет никакой связи — и если вы забудете парольную фразу, средства будут потеряны навсегда.
Дерево деривации: один сид — бесконечное число аккаунтов
512-битный сид — корень иерархического детерминированного (HD) дерева кошелька, заданного BIP-32. Кошелёк подаёт байты сида на вход HMAC-SHA512 (используя строку "Bitcoin seed" в качестве ключа), которая делит 512-битный результат на две равные части: 256-битный главный приватный ключ и 256-битный главный код цепочки. Все дочерние и внучатые ключи, а также адреса кошелька выводятся из этих двух значений путём многократного применения HMAC-SHA512.
BIP-44 стандартизирует порядок обхода дерева и задаёт путь деривации в формате m/purpose'/coin_type'/account'/change/index. У каждого сегмента своя роль:
- purpose всегда равен
44'для кошельков BIP-44. - coin_type определяет сеть; значение для каждого блокчейна назначается в реестре SLIP-0044. Для Bitcoin это
0, для Ethereum —60, для Solana —501, для Litecoin —2, для Dogecoin —3, для Cardano —1815. - account разделяет отдельные аккаунты в одной сети.
- change и index формируют отдельные адреса.
Апострофы обозначают усиленную деривацию — однонаправленную операцию, которая математически исключает возможность использовать скомпрометированный дочерний ключ для вывода ключей соседних ветвей или родительского ключа. Поэтому ключи вашего аккаунта Ethereum не могут раскрыть ключи аккаунта Bitcoin, хотя оба набора происходят от одного главного ключа.
В Zelcore одна сид-фраза одновременно контролирует BTC, ETH, SOL, ADA и десятки других активов — каждый находится в собственной подсети coin_type и детерминированно выводится из одного и того же 512-битного корня.
Как работает эта атака: одна точка отказа для всех сетей
Поскольку деривация детерминирована и стандартизирована, любой, у кого есть ваша сид-фраза, может восстановить все приватные ключи во всех поддерживаемых сетях. Это не ошибка конструкции — так она и устроена. Модель безопасности предполагает, что сид-фразу никто, кроме вас, никогда не увидит.
Практические последствия серьёзны. Утечка сид-фразы раскрывает не только ваши Bitcoin. Злоумышленник может вывести ваш адрес Ethereum, адрес Solana, адрес Cardano и адреса всех остальных активов одновременно. Ваши активы в Solana оказываются под угрозой, как только кто-то фотографирует вашу фразу восстановления Bitcoin. Злоумышленник может даже не знать, что у вас есть SOL.
Потеря сид-фразы создаёт обратную проблему: нет резервного способа восстановления для отдельной сети, восстановления аккаунта или обращения в службу поддержки. Энтропия, из которой был получен сид, математически необратима. Потерять бумажный носитель — значит потерять доступ ко всем сетям сразу.
Именно поэтому аппаратные кошельки создают сид-фразу внутри защищённого элемента и никогда не передают её подключённому компьютеру. Сид создаётся офлайн и остаётся там.
Метаданные отдельных сетей, которые сид не сохраняет
Восстановление по сид-фразе заново создаёт приватные ключи и стандартные пути деривации, но не сохраняет всё. Некоторые данные хранятся отдельно и не могут быть восстановлены из сида:
- Метаданные вне блокчейна: метки транзакций, записи адресной книги и пользовательские заметки хранятся в приложении кошелька, а не в блокчейне.
- Нестандартные пути деривации: некоторые старые кошельки и отдельные сети (в Solana и Cardano исторически использовались пути, отличающиеся от строгого стандарта BIP-44) могут привести к тому, что после восстановления в другом приложении кошелька баланс будет нулевым, хотя средства есть в блокчейне. Ключи на месте — просто программа ищет не по тому адресу.
- Баланс токенов: токены ERC-20 в Ethereum и токены SPL в Solana учитываются смарт-контрактами в блокчейне, но простое средство восстановления может показывать только баланс нативной монеты. Токены в безопасности; кошельку лишь нужно запросить данные у соответствующих контрактов.
- Позиции в DeFi и NFT: отображаются, только если кошелёк знает, к каким контрактам протоколов обращаться и какую конечную точку RPC использовать.
Практический совет: запишите не только сид-фразу, но и то, какое программное обеспечение кошелька и какие пути деривации вы использовали. Одной сид-фразы не всегда достаточно, чтобы восстановить кошелёк через несколько месяцев или лет.
Повторное использование адресов и идентификация между сетями
Разделение на сегменты coin_type в BIP-44 означает, что адрес Bitcoin и адрес Ethereum, полученные из одного сида, математически не связаны: у них общий корень, но разные открытые ключи. Однако сети, совместимые с EVM, — Ethereum, BNB Chain, Polygon, Avalanche C-Chain, Base и другие — используют coin_type = 60. Поэтому один и тот же адрес 0x... встречается во всех сетях EVM.
Это сделано намеренно, но создаёт связь между идентификаторами в разных сетях. Тот, кто знает ваш адрес Ethereum, может по нему проверить вашу активность во всех сетях EVM. Если вы заботитесь о конфиденциальности, учитывайте это, прежде чем объединять активы.
Модель UTXO в Bitcoin традиционно предполагает создание нового адреса для каждой транзакции — HD-кошельки делают это автоматически. В аккаунтной модели Ethereum адреса меняют редко: большинство пользователей годами используют один адрес на аккаунт. Повторное использование адреса Bitcoin во множестве транзакций снижает конфиденциальность, поскольку упрощает связь входов с одним владельцем.
Для хранения крупных сумм рассмотрите возможность разделить активы по сидам: используйте отдельную сид-фразу для рискованных торговых операций и долгосрочных вложений либо устройство с воздушным зазором (которое никогда не подключалось к устройству с доступом в интернет) для крупных позиций.
Как защитить себя: устранить единую точку отказа
Сид-фраза одновременно служит самым надёжным способом восстановления доступа и самой опасной единой точкой отказа. Вот конкретные меры защиты:
- Запишите её на металле, а не на бумаге. Пластины из нержавеющей стали или титана выдерживают пожар и наводнение. Бумага — нет.
- Никогда не переводите её в цифровой вид. Не делайте скриншоты, не храните её в облачных заметках и менеджерах паролей, не вводите её и не создавайте печатные копии. Если сид-фраза попадает на устройство с подключением к сети, поверхность для атаки значительно расширяется.
- Проверьте восстановление до внесения значительных средств. Восстановите кошелёк на новом устройстве, используя только сид-фразу, и убедитесь, что она работает и создаёт ожидаемые адреса.
- Рассмотрите метод разделения секрета Шамира (SLIP-39). SLIP-39 — стандарт, который делит сид на N частей; для его восстановления достаточно M частей. Это позволяет хранить части в разных местах: например, одну — в домашнем сейфе, одну — у доверенного человека, одну — в банковской ячейке. При этом ни в одном месте не будет храниться секрет целиком.
- Учитывайте компромисс при использовании парольной фразы. Надёжная парольная фраза (25-е слово) позволяет правдоподобно отрицать наличие основных средств: небольшую сумму можно оставить в кошельке без парольной фразы, а доступ к реальным средствам будет только с ней. Риски равнозначны: забыть парольную фразу так же необратимо, как потерять саму сид-фразу.
Для пользователей криптокошельков, хранящих активы во многих сетях в Zelcore, особенно важно последнее замечание: при проверке восстановления нужно охватить все сети, которыми вы активно пользуетесь, а не только самую очевидную.
Главное
- Сид-фраза из 12 слов кодирует 128 бит энтропии, а из 24 слов — 256 бит. Если потерять сид-фразу, восстановить её невозможно.
- BIP-32 и BIP-44 создают отдельное поддерево ключей для каждого блокчейна (
coin_type), но все поддеревья происходят от одного главного ключа. Если скомпрометирована сид-фраза, одновременно оказываются под угрозой все сети. - Поддержка более 80 сетей в Zelcore означает, что одна резервная фраза контролирует большой и разнообразный портфель активов. Физическая защита этой копии так же важна, как и её длина.
- Сети EVM (Ethereum, BNB Chain, Polygon и другие) используют
coin_type = 60и поэтому имеют общее адресное пространство: один и тот же адрес0xиспользуется во всех этих сетях. - Восстановление только по сид-фразе может не показать балансы токенов или позиции в DeFi. Запишите, какое ПО кошелька и какие пути деривации вы использовали.
- Металлические копии, хранение частей в разных местах с помощью SLIP-39 и дополнительный слой парольной фразы — три конкретных способа существенно снизить риск, связанный с единой точкой отказа.



