HD означает "hierarchical deterministic"
(иерархически детерминированный) звучат сложно, но на самом деле всё довольно просто. Слово "иерархический" в контексте Биткойна значит, что адреса в какой-то мере связаны друг с другом. В частности, вы можете использовать один адрес для получения другого, и использовать значение "seed" (секретную фразу) для того, чтобы сгенерировать множество связанных адресов.
Слово "детерминированный" описывает систему, в которой нет места случайностей в развитии будущих состояний системы.
"
У пользователя HD wallet есть программный кошелёк с иерархически детерминированной структурой (деревом) секретных/публичных ключей. В корне такой структуры (дерева) находится секретный/публичный мастер ключ. Этот корень высчитывается из случайного числа, называемого затравочным числом или затравкой (см. https://bitcointalk.org/index.php?topic=5159855.msg51690150#msg51690150), которая наглядно отображается пользователю в виде SEED фразы." (С)( Captain-Cryptory)
https://bitcointalk.org/index.php?topic=5246668.msg54392334#msg54392334https://bits.media/hd-wallet/
Деривация и путь деривации.Прежде чем мы попытаемся понять, что такое путь деривации, давайте посмотрим, что означает слово « деривация» . Стандартное определение - «получить что-то из указанного источника». В математическом контексте определение является немного более конкретным: «Получить [функцию или уравнение] из другого с помощью последовательности логических шагов, например, путем дифференцирования».
Проще говоря, это получение чего-то, от чего-то другого, очень специфическим способом. «Путь деривации» - это просто причудливый способ сказать «это то, что вы используете, чтобы получить все свои учетные записи из вашей мнемонической фразы».
Анатомия пути происхожденияВот как выглядит путь деривации: m / 44 '/ 60' / 0 '/ 0' / 0
Каждое из чисел в этой последовательности играет роль, и каждое из них меняет, каким будет частный ключ, открытый ключ и адрес. Если вы хотите узнать больше о технических аспектах этого, вы можете прочитать больше здесь .
https://ethereum.stackexchange.com/questions/70017/can-someone-explain-the-meaning-of-derivation-path-in-wallet-in-plain-english-sНаиболее важный вывод заключается в том, что если вам нужен следующий адрес из фразы, вы просто увеличиваете последний номер на единицу:
Адрес № 1: m/ 44 '/ 60' / 0 '/ 0' / 0
Адрес № 2: m / 44 '/ 60' / 0 '/ 0' / 1
Адрес № 3: m / 44 '/ 60' / 0 '/ 0' / 2
….
Адрес № 99: m / 44 '/ 60' / 0 '/ 0' / 98
(В программировании вы начинаете считать с 0. 0… 1… 2… 3… вместо 1… 2… .3…. Это отличается от того, как мы считаем в нашей повседневной жизни, поэтому поначалу это может сбить с толку .)
https://medium.com/mycrypto/wtf-is-a-derivation-path-c3493ca2eb52![](https://ip.bitcointalk.org/?u=https%3A%2F%2Fi.ibb.co%2FRYpm7fK%2F2.png&t=665&c=FKa4t1O4bkjPDQ)
Пример: пути деривации и его соответствующих адресов
Кошельки, которые обеспечивают функциональность для получения множества разных адресов из одной точки доступа, называются HD-кошельками, что означает иерархические детерминированные кошельки. Когда эти кошельки создаются впервые, создается корневое семя / ключ. Это базовое семя, из которого будут исходить все ветви и адреса в этом конкретном кошельке. В большинстве случаев этот ключ получен из стандарта энтропии 128 или 256 бит. Чем выше энтропия, тем более рандомизированным и безопасным является это семя.
Оттуда кошелек использует BIP, что означает «Протокол улучшения биткойнов», чтобы определить, как начальное число разветвляется на разные адреса или криптовалюты. Несмотря на то, что в этом стандарте есть слово Bitcoin, BIP 44 позволяет использовать протоколы в разных криптографических системах. Существуют и другие BIP, такие как BIP 32, 39 и 43. Они часто упоминаются в криптопространстве, и каждый несет свое значение для всей системы. Например, BIP 39 используется для генерации мнемонических фраз, взятых из длинного списка слов, показанных здесь.
https://github.com/bitcoin/bips/blob/master/bip-0039/english.txtЭти протоколы важны, но не являются необходимыми для понимания широкой публикой.
Эти протоколы используют самые разные кошельки, хотя в полной мере они часто остаются скрытыми. Например, MEWconnect использует HD-кошелек, но мы показываем пользователю только первый адрес из обширного списка адресов, упрощая их обработку.
Это может ввести в заблуждение пользователей, которые восстанавливают свою мнемоническую фразу в веб-интерфейсе, например MEW, только для того, чтобы показывать миллионы неиспользуемых пустых адресов. В этих сценариях ваш ожидаемый адрес должен заполняться как первый адрес, который вы видите в списке.
Во всех других случаях, таких как аппаратные кошельки или необработанные мнемонические фразы, пользователь может выбирать, с каким адресом он хотел бы взаимодействовать при каждом доступе к своему кошельку. В этом методе нет никакой реальной выгоды или вреда, он просто предоставляет пользователю больший выбор . Но все адреса сделаны одинаково, и первый, как правило, проще всего отслеживать в будущем.
Один и тот же стандарт, другая последовательностьКогда вы подключаетесь через HD-кошелек, некоторые кошельки используют несколько разные пути для подключения. Каждый путь генерирует совершенно новый список адресов относительно вашего корневого закрытого ключа. Вот почему важно учитывать пути деривации при устранении неполадок, связанных с адресами, доступ к которым осуществляется с помощью аппаратных кошельков.
Например, общий путь для подключения к базовому набору адресов Ethereum выглядит следующим образом: m / 44 '/ 60' / 0 '/ 0. Trezor, MetaMask, Digital Bitbox, Jaxx и Exodus, MEWconnect - это всего лишь несколько HD-кошельков, которые используют этот путь.
Эта последовательность разбита на различные разделы и изменяется в зависимости от того, с чем вы работаете. Последовательность идет:
m / цель / coin_type / account / change / address_index
Любое изменение этого номера пути или последовательности полностью изменит адреса, которые вы ожидаете увидеть. Ethereum Classic использует другой путь, используя эту последовательность: m / 44 '/ 61' / 0 '/ 0. Затем аппаратные кошельки, такие как Ledger, принимают еще более разнообразную последовательность, характерную для Ethereum Classic: m / 44 '/ 60' / 160720 '/ 0.
Как видите, не только разные криптовалюты могут иметь разные последовательности для получения адресов, но и аппаратные кошельки и расширения могут также использовать пути, отличные от нормы, создавая пространство для большого разнообразия.
путь деривацииВот список путей деривации, которые мы предлагаем для соединения с MyEtherWallet:
Ethereum — m’/44’/60’/0’/0
Ethereum Classic — m’/44’/61’/0’/0
Ethereum Testnet (Ropsten) — m’/44’/1’/0’/0
Ethereum (Ledger) — m’/44’/60’/0’
Ethereum Classic (Ledger) — m’/44’/60’/160720’/0
Ethereum Classic (Ledger, Vintage MEW) — m’/44’/60’/160720’/0’
Ethereum (Ledger Live) — m’/44’/60’
Ethereum Classic (Ledger Live) — m’/44’/61’
Ethereum (KeepKey) — m’/44’/60’
Ethereum Classic (KeepKey) — m’/44’/61’
RSK Mainnet — m’/44’/137’/0’/0
Expanse — m’/44’/40’/0’/0
Ubiq — m’/44’/108’/0’/0
Ellaism — m’/44’/163’/0’/0
EtherGem — m’/44’/1987’/0’/0
Callisto — m’/44’/820’/0’/0
Ethereum Social — m’/44’/1128’/0’/0
Musicoin — m’/44’/184’/0’/0
EOS Classic — m’/44’/2018’/0’/0
Akroma — m’/44’/200625’/0’/0
Ether Social Network — m’/44’/31102’/0’/0
PIRL — m’/44’/164’/0’/0
GoChain — m’/44’/6060’/0’/0
Ether-1 — m’/44’/1313114’/0’/0
Atheios — m’/44’/1620’/0’/0
TomoChain — m’/44’/889’/0’/0
Mix Blockchain — m’/44’/76’/0’/0
Iolite — m’/44’/1171337’/0’/0
ThunderCore — m’/44’/1001’/0’/0
Если вы не видите свой путь, или если вы недовольны вариантами, доступными по умолчанию, мы предлагаем вариант «Пользовательский путь» для взаимодействия с вашим HD-кошельком. Это покажет пользовательский список адресов по выбранному вами пути. Однако, пожалуйста, будьте осторожны при использовании пользовательских путей, так как вам придется запомнить этот путь для будущего доступа.
При взаимодействии с некоторыми аппаратными кошельками, такими как аппаратный кошелек Ledger, важно отметить, что устройство не позволит вам получить доступ к определенным путям, таким как Ethereum Classic или Mix Blockchain, без загрузки соответствующего программного обеспечения для устройства. Путь к Ethereum Classic потребует загрузки приложения Ethereum Classic через Ledger Live. Затем при доступе к вашему кошельку через MEW вам нужно будет убедиться, что на устройстве открыто соответствующее приложение.
Мы надеемся, что вы найдете это руководство по пути деривации полезным! Аппаратные кошельки являются наиболее безопасным способом управления вашей криптографией, и вам стоит позаботиться о том, чтобы разобраться в некоторых тонкостях их использования.
https://medium.com/myetherwallet/hd-wallets-and-derivation-paths-explained-865a643c7bf2