Лучшие практики хранения seed-фразы

·7 мин. чтения·Автор: SSP Editorial Team
Seed-фраза из двенадцати слов, напечатанная на бумажной карточке рядом с аппаратным кошельком

Ваша seed-фраза — это мастер-ключ ко всем монетам в вашем кошельке. Потеряете её — средства исчезнут навсегда. Допустите утечку — кто-то другой опустошит кошелёк за секунды. Тем не менее, большинство руководств подают хранение seed-фразы как набор лозунгов — «никогда не делайте скриншот», «используйте металл» — не объясняя, что seed-фраза на самом деле делает, чего она не делает и как мультиподпись вроде SSP меняет модель угроз.

Эта статья — для тех, кто уже владеет криптой и хочет ясно думать о том, как её сохранить. Мы разберём, что такое seed-фраза на уровне протокола, в чём разница между горячими, холодными и аппаратными кошельками, какие реальные компромиссы при хранении, и как мультиподпись 2-of-2 переписывает правила. Воспринимайте это как ментальную модель, а не как догму.

Что такое seed-фраза на самом деле

Seed-фраза выглядит как стихотворение: 12 или 24 обычных английских слова в фиксированном порядке. Под капотом — это компактное кодирование одного очень большого случайного числа. Это число и есть тот seed, из которого порождается каждый приватный ключ вашего кошелька. Список слов, из которых можно выбирать — ровно 2048 — определён <span id="bip39"></span>BIP39, стандартом, который превращает сырую энтропию в нечто, что человек может записать, не теряя ни одного знака.

Причина, по которой одна короткая фраза способна управлять целым кошельком — адресами Bitcoin, адресами Ethereum, адресами для сдачи, будущими адресами, которые вы ещё даже не использовали — это <span id="bip32"></span>BIP32, стандарт иерархически-детерминированной (HD) деривации. BIP32 берёт seed и прогоняет его через детерминированную функцию, чтобы построить неограниченное дерево ключей. Тот же seed на входе — то же дерево на выходе, каждый раз, в любом совместимом кошельке.

Именно поэтому ваша seed-фраза — не «резервная копия кошелька»: она и есть кошелёк. Восстановите слова в любом BIP39/BIP32-совместимом приложении, и вы воспроизведёте каждый ключ и каждый адрес. По той же причине любой другой человек, прочитавший эти слова, получает тот же кошелёк.

Ключи, а не монеты

Криптокошельки не хранят монеты. Они хранят ключи. Балансы хранит блокчейн; ваши ключи доказывают, что вы вправе их двигать.

<span id="private-key"></span>Приватный ключ — это длинное случайное число, подписывающее транзакции. Тот, у кого есть приватный ключ от адреса, может потратить всё, что лежит на этом адресе — без сброса пароля, без службы поддержки, без апелляции. Именно это означает «самокастоди» на практике.

<span id="public-key"></span>Публичный ключ выводится из приватного с помощью односторонней математики. Его можно публиковать свободно. Адрес в блокчейне, который вы даёте тем, кто хочет вам заплатить, вычисляется из публичного ключа. Любой, кто знает ваш публичный ключ, может проверить созданную вами подпись, но не сможет обратной арифметикой выйти на ваш приватный ключ.

Seed-фраза стоит на один уровень выше всего этого. Из тех 12 или 24 слов BIP32 порождает каждый приватный ключ в кошельке, а из каждого приватного ключа уже выходят соответствующие публичный ключ и адрес. Так что когда руководства говорят «ваша seed-фраза ЕСТЬ ваш кошелёк», это надо понимать буквально: это корень, из которого происходят все ключи.

Горячие, холодные и аппаратные кошельки

Кошельки обычно классифицируют по тому, насколько их приватные ключи открыты для интернета.

<span id="hot-wallet"></span>Горячий кошелёк хранит приватные ключи на устройстве, подключённом к интернету — как правило, на телефоне или в расширении браузера. MetaMask на ноутбуке, Phantom на телефоне, приложение биржи, позволяющее выводить средства на он-чейн-адрес под вашим контролем — всё это горячее. Компромисс — удобство против поверхности атаки. Подпись транзакции занимает одно нажатие, но любой вредонос на устройстве в принципе может прочесть ключи или заставить вас подписать то, чего вы не собирались.

<span id="cold-wallet"></span>Холодный кошелёк хранит приватные ключи на устройстве, которое никогда не было в сети и в идеале никогда не будет. Классический пример — изолированный (air-gapped) ноутбук, используемый только для подписи транзакций, которые входят и выходят через QR-коды или microSD-карты. Холодное хранение резко сужает поверхность удалённой атаки — но ценой того, что им неудобно пользоваться ежедневно и оно опасно при неправильной настройке («холодный» ноутбук, который один раз тихо подключился к Wi-Fi, — это просто медленный горячий кошелёк).

