bits.wallet package

Submodules

bits.wallet.hd module

BIP32, BIP39, BIP43, BIP44

class bits.wallet.hd.HD(passphrase: str = '', strength: int = 256)

Bases: object

BIP44, BIP43, BIP39, BIP32 compatible wallet

ADDR_GAP_LIMIT: int = 20
classmethod from_mnemonic(mnemonic, passphrase: str = '')
classmethod from_xkey(xkey)
get_root_keys() Tuple[str]

Return tuple of serialized master (root) keys (xpub/xprv) base58(check) encoding :param public: bool, True for xpub else xprv

get_xkeys_from_path(path: str) Tuple[str]

Derives child xkeys from path and class’ master extended private key :param path: str, path to extended key, e.g. m/44’/0’/0’/0/0

Returns:

xprv, xpub

mnemonic: str = ''
scan_for_utxo()

Scan blockchain for utxo owned by this wallet https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#address-gap-limit

bits.wallet.hd.derive_child(xkey: str, index: int) str

Derives child xpub from parent xpub OR child xprv from parent xprv :param xkey: str, parent xpub or xprv :param index: int, child number

bits.wallet.hd.derive_from_path(path: str, master_extended_key: bytes) bytes

Derive extended key at particular path from master extended key :param path: str, path in shortened notation, e.g. m/0’/1 :param master_extended_key: bytes, serialized master extended key

bits.wallet.hd.get_xpub(xkey: bytes)

Return xpub from xprv (or xpub)

Parameters:

xkey – bytes, serialized extended private key

>>> xpub = b'xpub6H5w431hKsmLXYzEwpyuZ2BmqGzbf7zBanX8Fg8dQFUDmKNLMGKom15X1go8QBoQn2BrZrNweRwVVPjYaFtbpuk7MzCdMkHdnNB8fywmjyh'
>>> get_xpub(xpub)
b'xpub6H5w431hKsmLXYzEwpyuZ2BmqGzbf7zBanX8Fg8dQFUDmKNLMGKom15X1go8QBoQn2BrZrNweRwVVPjYaFtbpuk7MzCdMkHdnNB8fywmjyh'
bits.wallet.hd.p2pkh(xpub)

Return p2pkh bitcoin address from xpub

Module contents

class bits.wallet.HD(passphrase: str = '', strength: int = 256)

Bases: object

BIP44, BIP43, BIP39, BIP32 compatible wallet

ADDR_GAP_LIMIT: int = 20
classmethod from_mnemonic(mnemonic, passphrase: str = '')
classmethod from_xkey(xkey)
get_root_keys() Tuple[str]

Return tuple of serialized master (root) keys (xpub/xprv) base58(check) encoding :param public: bool, True for xpub else xprv

get_xkeys_from_path(path: str) Tuple[str]

Derives child xkeys from path and class’ master extended private key :param path: str, path to extended key, e.g. m/44’/0’/0’/0/0

Returns:

xprv, xpub

mnemonic: str = ''
scan_for_utxo()

Scan blockchain for utxo owned by this wallet https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#address-gap-limit