BIP 44
Multi-Account Hierarchy for Deterministic Wallets
Original title: Multi-Account Hierarchy for Deterministic Wallets
- Status
- Deployed
- Type / Layer
- Specification / Applications
- Author
- Marek Palatinus, Pavol Rusnak
- Assigned
- Status verified
- Source
- github.com/bitcoin/bips/blob/master/bip-0044.mediawiki
Summary
Gives the derivation tree defined by BIP32 a standard meaning at each level. It fixes the path to five levels — m / purpose' / coin_type' / account' / change / address_index — and specifies what each level represents. purpose is set to 44' to indicate compliance with this specification. coin_type is a constant assigned per currency (0' for Bitcoin, 1' for testnet) so that keys derived from one seed do not become mixed across currencies. account' is the unit a user separates funds into, numbered from zero. change distinguishes the external chain of receiving addresses handed to others (0) from the internal chain used for change (1), and address_index is a running counter. The BIP also defines account discovery for the case where only a seed is imported: addresses on the external chain are derived in order and checked for history, stopping after 20 consecutive unused addresses — the value known as the gap limit.
Why it matters
It lifted wallet internals from per-implementation choice to a shared convention, so that importing a seed into a different wallet finds the same funds. The idea of switching purpose to separate use cases carries directly into BIP49, BIP84 and BIP86, and the gap limit still matters in practice as the reason balances can disappear when addresses are skipped far ahead.
Related BIPs
Related articles
This page carries a summary, not a translation. The original document is authoritative, and the metadata above — including Status — was transcribed from the bips repository on the verification date shown. Always consult the original when implementing or verifying.