Understand custody · Access and compatibility
The Wallet Was Called Corrupted Even Though the Keys Were Still There
Sometimes a new software version checks old data differently. In Bitcoin Core 31.0, that produced an alarming message for some owners of descriptor wallets.
EDITORIAL OVERVIEW · Prepared by the project editors from the sources listed below.
What the owner saw
The problem affected existing descriptor wallets whose Miniscript expressions used h-style hardened derivation markers.
After the upgrade, Bitcoin Core calculated the descriptor's internal identifier differently. The stored database value no longer matched the recomputed value, so the software could refuse to load the wallet and incorrectly report that it was corrupted.
The keys could still be intact
The warning did not mean that private keys had been deleted or that transactions had vanished from the blockchain. The failure was in a compatibility check between the older wallet representation and the newer identifier calculation.
Developers removed the requirement to recompute and validate the stored identifier. It is now treated as an opaque link between records belonging to the same wallet.
How descriptors are compared now
The importdescriptors and createwalletdescriptor RPCs no longer rely on the recomputed identifier to detect a match. They compare canonical descriptor strings instead.
Compatibility tests now include Bitcoin Core 30.2 and 31.0 nodes plus a wallet containing Miniscript expressions, checking how data created by different versions is loaded.
Back up first, repair second
Before deleting files, recreating a wallet, or experimenting with recovery, an operator should preserve a copy of the data directory and check the known issues for the exact Bitcoin Core version.
The fix was merged into the main branch on September 9, 2026. That means the code was accepted, not that it is already present in every installed binary release. The story is almost paradoxical: the wallet preserved its keys, while the new software temporarily forgot how to recognize its own description of them.
A 'wallet corrupted' message does not by itself prove that keys or coins are gone.
Sources and verification
This article covers one specific descriptor-wallet compatibility bug. Any corruption warning requires its own diagnosis and should not automatically be treated as harmless.
Unless stated otherwise, the text, conclusions, structure and editorial arrangement were created by the project editors. Facts, quotations and source materials remain attributable to their authors and rights holders.
← Back to the rubric