BIP44 - Multi-Account Hierarchy for Deterministic Wallets¶
BIP44 (Bitcoin Improvement Proposal 44) is one of the Bitcoin improvement proposals, put forward by Marek Palatinus and Pavol Rusnak in 2014. BIP44 builds on the BIP32 hierarchical deterministic wallet standard to define a standardized multi-currency, multi-account key derivation path structure, enabling different wallet software to manage multiple cryptocurrencies in a unified manner.
Core Concept¶
BIP44 solves the problem of inconsistent path structures in BIP32. While BIP32 defines how to derive keys, it does not specify a concrete path structure. BIP44 provides a standardized five-level path structure so that all compatible wallets can organize keys in the same way.
Standard Path Structure¶
The path format defined by BIP44 is:
Detailed Level Descriptions¶
1. Purpose Level¶
- Fixed value:
44' - Indicates compliance with the BIP44 standard
- Uses hardened derivation
- Other standards use different values:
- BIP49 (P2WPKH-nested-in-P2SH) uses
49' - BIP84 (native SegWit) uses
84' - BIP86 (Taproot) uses
86'
2. Coin Type Level¶
- Uses hardened derivation
- Assigns a unique numeric identifier to each cryptocurrency
- Common coin type codes:
- Bitcoin (BTC):
0' - Bitcoin Testnet:
1' - Litecoin (LTC):
2' - Dogecoin (DOGE):
3' - Ethereum (ETH):
60' - Cosmos (ATOM):
118' - Full list available at SLIP-0044
3. Account Level¶
- Uses hardened derivation
- Increments starting from
0' - Allows users to create logically independent accounts for different purposes
- For example:
0': Personal main account1': Work account2': Savings account
4. Change Level¶
- Uses normal derivation (non-hardened)
- Only two values:
0: External chain (receiving addresses, publicly shared)1: Internal chain (change addresses, used internally)- This distinction aids privacy protection and account management
5. Address Index Level¶
- Uses normal derivation (non-hardened)
- Increments starting from
0 - Theoretically can generate 2^31 addresses
- Used sequentially for easy wallet scanning and recovery
Path Examples¶
Bitcoin Addresses¶
m/44'/0'/0'/0/0 -> First Bitcoin receiving address
m/44'/0'/0'/0/1 -> Second Bitcoin receiving address
m/44'/0'/0'/1/0 -> First Bitcoin change address
m/44'/0'/1'/0/0 -> First receiving address of the second account
Ethereum Addresses¶
Multi-Currency Wallet¶
m/44'/0'/0'/0/0 -> Bitcoin address
m/44'/2'/0'/0/0 -> Litecoin address
m/44'/60'/0'/0/0 -> Ethereum address
m/44'/118'/0'/0/0 -> Cosmos address
Technical Advantages¶
1. Multi-Currency Support¶
Users can manage multiple cryptocurrencies with the same mnemonic phrase, without needing to create a separate wallet for each currency.
2. Multi-Account Management¶
Supports creating multiple logical accounts under a single currency for categorized fund management: - Personal/business account separation - Fund isolation for different projects or purposes - Simplified accounting and auditing
3. Privacy Protection¶
By distinguishing between receiving addresses and change addresses: - Improves transaction privacy - Avoids address reuse - Reduces the risk of address correlation analysis
4. Wallet Interoperability¶
Standardized paths mean: - Different wallet software can be mutually compatible - Users can freely switch wallets without losing assets - Hardware wallets and software wallets can work together seamlessly
5. Simplified Backup¶
Users only need to back up: - One set of mnemonic words (via BIP39) - (Optional) a passphrase to recover all accounts across all currencies
Relationship with Other BIPs¶
BIP32¶
BIP44 is based on BIP32's hierarchical deterministic wallet and uses its defined key derivation algorithm.
BIP39¶
Commonly used together: 1. BIP39 converts a mnemonic phrase into a seed 2. BIP32 defines the key derivation mechanism 3. BIP44 specifies the concrete path structure
BIP49 and BIP84¶
- BIP49: For P2WPKH-nested-in-P2SH (compatibility SegWit) addresses, path uses
49' - BIP84: For native SegWit (Bech32) addresses, path uses
84' - These are evolutions of BIP44, adapting to new address formats
BIP86¶
For Taproot (P2TR) addresses, path uses 86', the latest address type.
Practical Applications¶
Hardware Wallets¶
All major hardware wallets support BIP44: - Ledger: Supports 100+ currencies - Trezor: Supports multi-currency, multi-account - Coldcard: Bitcoin-focused, fully compatible
Software Wallets¶
Most modern software wallets implement BIP44: - MetaMask: Ethereum wallet (uses m/44'/60'/0'/0/x) - Trust Wallet: Multi-currency mobile wallet - Exodus: Desktop and mobile multi-currency wallet - Electrum: Bitcoin wallet
Enterprise Applications¶
Enterprises and exchanges use BIP44 to manage large numbers of addresses: - Generate unique deposit addresses for each user - Use extended public keys to generate new addresses without exposing private keys - Simplify key management for hot and cold wallets
Security Considerations¶
1. Hardened Derivation¶
The first three levels (purpose, coin_type, account) use hardened derivation to prevent: - Deriving the parent private key from the extended public key and a child private key - Key correlation between accounts
2. Address Reuse¶
Although addresses can be reused, it is strongly recommended to: - Use a new address for each transaction - Improve privacy protection - Reduce security risks
3. Gap Limit¶
Address scanning strategy during wallet recovery: - Typically checks 20 consecutive unused addresses - Gaps in between may cause some funds to go undiscovered - Using addresses sequentially is recommended
4. Mnemonic Security¶
The BIP44 path itself is public; security depends entirely on: - Confidentiality of the mnemonic phrase - Strength of the optional passphrase - Good key storage practices
Account Discovery¶
Account discovery algorithm during wallet recovery:
- Start from the first account (account 0)
- Derive external and internal chains
- Check the transaction history for each address
- If the entire account is empty (20 consecutive addresses with no transactions), stop scanning
- Otherwise continue checking the next account
Extensions and Variants¶
Single Address Wallets¶
Some wallets (such as early Ethereum wallets) simplify to single-address mode:
Custom Paths¶
Some wallets use non-standard paths: - Ledger Live Ethereum (legacy): m/44'/60'/0' - Ledger Live Ethereum (new): m/44'/60'/x'/0/0 - MEW (MyEtherWallet): m/44'/60'/0'/0
Future Development¶
- BIP86: Taproot address support
- New coin type codes are continuously added
- More specialized path standards may emerge
Summary¶
BIP44 makes cryptocurrency wallet key management simple, secure, and interoperable through its standardized path structure. It is the foundation of modern multi-currency wallets, allowing users to securely manage all crypto assets with a single set of mnemonic words.
BIP44's success lies in: - Simplicity: A clear five-level structure that is easy to understand and implement - Flexibility: Supports unlimited currencies, accounts, and addresses - Compatibility: Has become an industry standard with widespread support - Security: Protects critical levels through hardened derivation
For regular users, BIP44 makes wallet backup and recovery simple and reliable; for developers, it provides a clear specification ensuring interoperability between different wallets. This makes BIP44 an indispensable part of cryptocurrency infrastructure.