All examples on this page use the same seeds, addresses, and passwords as the automated test suite, so you can copy-paste them to verify your installation before running a real recovery.
On some systems you may need to use python3 instead of python. On Windows you can also double-click seedrecover.py to launch the graphical interface.
Password recovery examples
BIP39 passphrase — Bitcoin
No --wallet-type is needed for Bitcoin. BTCRecover automatically checks Legacy, SegWit, and Native SegWit address types. python btcrecover.py --bip39 \
--addrs 1AmugMgC6pBbJGYuYmuRrEpQVB9BBMvCCn \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "certain come keen collect slab gauge photo inside mechanic deny leader drop"
BIP39 passphrase — Ethereum
Specify --wallet-type ethereum. The --bip39 flag is implied. python btcrecover.py --wallet-type ethereum \
--addrs 0x4daE22510CE2fE1BC81B97b31350Faf07c0A80D2 \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
BIP39 passphrase — Electrum 2.x wallet
Electrum uses its own seed format. Use --wallet-type electrum2. python btcrecover.py --wallet-type electrum2 \
--addrs bc1q6n3u9aar3vgydfr6q23fzcfadh4zlp2ns2ljp6 \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "quote voice evidence aspect warfare hire system black rate wing ask rug"
BIP39 passphrase — Ethereum Validator
Use the validator public key (signing key) as the address. python btcrecover.py \
--mnemonic "spatial evolve range inform burst screen session kind clap goat force sort" \
--addrs b08ef0d03052945b6c4207e9b64a41e7773bd7b635e5140e8d38c290b11959bbcbe218850c5a478394654d094094d175 \
--wallet-type ethereumvalidator \
--addr-limit 1 \
--tokenlist ./btcrecover/test/test-listfiles/tokenListTest.txt
BIP39 passphrase — altcoins
All commands below use the same seed and passwordlist. Substitute your own values for real recovery. Zilliqa — supports Base16 and Bech32 addresses:python btcrecover.py --wallet-type zilliqa \
--addrs zil1dcsu2uz0yczmunyk90e8g9sr5400c892yeh8fp \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
Bitcoin Cash — accepts CashAddr or Legacy addresses:python btcrecover.py --wallet-type bch \
--addrs bitcoincash:qqv8669jcauslc88ty5v0p7xj6p6gpmlgv04ejjq97 \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
Cardano — accepts Shelley base or stake addresses:python btcrecover.py --wallet-type cardano \
--addrs addr1q90kk6lsmk3fdy54mqfr50hy025ymnmn5hhj8ztthcv3qlzh5aynphrad3d26hzxg7xzzf8hnmdpxwtwums4nmryj3jqk8kvak \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "ocean hidden kidney famous rich season gloom husband spring convince attitude boy"
Dash: python btcrecover.py --wallet-type dash \
--addrs XuTTeMZjUJuZGotrtTPRCmHCaxnX44a2aP \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
Dogecoin: python btcrecover.py --wallet-type dogecoin \
--addrs DSTy3eptg18QWm6pCJGG4BvodSkj3KWvHx \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
Litecoin — Legacy, SegWit, and Native SegWit:python btcrecover.py --wallet-type litecoin \
--addrs LdxLVMdt49CXcrnQRVJFRs8Yftu9dE8xxP \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
Vertcoin: python btcrecover.py --wallet-type vertcoin \
--addrs Vwodj33bXcT7K1uWbTqtk9UKymYSMeaXc3 \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
Monacoin: python btcrecover.py --wallet-type monacoin \
--addrs MHLW7WdRKE1XBkLFS6oaTJE1nPCkD6acUd \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
DigiByte: python btcrecover.py --wallet-type digibyte \
--addrs DNGbPa9QMbLgeVspu9jb6EEnXjJASMvA5r \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
Groestlcoin — requires the groestlcoin_hash module:python btcrecover.py --wallet-type groestlecoin \
--addrs FWzSMhK2TkotZodkApNxi4c6tvLUo7MBWk \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
Ripple (XRP): python btcrecover.py --wallet-type ripple \
--addrs rwv2s1wPjaCxmEFRm4j724yQ5Lh161mzwK \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "cable top mango offer mule air lounge refuse stove text cattle opera"
Tron: python btcrecover.py --wallet-type tron \
--addrs TGvJrj5D8qdzhcppg9RoLdfbEjDYCne8xc \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "have hint welcome skate cinnamon rabbit cable payment gift uncover column duck scissors wedding decorate under marine hurry scrub rapid change roast print arch"
Polkadot (Substrate) — with derivation path: python btcrecover.py --wallet-type polkadotsubstrate \
--addrs 12uMBgecqfkHTYZE4GFRx847CwR7sfs2bTdPbPLpzeMDGFwC \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "toilet assume drama keen dust warrior stick quote palace imitate music disease" \
--substrate-path "//hard/soft"
Stacks: python btcrecover.py --wallet-type stacks \
--addrs SP2KJB4F9C91R3N5XSNQE0Z3G34DNJWQYTP3PBJTH \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--mnemonic "ocean hidden kidney famous rich season gloom husband spring convince attitude boy" \
--addr-limit 10
Stellar (XLM): python btcrecover.py \
--mnemonic "doctor giant eternal huge improve suit service poem logic dynamic crane summer exhibit describe later suit dignity ahead unknown fall syrup mirror nurse season" \
--addrs GBPYX2ELQ6YTAF7DXER7RCQJR2HXXFX6HUZKWEZD3B6RKOLDSJF7UGXK \
--addr-limit 2 --no-eta --wallet-type xlm \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
SLIP39 passphrase recovery
You must supply a quorum of shares. BTCRecover prompts for any shares not provided on the command line. Bitcoin: python btcrecover.py --slip39 \
--addrs bc1q76szkxz4cta5p5s66muskvads0nhwe5m5w07pq \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--slip39-shares \
"hearing echo academic acid deny bracelet playoff exact fancy various evidence standard adjust muscle parcel sled crucial amazing mansion losing" \
"hearing echo academic agency deliver join grant laden index depart deadline starting duration loud crystal bulge gasoline injury tofu together"
Ethereum: python btcrecover.py --slip39 --wallet-type ethereum \
--addrs 0x0Ef61684B1E671dcBee4D51646cA6247487Ef91a \
--addr-limit 10 \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt \
--slip39-shares \
"hearing echo academic acid deny bracelet playoff exact fancy various evidence standard adjust muscle parcel sled crucial amazing mansion losing" \
"hearing echo academic agency deliver join grant laden index depart deadline starting duration loud crystal bulge gasoline injury tofu together"
BIP38 encrypted paper wallets
BIP38 wallets are scrypt-encrypted. Recovery is slow; GPU acceleration helps modestly. Bitcoin: python btcrecover.py \
--bip38-enc-privkey 6PnM7h9sBC9EMZxLVsKzpafvBN8zjKp8MZj6h9mfvYEQRMkKBTPTyWZHHx \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Litecoin: python btcrecover.py \
--bip38-enc-privkey 6PfVHSTbgRNDaSwddBNgx2vMhMuNdiwRWjFgMGcJPb6J2pCG32SuL3vo6q \
--bip38-currency litecoin \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Dash: python btcrecover.py \
--bip38-enc-privkey 6PnZC9Snn1DHyvfEq9UKUmZwonqpfaWav6vRiSVNXXLUEDAuikZTxBUTEA \
--bip38-currency dash \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
SHA256(passphrase) — Bitcoin (compressed and uncompressed): python btcrecover.py --brainwallet \
--addrs 1BBRWFHjFhEQc1iS6WTQCtPu2GtZvrRcwy \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Bitcoin — P2SH (segwitaddress.org): python btcrecover.py --brainwallet \
--addrs 3C4dEdngg4wnmwDYSwiDLCweYawMGg8dVN \
--skip-uncompressed \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Bitcoin — Native SegWit (Bech32): python btcrecover.py --brainwallet \
--addrs bc1qth4w90jmh0a6ug6pwsuyuk045fmtwzreg03gvj \
--skip-uncompressed \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Litecoin (liteaddress.org — uncompressed only): python btcrecover.py --brainwallet \
--addrs LfWkecD6Pe9qiymVjYENuYXcYpAWjU3mXw \
--skip-compressed \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Dash (paper.dash.org): python btcrecover.py --brainwallet \
--addrs XvyeDeZAGh8Nd7fvRHZJV49eAwNvfCubvB \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Warpwallet — Bitcoin: python btcrecover.py --warpwallet \
--warpwallet-salt btcr-test-password \
--addrs 1FThrDFjhSf8s1Aw2ed5U2sTrMz7HicZun \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Warpwallet — Litecoin: python btcrecover.py --warpwallet \
--warpwallet-salt btcr-test-password \
--crypto litecoin \
--addrs LeBzGzZFxRUzzRAtm8EB2Dw74jRfQqUZeq \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Wallet file password recovery
These examples use sample wallet files bundled with BTCRecover. Block.io: python btcrecover.py \
--wallet ./btcrecover/test/test-wallets/block.io.request.json \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Dogechain.info: python btcrecover.py \
--wallet ./btcrecover/test/test-wallets/dogechain.wallet.aes.json \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Ethereum UTC keystore (MyEtherWallet, MyCrypto, etc.): python btcrecover.py \
--wallet ./btcrecover/test/test-wallets/utc-keystore-v3-scrypt-myetherwallet.json \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
imToken keystore: python btcrecover.py \
--wallet ./btcrecover/test/test-wallets/imtoken-identity.json \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Bitgo KeyCard user key: python btcrecover.py \
--wallet ./btcrecover/test/test-wallets/bitgo_keycard_userkey.json \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Toastwallet: python btcrecover.py \
--wallet ./btcrecover/test/test-wallets/toastwallet.txt \
--passwordlist ./docs/Usage_Examples/common_passwordlist.txt
Use %H in the tokenlist to substitute unknown hexadecimal characters, or %B for base58. Ethereum — three damaged segments: python btcrecover.py --rawprivatekey \
--addrs 0xB9644424F9E639D1D0F27C4897e696CC324948BB \
--wallet-type ethereum \
--tokenlist ./docs/Usage_Examples/eth_privkey_tokenlist.txt
Bitcoin — uncompressed key, one missing character: python btcrecover.py --rawprivatekey \
--addrs 1EDrqbJMVwjQ2K5avN3627NcAXyWbkpGBL \
--wallet-type bitcoin \
--max-tokens 1 \
--tokenlist ./docs/Usage_Examples/btc_privkey_tokenlist.txt
Bitcoin — native SegWit key, one missing character: python btcrecover.py --rawprivatekey \
--addrs bc1qafy0ftpk5teeayjaqukyd244un8gxvdk8hl5j6 \
--wallet-type bitcoin \
--max-tokens 1 \
--tokenlist ./docs/Usage_Examples/btc_privkey_tokenlist.txt
Bitcoin — using an AddressDB instead of a known address: python btcrecover.py --rawprivatekey \
--addressdb ./btcrecover/test/test-addressdbs/addresses-BTC-Test.db \
--wallet-type bitcoin \
--max-tokens 1 \
--tokenlist ./docs/Usage_Examples/btc_privkey_tokenlist.txt
Seed recovery examples
Bitcoin — missing word(s)
Native SegWit address, one missing word, check first 5 addresses: python seedrecover.py --wallet-type bip39 \
--addrs bc1qv87qf7prhjf2ld8vgm7l0mj59jggm6ae5jdkx2 \
--mnemonic "element entire sniff tired miracle solve shadow scatter hello never tank side sight isolate sister uniform advice pen praise soap lizard festival connect" \
--addr-limit 5
P2SH SegWit address, one missing word: python seedrecover.py --wallet-type bip39 \
--addrs 3NiRFNztVLMZF21gx6eE1nL3Q57GMGuunG \
--mnemonic "element entire sniff tired miracle solve shadow scatter hello never tank side sight isolate sister uniform advice pen praise soap lizard festival connect" \
--addr-limit 5
LND aezeed — missing word
python seedrecover.py --wallet-type aezeed \
--addrs 1Hp6UXuJjzt9eSBa9LhtW97KPb44bq4CAQ \
--mnemonic "absorb original enlist once climb erode kid thrive kitchen giant define tube orange leader harbor comfort olive fatal success suggest drink penalty chimney" \
--addr-limit 5
If your seed uses a custom passphrase, add --passphrase-arg "YOUR PASSPHRASE".
Ledger Nano seed, one missing word: python seedrecover.py --wallet-type cardano \
--addrs addr1qyr2c43g33hgwzyufdd6fztpvn5uq5lwc74j0kuqr7gdrq5dgrztddqtl8qhw93ay8r3g8kw67xs097u6gdspyfcrx5qfv739l \
--mnemonic "wood blame garbage one federal jaguar slogan movie thunder seed apology trigger spoon basket fine culture boil render special enforce dish middle antique"
Trezor seed, one missing word: python seedrecover.py --wallet-type cardano \
--addrs addr1q8k0u70k6sxkcl6x539k84ntldh32de47ac8tn4us9q7hufv7g4xxwuezu9q6xqnx7mr3ejhg0jdlczkyv3fs6p477fqxwz930 \
--mnemonic "ocean kidney famous rich season gloom husband spring convince attitude boy"
Yoroi / Adalite / Daedalus, using a stake address: python seedrecover.py --wallet-type cardano \
--addrs stake1uxztdzzm4ljw9a0qmgregc8efgg56p2h3kj75kc6vmhfj2cyg0jmy \
--mnemonic "cave table seven there limit fat decorate middle gold ten battle trigger luggage demand"
Ethereum Validator — missing word
Supply the validator signing key (public key) as the address. python seedrecover.py \
--mnemonic "spatial evolve range inform burst screen session kind clap goat force x" \
--addrs 869241e2743379b6aa5e01138d410851fb2e2f3923ccc19ca78e8b14b01d861f67f95e2e6b3be71a11b251680b42dd81 \
--wallet-type ethereumvalidator \
--addr-limit 1
Polkadot (Substrate) — missing word
Blank secret derivation path: python seedrecover.py --wallet-type polkadotsubstrate \
--addrs 13SsWBQSN6Se72PCaMa6huPXEosRNUXN3316yAycS6rpy3tK \
--mnemonic "toilet assume drama keen dust warrior stick quote palace imitate music disease"
With a derivation path and passphrase: python seedrecover.py --wallet-type polkadotsubstrate \
--addrs 12uMBgecqfkHTYZE4GFRx847CwR7sfs2bTdPbPLpzeMDGFwC \
--mnemonic "toilet assume drama keen dust warrior stick quote palace imitate music disease" \
--passphrase-arg btcr-test-password \
--substrate-path //hard/soft
python seedrecover.py --wallet-type stacks \
--addrs SP11KHP08F4KQ06MWESBY48VMXRBK5NB0FSCRP779 \
--mnemonic "hidden kidney famous rich season gloom husband spring convince attitude boy" \
--addr-limit 10
python seedrecover.py --wallet-type tron \
--addrs TLxkYzNpMCEz5KThVuZzoyjde1UfsJKof6 \
--mnemonic "have hint welcome skate cinnamon rabbit cable payment gift uncover column duck scissors wedding decorate under marine hurry scrub rapid change roast print arch" \
--addr-limit 1
Elrond / MultiversX — missing word
python seedrecover.py --wallet-type elrond \
--addrs erd16jn439kmwgqj9j0xjnwk2swg0p7j2jrnvpp4p7htc7wypnx27ttqe9l98m \
--mnemonic "agree process hard hello artefact govern obtain wedding become robust fish bar alcohol about speak unveil mind bike shift latin pole base ugly artefact" \
--addr-limit 2
python seedrecover.py --wallet-type helium \
--addrs 13hP2Vb1XVcMYrVNdwUW4pF3ZDj8CnET92zzUHqYp7DxxzVASbB \
--mnemonic "arm hundred female steel describe tip physical weapon peace write advice"
Hedera Ed25519 — missing word
Using the Solidity EVM address: python seedrecover.py --wallet-type hederaed25519 \
--addrs 0x000000000000000000000000000000000098d10f \
--mnemonic "edit bean area disagree subway group reunion garage egg pave endless outdoor now egg alien victory metal staff ship surprise winter birth source cup" \
--addr-limit 1
Using a Hedera account ID: python seedrecover.py --wallet-type hederaed25519 \
--addrs 0.0.10014991 \
--mnemonic "edit bean area disagree subway group reunion garage egg pave endless outdoor now egg alien victory metal staff ship surprise winter birth source cup" \
--addr-limit 1
Stellar (XLM) — wrong word
python seedrecover.py \
--mnemonic "doctor giant eternal huge improve suit service poem logic dynamic crane summer exhibit describe later suit dignity ahead unknown fall syrup mirror nurse" \
--addrs GAV7E2PHIPDS3PM3BWN6DIHC623ONTZUDGXPJ7TT3EREYJRLTMENCK6Z \
--addr-limit 2 --no-eta \
--wallet-type xlm
Electrum — missing or wrong word
Electrum v1 (legacy), one wrong word: python seedrecover.py --wallet-type electrum1 \
--addrs 1Pw1yjF5smzg6eWbE2LbFm7fr1zq7WUYc7 \
--mnemonic "milk hungry group sound Lift Connect throw rabbit gift leg new lady pie government swear flat dove imagination sometime prepare lot trembl alone bus" \
--addr-limit 2
Fix a damaged share (2 typos): python seedrecover.py --slip39 \
--mnemonic "hearing echo academic acid deny bracelet playoff exact fancy various evidence standard adjust muscle parcel sled crucial amazing mansion losing" \
--typos 2
Recover a share with one missing word: python seedrecover.py --slip39 \
--mnemonic "hearing echo academic acid deny bracelet playoff exact fancy various evidence standard adjust muscle parcel sled crucial amazing mansion" \
--big-typos 2