Расширенный публичный ключ позволяет кошельку создавать все ваши адреса и видеть балансы, но не даёт права тратить средства, и именно его участники мультиподписи обменивают между собой при настройке хранилища: каждый отдаёт публичную часть, оставляя приватную у себя. Эта асимметрия и делает возможным совместный кошелёк без передачи ключей.
Что он содержит
Две составляющие: сам публичный ключ и дополнительное значение, называемое кодом цепочки, а вместе они позволяют вычислить любой дочерний публичный ключ по номеру, а значит и соответствующий адрес. Приватных данных в этой структуре нет, поэтому подписать операцию с её помощью невозможно.
Обратное вычисление не работает. Из публичной части приватную не восстановить, и в этом основа всей конструкции.

Зачем он нужен в мультиподписи
| Задача | Как решается |
|---|---|
| Создание общих адресов | Каждый участник даёт свой ключ, из набора выводятся адреса |
| Просмотр балансов | Любой участник видит состояние кошелька без права тратить |
| Проверка конфигурации | Набор ключей позволяет убедиться в правильности настройки |
| Восстановление структуры | Для сборки кошелька нужны все публичные ключи, а не только свой |
Что нужно хранить помимо seed-фразы
Для обычного кошелька фразы достаточно, при этом для мультиподписи — нет: чтобы восстановить хранилище, нужны публичные ключи всех участников и описание схемы, то есть порог подписей и их общее число. Без этой информации ваша собственная фраза бесполезна, поскольку адреса выводятся из набора ключей, а не из одного.
Поэтому файл конфигурации сохраняют наравне с фразой, и он не содержит секретов и может храниться менее строго, но его утрата означает потерю доступа.
Вопрос приватности
Расширенный публичный ключ раскрывает все адреса и, следовательно, всю историю операций и остатки, а передавая его, вы отдаёте полную картину своих финансов по этому кошельку, хотя и без возможности тратить. Для совместного хранилища это нормально, для посторонних сервисов — нет.
Чего делать не стоит
- Публиковать расширенный ключ в открытых чатах при настройке
- Передавать его сервисам, которым достаточно отдельного адреса
- Хранить конфигурацию мультиподписи только у одного участника
- Путать расширенный публичный ключ с приватным при экспорте
Ко мне обращалась группа, настроившая мультиподпись из трёх ключей, при этом конфигурацию сохранил только организатор, и когда его устройство вышло из строя вместе с резервной копией файла, оставшиеся двое не смогли собрать кошелёк. Их seed-фразы были целы, но без публичных ключей третьего участника и описания схемы адреса не выводились.
Как выглядит и где находится
Это длинная строка, начинающаяся с характерного префикса, который зависит от типа адресов и сети, причём кошельки экспортируют её в разделе настроек или при создании совместного хранилища, обычно с явным предупреждением о приватности. Сходство префиксов публичной и приватной версий требует внимания при копировании.
Пути деривации
Адреса выводятся по заданному пути, и для мультиподписи он отличается от обычного кошелька, и этот параметр входит в конфигурацию наравне с ключами: при неверном пути те же самые ключи дадут другой набор адресов, и средств вы не увидите.
Кошельки обычно подставляют стандартное значение автоматически. Проблема возникает при сборке хранилища в приложении другого производителя, где умолчания могут не совпасть, и путь приходится указывать вручную.
Проверка перед объединением
Каждый участник должен сверить отпечаток своего ключа на собственном устройстве с тем, что видит в общей конфигурации, и эта проверка защищает от подмены: злоумышленник, заменивший один из ключей своим, получит контроль над кошельком при достижении порога подписей.
Отпечаток ключа
Короткая последовательность символов, вычисляемая из расширенного публичного ключа, служит для быстрой сверки, и сравнивать длинные строки целиком неудобно, а отпечаток помещается на экране устройства и проверяется за несколько секунд.
Устройства показывают его при настройке мультиподписи именно для этого, а совпадение отпечатка на вашем экране и в общей конфигурации подтверждает, что ключ не подменён в процессе передачи.
Кошельки только для наблюдения
Расширенный публичный ключ позволяет создать кошелёк, который видит балансы и историю, но не может подписывать. Это удобно для контроля состояния хранилища с обычного устройства без доступа к ключам, и для многих задач такого режима достаточно.
Смежные темы разобраны у нас. Вот основные. Общий раздел — кошельки и хранение. Шире — статьи про криптокошельки. Настройку хранилища разбирает материал как настроить мультисиг-хранилище для семьи, а устройство фразы — статья стандарт BIP-39 и слова восстановления.
Вопросы и ответы
Может ли кто-то украсть средства, зная расширенный публичный ключ?
Нет. Подписать операцию без приватной части невозможно. Но он раскрывает все ваши адреса, балансы и историю операций по этому кошельку, поэтому передавать его стоит только участникам совместного хранилища и доверенным инструментам наблюдения.
Что делать при утрате файла конфигурации?
Если сохранились публичные ключи всех участников и параметры схемы, конфигурацию можно собрать заново вручную, а без них восстановление невозможно даже при наличии всех seed-фраз, и это главная причина хранить описание схемы отдельно у каждого участника.
Отличается ли он от обычного публичного ключа?
Да, обычный ключ соответствует одному адресу, а расширенный позволяет вывести их неограниченное количество, при этом эта разница и делает его удобным для кошельков, где адреса меняются с каждой операцией, но одновременно расширяет объём раскрываемой информации.
Вердикт
Расширенный публичный ключ показывает всё и не позволяет ничего: адреса и балансы видны, тратить средства нельзя, причём для мультиподписи храните конфигурацию наравне с фразой — без неё ваш ключ бесполезен, и каждый участник должен иметь свою копию. Передавайте ключ только участникам хранилища: он раскрывает полную финансовую картину по кошельку.
Стандарты проверяйте по первоисточникам. Описание стандарта иерархических кошельков BIP-32 и справка Ledger по работе с мультиподписью содержат техническое описание и порядок настройки.
Обсуждение
Добавить комментарий