<span id="hardware-wallet"></span>Аппаратный кошелёк — прагматичная золотая середина: маленькое специализированное устройство — Ledger, Trezor, Coldcard — хранящее приватные ключи в защищённом элементе и подписывающее транзакции внутри себя. Подключённый компьютер или телефон видит только подписанную транзакцию, но никогда ключ. Компромисс в том, что вы доверяете прошивке и цепочке поставок производителя, а достаточно решительный атакующий с физическим доступом всё ещё может атаковать устройство. Для большинства людей аппаратный кошелёк — правильная база.

Хранение слов

Когда вы принимаете, что seed-фраза и есть кошелёк, вопрос хранения становится таким: как сделать эти слова доступными вам, но недоступными всем остальным — на всё то время, что они вам могут понадобиться?

Начните с того, чего не надо делать. Не фотографируйте слова. Не кладите их в облачный заметочник — iCloud, Google Keep, Notion, Apple Notes, синхронизированный с Mac, всё считается. Не отправляйте фразу себе на почту «просто временно». Не вводите её в менеджер паролей, которым вы пользуетесь и для стриминговых сервисов. Каждое такое действие перемещает seed в инфраструктуру, спроектированную для того, чтобы быть искомой, синхронизируемой и восстанавливаемой — то есть в полную противоположность тому, что вам нужно.

Хороший ответ по умолчанию — бумага: запишите слова от руки, спрячьте бумагу там, куда есть доступ только у вас, и не рассказывайте, где она. Бумага дешёвая, отрицаемая и невосприимчива к удалённым атакам. Она же уязвима к домашним пожарам и наводнениям.

Лучший ответ по умолчанию — металл: выбейте или выгравируйте слова на пластине из нержавеющей стали или титана. Это переживёт огонь и воду. От атакующего, нашедшего пластину, это не защитит, так что место играет не меньшую роль, чем материал.

Для большинства людей разумная схема — две копии в двух местах с разными режимами отказа: одна дома в чём-то огнестойком, вторая вне дома (надёжный родственник, банковская ячейка, запечатанный конверт у адвоката). Две копии в одном доме не решают ничего — один пожар уничтожает обе. Пять копий в пяти местах прекрасны, пока вы не забыли, где пятая, а её не нашёл посторонний. Всегда взвешивайте восстановимость против раскрытия; и то, и другое — реальные риски.

Как мультиподпись 2-of-2 меняет арифметику

У кошельков с одним seed жестокое свойство: одна утечка фразы — полная потеря. Атакующему не нужен ваш гаджет, ваш пароль или ваше присутствие — ему нужны слова.

SSP использует схему мультиподписи 2-of-2: каждая транзакция должна быть совместно подписана двумя независимыми ключами — одним на телефоне, другим в расширении браузера. У каждого ключа своя seed-фраза. Ни одна seed-фраза по отдельности не может сдвинуть ни одной монеты.

Это меняет расчёт в очень конкретном и узком смысле. Если атакующий компрометирует одно устройство, копирует одну seed-фразу или социальной инженерией ломает одну половину конфигурации, потратить он всё равно не может. Ему нужно скомпрометировать обе — независимо друг от друга. Два отдельных пути проникновения, два отдельных физических доступа, две отдельные резервные копии, которые нужно украсть.

Чего мультиподпись не делает — она не делает вас неуязвимым. Если обе seed-фразы оказались в одной тетради, одном облаке или одном ящике стола, безопасность схлопнулась обратно к одному seed. Если вы используете одну и ту же passphrase, пишете обе фразы на одной металлической пластине или храните обе копии в одном здании, атакующий, добравшийся до этой единственной точки, получит всё. Мультиподпись поднимает стоимость атаки, но только если оба фактора по-настоящему независимы. Относитесь к каждому seed так, как если бы он был единственным.

Короткий чек-лист

  • Записывайте каждую seed-фразу на бумагу или металл — от руки, по порядку, точно как показывает кошелёк.
  • Никогда не вводите seed-фразу в цифровое устройство, которое ещё не настроено на её использование. Никаких облачных заметок, никаких менеджеров паролей, никаких исключений «только на минутку».
  • Держите не менее двух физических копий каждого seed в двух местах с разными режимами отказа (огонь, вода, кража).
  • Проверьте восстановление на одноразовой установке, прежде чем переводить реальные средства. Резервная копия, которую вы никогда не восстанавливали — это надежда, а не резервная копия.
  • Если вы используете SSP, относитесь к двум seed-фразам как к полностью независимым. Разные физические места, разные носители, разные мысленные категории.

Следующий шаг

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

Поделиться статьёй

Похожие статьи