ZPyWallet
A Python library for programmatically interacting with wallets.
Currently beta software.
Why?Currently the IT industry lacks a agreed-upon, portable API to import a wallet, send transactions from it, check the balance and transaction history, broadcasting transactions, and the like. We already have graphical programs and websites capable of doing the above, but these are not sufficient as they all do different things. Therefore, I have created a package that is capable of handling it all, without:
- the security risk of installing several crypto dependencies
- the complexity inherent in using different libraries at the same time
Features- Ability to create and restore BIP39 mnemonic phrases
- Portable wallet format powered by protobuf
- Support for all kinds of derivation paths and many wordlist languages
- Query the balance of addresses
- Get the transaction history and UTXOs of addresses
- Fetch confirmed and unconfirmed dtransactions
- Estimate fee rates and gas for mainnet networks
- Supports Segwit addresses and transactions
- Supports RBF signalling
- Ability to broadcast transactions
- Supports many providers for fetching transaction info, with the ability to add your own nodes
- Supports BTC, LTC, ETH, DOGE, DASH as well as testnet networks
- BIP38 private key encryption/decryption
- Mnemonic phrase and private key generation
- Supports ECDSA sign/verify of messages
- Intelligently calculates change addresses for transactions
And more coming soon...
Requires Python 3.8 or newer.
Enjoy.
Note: There seem to be two pywallets on Github. One of them is the wallet importer/exporter but that's not the one I forked, it's the other one that lets you derive mnemonics, WIFs and addresses/keys for various coins.