This guide explains BIP 83 Dynamic Hierarchical Deterministic Key Trees in plain English. It covers the problem behind the BIP, why it matters and whether the proposal is part of Bitcoin today.
TL;DR
- What it is: BIP 83 proposed a convention for dynamically nesting BIP 32 hierarchical deterministic key trees. It reserved child index zero for deeper sublevels and used positive child indices for signing keys, with compact double-slash notation.
- Why it matters: BIP 83 showed how an HD tree could grow without fixing every future level, but the flexibility depended on shared mappings and exact path conventions. Use current wallet standards and retain BIP 83 only as documented historical context.
- Current position: The Informational proposal is Closed and is not a universal wallet recovery or derivation standard.
BIP 83 Dynamic Hierarchical Deterministic Key Trees in simple English
BIP 83 Dynamic Hierarchical Deterministic Key Trees: Arbitrary depth could model payment-channel decision trees, with disclosure of a parent secret revoking a branch. That was an illustrative use, not a current Lightning key schedule.
Simple example
A node operator is checking BIP 83 Dynamic Hierarchical Deterministic Key Trees. Nested nodes used p/0/n, where n could begin at zero. It reserved one child position for sublevels so applications could extend a hierarchy without predefining every possible depth.
Key terms in plain English
- BIP:
- Bitcoin Improvement Proposal: a document describing a proposed rule, standard or process. Its status must be checked separately.
- Node:
- A computer running Bitcoin software that checks data and communicates with other peers.
The leaf-or-directory problem
Once a BIP 32 node is treated as a signing-key parent, predictable deeper nesting can conflict with the same child space. BIP 83 compared this with files and directories. It reserved one child position for sublevels so applications could extend a hierarchy without predefining every possible depth.
Reserved child zero
At a signing parent p, children p/k for k greater than zero were signing keys. Nested nodes used p/0/n, where n could begin at zero. Hardened variants were also possible. The convention consumed child zero deliberately and differed from schemes that expected ordinary receiving keys at that index.
Double-slash notation
The proposal wrote p//n for p/0/n and p//'n for a hardened zero followed by n. Notation is documentation, not bytes in a wallet file. An implementation must expand it unambiguously and specify whether each step is hardened before deriving or exchanging any extended public key.
Open application mappings
Rather than assign fixed meanings to every level, applications could exchange mappings for accounts, change, invoices or protocol state. Flexibility also creates interoperability risk: the same seed plus a different mapping discovers different keys. A backup needs the mapping and application version, not just the mnemonic.
Channel and revocation ideas
Arbitrary depth could model payment-channel decision trees, with disclosure of a parent secret revoking a branch. That was an illustrative use, not a current Lightning key schedule. Modern channel software has precise deployed derivations and state machines that must not be replaced with a generic BIP 83 interpretation.
Security of hardened choices
Non-hardened public derivation supports watch-only workflows but can expose parent secrets if an extended public key is combined with a child private key. Hardened steps change sharing and recovery properties. Operators must document which extended keys cross trust boundaries and avoid publishing account-level xpubs unnecessarily.
Recovery rehearsal
Create a disposable seed, derive several signing keys and nested subaccounts with both written and machine-readable paths, then recover them in an independent implementation. Include index zero collision tests, hardened notation and a missing mapping. Confirm the production wallet does not claim BIP 83 compatibility unless it reproduces every path.
Frequently asked questions
What is the main point of BIP 83 Dynamic Hierarchical Deterministic Key Trees?
BIP 83 Dynamic Hierarchical Deterministic Key Trees: Arbitrary depth could model payment-channel decision trees, with disclosure of a parent secret revoking a branch.
For BIP 83 Dynamic Hierarchical Deterministic Key Trees, what should a beginner know about the leaf-or-directory problem?
Once a BIP 32 node is treated as a signing-key parent, predictable deeper nesting can conflict with the same child space.
For BIP 83 Dynamic Hierarchical Deterministic Key Trees, what should a beginner know about reserved child zero?
At a signing parent p, children p/k for k greater than zero were signing keys.
For BIP 83 Dynamic Hierarchical Deterministic Key Trees, what should a beginner know about double-slash notation?
The proposal wrote p//n for p/0/n and p//'n for a hardened zero followed by n.
Conclusion
BIP 83 showed how an HD tree could grow without fixing every future level, but the flexibility depended on shared mappings and exact path conventions. Use current wallet standards and retain BIP 83 only as documented historical context.
Primary sources
Check the current specification status and the documentation for the exact implementation you operate before moving production funds or changing a mining node.
Join the ASIC Mining Discussion
Members can read and join the discussion
Log in to read comments from other miners. Create a free account if you would like to ask a question or share your experience.
Membership helps us protect the discussion from spam and keep answers useful.