Перейти к содержимому
buybitcoinsmart

Глоссарий / Адреса и ключи

Уровень назначения BIP-44

Что такое уровень назначения BIP-44?
Уровень назначения BIP-44 представляет собой первое число в пути деривации HD, оно является усиленным (hardened) и зафиксировано на 44', что закрепляет все поддерево под ним за одним стандартом кошелька.

Определено в BIP-44.

Уровень назначения является первым из пяти уровней, которые BIP-44 определяет под мастер-ключом, а BIP-43 резервирует эту позицию, чтобы несовместимые схемы кошельков никогда не делили одно дерево. BIP-44 фиксирует значение на 44', которое записывается как 0x8000002C, а спецификация была назначена 24 апреля 2014 года. Откройте кошелек с неверным уровнем назначения, и он построит другие адреса из той же сид-фразы, покажет ноль и оставит ваши биткоины в сети.

Как это работает

Уровень назначения является усиленным (hardened) индексом непосредственно под мастер-ключом, и BIP-44 закрепляет его на константе 44'. Все, что ниже, принадлежит этому стандарту в фиксированной форме из пяти уровней: m / purpose' / coin_type' / account' / change / address_index. Число 44 является собственным номером BIP, что и рекомендует BIP-43.

То, что объявляет уровень, уже, чем большинство предполагает. BIP-44 говорит лишь, что константа "indicates that the subtree of this node is used according to this specification". Формат адреса в документе нигде не назван.

Ниже уровня назначения усиление продолжается еще два уровня, а затем прекращается.

УровеньИндексУсиленныйВыбирает
назначение44'дастандарт, которому принадлежит поддерево
тип монеты0'дабиткоин, где 1' означает testnet
счет0'даодна идентичность, нумеруемая с 0
сдача0нетвнешняя цепочка 0, внутренняя 1
индекс адреса0нетадрес, считая вверх

Так, m / 44' / 0' / 0' / 0 / 0 является первым адресом получения первого счета биткоина, а перенос третьего уровня на 1' открывает второй счет, который не делит с ним историю. В самом BIP-44 присутствуют только два типа монет, 0 и 1; остальные находятся в SLIP-0044, который поддерживает SatoshiLabs и на который ссылается BIP.

Где это встречается

Уровень назначения появляется в каждом пути деривации, который печатает кошелек, и 44' означает legacy. Путь, начинающийся с 44', создает адреса, начинающиеся с 1, хотя и не потому, что BIP-44 выбрал этот формат. BIP-44 старше всех альтернатив, а правило, что уровень назначения подразумевает тип адреса, появилось позже: BIP-49 в 2016 году, BIP-84 в 2017 году и BIP-86 в 2021 году каждый взял собственное значение назначения, чтобы обозначить другой тип скрипта.

У этого есть цена, с которой вы сталкиваетесь при восстановлении. Поскольку каждый стандарт владеет отдельной ветвью, процедура обнаружения счетов, описанная BIP-44, выполняется по одному разу для каждого уровня назначения, который поддерживает программное обеспечение, и каждый проход сканирует внешнюю цепочку, пока не достигнет предела разрыва, в настоящее время установленного на 20 неиспользованных адресов подряд, прежде чем сдаться. Кошелек, предлагающий четыре формата, делает четыре прохода. Кошелек, предлагающий один, делает один проход, не находит истории на своей ветви и показывает пустой счет, пока биткоины находятся под другим первым числом.

На практике значение видно в сведениях о счете кошелька рядом с расширенным публичным ключом или в поле свободного текста, которое предлагает расширенное восстановление. В нашем обзоре Electrum указано как недостаток, что интерфейс предполагает, будто вы уже знаете, что такое адрес сдачи и путь деривации, и уровень назначения является той частью этого поля, которую нужно правильно указать в первую очередь. Одна быстрая проверка: второй уровень, показывающий 1', а не 0', является ветвью testnet, где ничто не является реальными деньгами.

Уровень назначения BIP-44 vs путь деривации

Уровень назначения является одним числом внутри пути, а не самим путем. Путь называет пять уровней по порядку, и замена только первого, с 44' на 84', передает ту же сид-фразу другому стандарту, при этом уровни ниже сохраняют значения, которые дал им BIP-44: BIP-84 использует их без изменений. Путь является BIP-44 только тогда, когда его первый уровень показывает 44', и именно это ведущее число, а не подпись, напечатанная рядом, сообщает, какой стандарт построил адреса.

Не путать с

Часто задаваемые вопросы

Всегда ли путь, начинающийся с 44', означает legacy-адреса?

На практике да, но сам BIP-44 не называет никакого формата адреса. Он говорит лишь, что константа обозначает поддерево, используемое согласно этой спецификации, а правило, что уровень назначения подразумевает тип скрипта, было установлено позже, когда BIP-49, BIP-84 и BIP-86 каждый взял собственное значение назначения.

Почему номер назначения равен 44?

Потому что BIP-43 рекомендует, чтобы схема использовала собственный номер BIP в качестве константы назначения, из чего константа BIP-44 становится 44', записываемой как 0x8000002C. Это значение не несет иного смысла, кроме обозначения того, какому стандарту принадлежит ветвь под ним.

Можно ли перейти с ветви 44' на более новый тип адреса?

Да. Одна сид-фраза сразу питает все ветви уровней назначения, поэтому кошелек может открыть счет под другим уровнем назначения, и вы отправите туда старые биткоины обычной транзакцией. Тем временем на ветви 44' ничего не меняется, и адреса под ней продолжают работать.

Читайте далее

Связанные термины

Еще в разделе «Адреса и ключи»

Читать эту страницу на английском