This guide explains Bitcoin Core migratewallet in plain English. It focuses on what the subject is, why it matters and what a beginner should remember.
TL;DR
- What it is: Bitcoin Core 25.0 documented migratewallet as an experimental RPC for converting a legacy wallet to descriptor wallets. The command first creates a timestamped.legacy.bak file and returns its path.
- Why it matters: migratewallet is a custody-state transformation, not a formatting convenience. Completion means both backup paths restore, every returned wallet is reconciled and signing and watch-only boundaries match the original policy.
- Current position: Require a second reviewer and explicit rollback or expiry, and pause payments, signing or network-dependent services until post-change evidence is complete.
Bitcoin Core migratewallet in simple English
Bitcoin Core migratewallet: Before conversion Core creates wallet-name plus timestamp and.legacy.bak in the wallet directory. Copy it to protected independent storage and prove restorewallet can read it.
Simple example
A node operator is checking Bitcoin Core migratewallet. Restore both legacy and migrated backups in isolated test nodes before approval. Official documentation says a new wallet backup is needed after migration.
Key terms in plain English
- Bitcoin Core:
- Widely used software that validates Bitcoin and can provide wallet, network and operator tools.
- RPC:
- A command that software sends to a node to request information or a local action.
- UTXO:
- An unspent transaction output: a piece of bitcoin that can be used as an input to a later transaction.
- Node:
- A computer running Bitcoin software that checks data and communicates with other peers.
Experimental status
The 25.0 RPC warns that it may not work as expected and may change. Run it only under a version-pinned migration plan with tested rollback.
Target selection
wallet_name is optional and defaults from the wallet RPC endpoint. If both are supplied they must match; confirm network, data directory and exact wallet before mutation.
Encryption
Encrypted wallets require the passphrase argument. Avoid shell history and shared logs, restrict RPC access and relock or stop the isolated environment immediately after the operation.
Automatic backup
Before conversion Core creates wallet-name plus timestamp and.legacy.bak in the wallet directory. Copy it to protected independent storage and prove restorewallet can read it.
Split wallets
The response names the primary descriptor wallet and can name watch-only and solvable companion wallets. Reconcile descriptors, address books, balances, UTXOs and labels across all outputs.
New backup
Official documentation says a new wallet backup is needed after migration. Preserve the migrated descriptor state, origins, ranges and next indexes, not just the legacy backup.
Acceptance
Compare chain tip, transactions, spendability, receive and change derivation, watch-only flags and signing. Restore both legacy and migrated backups in isolated test nodes before approval. Build a revision-pinned evidence pack on an isolated node, wallet or protocol harness.
Frequently asked questions
What is the main point of Bitcoin Core migratewallet?
Bitcoin Core migratewallet: Before conversion Core creates wallet-name plus timestamp and.legacy.bak in the wallet directory.
For Bitcoin Core migratewallet, what should a beginner know about experimental status?
The 25.0 RPC warns that it may not work as expected and may change.
For Bitcoin Core migratewallet, what should a beginner know about target selection?
wallet_name is optional and defaults from the wallet RPC endpoint. If both are supplied they must match.
For Bitcoin Core migratewallet, what should a beginner know about encryption?
Encrypted wallets require the passphrase argument. Avoid shell history and shared logs, restrict RPC access and relock or stop the isolated environment immediately after the operation.
Conclusion
migratewallet is a custody-state transformation, not a formatting convenience. Completion means both backup paths restore, every returned wallet is reconciled and signing and watch-only boundaries match the original policy.
Primary sources
- Bitcoin Core 25.0 migratewallet RPC
- Bitcoin Core 25.0 release notes
- Bitcoin Core descriptor documentation
Check the current specification status and the documentation for the exact implementation you operate before moving production funds or changing a mining node.
Join the ASIC Mining Discussion
Members can read and join the discussion
Log in to read comments from other miners. Create a free account if you would like to ask a question or share your experience.
Membership helps us protect the discussion from spam and keep answers useful.