BITCOIN CORE’S WALLET HOLDS YOUR KEYS BUT NOT YOUR HASHLOCK SECRETS — A DEVELOPER PROPOSES A DESCRIPTOR FIX
Some bitcoin can only be spent by someone who holds two secrets: a private key and a 32-byte value whose hash is written into the coins’ script. Bitcoin Core’s wallet will store, encrypt and back up the first. It has no place to put the second. On October 4, 2026, the developer jaonoctus posted a proposal on Delving Bitcoin to change that.
The gap is in descriptors, the text strings a wallet uses to describe what it can spend. A descriptor can already carry a private key. For a miniscript hashlock it can only carry the hash. jaonoctus says he hit this solving a TABConf challenge, and that the only way to finish the spend was to put the preimage into a PSBT with an outside tool. His fix is a private form, sha256(preimage(HEX)), that a wallet prints only when it exports its secrets.
His argument is that a preimage known when the coins are locked is a long-lived secret, just like a key, and should be backed up like one. In a 2022 GitHub issue on descriptors, Pieter Wuille floated replacing most of the wallet’s signing data with descriptors, “everything except signatures/preimages.” Later in that thread he wrote that needing more exceptions is “perhaps a sign the philosophy is wrong to begin with.” The checkable point is plain: a backup that restores your keys but not your preimage can leave coins you cannot spend on that path.
Nothing has changed in Bitcoin Core yet. The post had no replies when this was written. It leaves open the syntax, whether this amends BIP 379 or becomes a new BIP, and whether hardware signers should ever hold these secrets. Until that is settled, if your wallet uses a hashlock, the preimage is a second backup you keep yourself. At the time of this writing, bitcoin was $85,241.