Derivation Path — упорядкована послідовність звичайних і hardened індексів для виведення ключа за BIP 32. Це не seed, приватний ключ чи адреса; той самий запис з іншим початковим ключем дає інші ключі.
У m/0/7 символ m означає головний приватний вузол, а кожна риска — наступне виведення: спочатку дитина 0, потім її дитина 7. Використовується розширений ключ із chain code. Числа не є сумами чи номерами транзакцій; сам шлях не надає матеріалу для підпису. [BIP 32 — Hierarchical Deterministic Wallets]
BIP 32 ділить 32-бітові індекси на звичайні від 0 до 2^31−1 і hardened від 2^31 до 2^32−1. Записи 0' та 0h означають hardened індекс 2^31, а не звичайний 0; BIP 380 приймає апостроф і h. Звичайного публічного нащадка можна отримати з xpub, hardened нащадка з одного xpub — ні. [BIP 32 — Hierarchical Deterministic Wallets] [BIP 380 — Output Script Descriptors]
Приклад m/84'/0'/0'/0/7 позначає BIP 84, Bitcoin mainnet, рахунок 0, зовнішню гілку отримання 0 та індекс 7, тобто восьму адресну позицію. Перші три рівні hardened, останні два звичайні. За BIP 44 гілка 1 призначена для власної решти; індекси починаються з нуля. [BIP 44 — Multi-Account Hierarchy] [BIP 84 — Native P2WPKH derivation]
BIP 43 резервує перший hardened рівень для purpose. Домовленість 44' пов’язана з P2PKH, 49' — з P2SH-P2WPKH, 84' — з P2WPKH, 86' — із single-key P2TR. Саме число не нав’язує скрипт консенсусу; програма має створити відповідний вихід. Не всі гаманці використовують ці домовленості. [BIP 43 — Purpose Field] [BIP 44 — Multi-Account Hierarchy] [BIP 49 — P2WPKH nested in P2SH] [BIP 84 — Native P2WPKH derivation] [BIP 86 — Single Key P2TR Outputs]
Якщо xpub уже експортовано на m/84'/0'/0', для цього нащадка достатньо відносного суфікса /0/7. Повторне додавання всього кореневого шляху до xpub рахунку є іншим виведенням, а його hardened кроки з цього xpub усе одно неможливі. Серіалізовані глибина й батьківський fingerprint не містять повної історії початкового шляху. [BIP 32 — Hierarchical Deterministic Wallets] [BIP 380 — Output Script Descriptors]
BIP 380 дозволяє походження fingerprint/шлях у квадратних дужках перед ключем і суфікс деривації після нього. Походження описує вже виконані кроки, суфікс ще потрібно вивести. Descriptor також визначає скрипт і може містити діапазон через *. Fingerprint має чотири байти й допускає колізії; це не доказ особи та не заміна ключа. [BIP 380 — Output Script Descriptors] [BIP 32 — Hierarchical Deterministic Wallets] [Bitcoin Core 29.0 — deriveaddresses RPC]
BIP 32 застерігає: батьківський xpub разом із витеклим звичайним приватним нащадком може розкрити розширений приватний ключ батька. Межа hardened відокремлює цей конкретний процес, але не захищає сам уже розкритий ключ. Спільний xpub також відкриває публічну гілку й може шкодити приватності, хоча сам не підписує. [BIP 32 — Hierarchical Deterministic Wallets]
Під час відновлення перевіряють правильний seed і можливу passphrase, мережу, рахунок, гілку, скрипт і діапазон пошуку разом із Gap Limit. Правильний синтаксис може вказувати на іншу порожню гілку; нульовий баланс тому не доводить неправильності ключів. Перевірка спирається на відому адресу отримання та історію, а не лише на прийняття шляху програмою. [BIP 39 — From mnemonic to seed] [BIP 44 — Multi-Account Hierarchy] [BIP 380 — Output Script Descriptors]
Для повної картини прочитайте також HD Wallet, Extended Public Key (xpub), Gap Limit, Output Descriptor, BIP 39. На цю статтю також посилаються HD Wallet, Watch-only Wallet, Вихід решти, Extended Public Key (xpub).