BIP44
An implementation of the BIP44 spec for organizing Hierarchical Deterministic Bitcoin addresses. Based on the BIP32 spec.
Examples
var bip44 = Bip44("<some hex seed>");
List<Account> accounts = bip44.coins[0].accounts // coin 0 is bitcoin
Discovery
The specification mandates that accounts, and ultimately addressess, are
discoverable. Currently only two remote sources can be queried: Blockchair and
Blockstream. The Scanner
interface should make it easier to add sources.
Supported coins
It is trivial to add more iff the coin appears in SLIP44.
- Bitcoin
- Testnets
- Litecoin
- Idena
Installing
Add it to your pubspec.yaml
:
dependencies:
bitcoin_bip44: ^0.1.0
TODO
- Make the scanners robust versus exceptions thrown by the remotes
- Add Scanner for locally run Bitcoin node
- Only the first scanner is ever used
- Only traditional Bitcoin addresses (starting with a '1') are scanned for, add segwit
- Add 'Address gap limit'
- Cache address scanning
Licence overview
All files in this repository fall under the license specified in COPYING. The project is licensed as AGPL with a lesser clause. It may be used within a proprietary project, but the core library and any changes to it must be published online. Source code for this library must always remain free for everybody to access.