bip-utils
Generation of mnemonics, seeds, private/public keys and addresses for different types of cryptocurrencies
What it is and what it does
bip_utils is a comprehensive cryptographic utility library for generating wallet keys and addresses across many blockchains. It implements the BIP (Bitcoin Improvement Proposal) and SLIP (Satoshi Labs Improvement Proposal) standards for hierarchical deterministic wallet derivation, mnemonic generation, and key encryption. The library handles the full workflow from seed generation through address derivation for supported coins including Bitcoin, Ethereum, Cardano, Monero, Polkadot, Solana, and others.
The package depends on established cryptographic libraries (pycryptodome, coincurve, ecdsa, pynacl, and others) to provide the underlying curve operations and encoding schemes. It supports multiple derivation standards (BIP-32, BIP-44, SLIP-0010, Substrate) and address formats (bech32, base58, ss58, WIF). Developers use it to build wallet software, key management tools, or to integrate blockchain address generation into applications. The library is actively maintained, supports Python 3.7 through 3.13, and has no known security vulnerabilities.
Use it for:
- Generate Bitcoin or Ethereum addresses from a BIP-39 mnemonic seed for wallet software.
- Derive hierarchical key trees for multi-account wallet management following BIP-44 standards.
- Create Cardano, Polkadot, or Monero addresses compatible with official wallet implementations.
- Encode or decode blockchain addresses in various formats (bech32, base58, ss58) for address validation.
- Build brainwallet functionality allowing users to generate keys from custom passphrases.
- Support SPL token account address generation for Solana ecosystem integration.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Generates mnemonics, seeds, private/public keys, and addresses for multiple cryptocurrencies using BIP and SLIP standards, supporting Bitcoin, Ethereum, Cardano, Monero, Polkadot, Solana, and many others.
Yes. The package is actively maintained, has low install friction, carries no security vulnerabilities, and is licensed permissively under MIT. It is the right choice if you need multi-coin key and address generation following established standards. The main caveat is the Rust build dependency for sr25519 support; prebuilt wheels mitigate this for common platforms. Install it if you are building wallet software or integrating blockchain address generation into an application.
Install
bip-utils on PyPI
pip
pip install bip-utilsuv
uv add bip-utilspoetry
poetry add bip-utilsInstalling bip-utils
Before you install
Low install friction with a pure-Python wheel distribution. Active maintenance with a recent release (1 day old). Depends on 10 runtime packages including cryptographic libraries; py-sr25519-bindings requires Rust to build, which may cause friction on some systems.
License in practice
MIT license is permissive and imposes no restrictions on use, modification, or redistribution in proprietary or open-source projects.
Quickstart
pip install bip_utils
from bip_utils import Bip39MnemonicGenerator, Bip39SeedGenerator, Bip44, Bip44Coins
mnemonic = Bip39MnemonicGenerator().FromWordsNumber(12)
seed = Bip39SeedGenerator(mnemonic).Generate()
bip44_ctx = Bip44.FromSeed(seed, Bip44Coins.BITCOIN)
address = bip44_ctx.Purpose().Coin().Account(0).Change(0).AddressIndex(0).PublicKey().RawCompressed().hex()
py-sr25519-bindings requires Rust to be installed on the system to build from source; prebuilt wheels are available for common platforms.
Verify before relying
- Whether all listed coin addresses match current mainnet standards or if some are outdated.
- Performance characteristics when deriving large hierarchies of keys or handling many coins in sequence.
- Compatibility guarantees with hardware wallets or whether addresses are guaranteed to match official wallet implementations for all coins.
- Exact count of supported coins beyond those explicitly named in the description.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.7) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 10 — cbor2, coincurve, crcmod, ecdsa, ed25519-blake2b-fork, pycryptodome, pynacl, py-sr25519-bindings, pytoniq-core-fork, typing_extensions |
| Maintenance | actively maintained — 1 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 313,639/month — #7,711 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: bip_utils-2.12.2-py3-none-any.whl
Keywords: python, cryptography, ecdsa, ed25519, ed25519-blake2b, nist256p1, secp256k1, sr25519, wallet, hd-wallet, slip10, slip32, bip38, bip39, bip39-substrate, bip32, bip44, bip49, bip84, bip86, bip173, bip350, brainwallet, base58, ss58, bech32, bech32m, segwit, electrum, substrate, taproot, daedalus, byron, shelley, akash, algorand, aptos, arbitrum, atom, avalanche, avax, axelar, band protocol, binance chain, binance smart chain, bitcoin, bitcoin cash, bitcoinsv, bnb, cardano, cardano-byron, cardano-shelley, celestia, celo, certik, cosmos, dash, digibyte, dogecoin, dydx, ecash, elrond, eos, ethereum, ethereum classic, fantom opera, fetch.ai, filecoin, harmony one, huobi chain, icon, injective, iris, irisnet, kava, litecoin, matic, mavryk, metis, monero, multiversx, nano, near, near protocol, neo, neutron, nimiq, okex chain, ontology, optimism, osmosis, pi network, polygon, ripple, secret, solana, stellar, substrate, sui, terra, tezos, theta, ton, tron, vechain, verge, zcash, zilliqa, acala, bifrost, chainx, edgeware, karura, kusama, moonbeam, moonriver, phala, plasm, sora, stafi, polkadot
Tags
More Cryptography packages
Certifi provides Mozilla's curated collection…
copyleft · top 100 on PyPI
cryptographycryptography provides cryptographic recipes and…
permissive · top 100 on PyPI
rsaPure-Python RSA encryption, decryption,…
permissive · top 1,000 on PyPI
pyOpenSSLpyOpenSSL wraps OpenSSL's SSL/TLS functionality…
permissive · top 1,000 on PyPI
azure-identityProvides Microsoft Entra ID token-based…
unclear · top 1,000 on PyPI
PyNaClPyNaCl provides Python bindings to libsodium…
permissive · top 1,000 on PyPI
hdwalletGenerates hierarchical deterministic (HD)…
permissive · top 15,000 on PyPI
mnemonicGenerates mnemonic word sequences and converts…
permissive · top 5,000 on PyPI
py-bip39-bindingsProvides Python bindings to the tiny-bip39 Rust…
permissive · top 15,000 on PyPI
slip10Implements SLIP-0010 hierarchical deterministic…
permissive · top 15,000 on PyPI
bip32Implements BIP 32 hierarchical deterministic…
permissive · top 15,000 on PyPI
bitcoin-utilsA low-level Bitcoin library providing tools to…
permissive · top 15,000 on PyPI
shamir-mnemonicImplements SLIP-0039 Shamir's Secret Sharing to…
permissive · top 15,000 on PyPI
bittensor-walletManages cryptographic keys and wallets for the…
permissive · top 15,000 on PyPI
nkeysGenerates, manages, and verifies Ed25519-based…
permissive · top 15,000 on PyPI
coincurvecoincurve provides Python bindings to…
permissive · top 5,000 on PyPI