News

The bridge from Bitcoin Core to hardware wallets winds down

HWI, the program that lets Bitcoin Core talk to a signing device, is going into maintenance mode and will eventually be archived. The reason given is the interesting part: Python cannot be built deterministically, so it could never ship inside Core.

3 min readHardware Wallets
The bridge from Bitcoin Core to hardware wallets winds down

What happened

On 18 August 2026 Ava Chow opened an issue titled "Future of this repo" on the HWI repository, announcing that the project is stopping. "The current plan is to finish the MuSig2 feature, then formally enter a minimal maintenance mode until a suitable drop-in replacement project is ready, at which time this repo will be archived." From now on, "we will no longer be accepting any new features or feature requests, other than those required to support MuSig2", and "we will also no longer be accepting PRs for any new devices". The notice was carried in Bitcoin Optech newsletter #420 on 28 August 2026.

What it changes

HWI is a translator. Every hardware wallet vendor speaks its own protocol over USB, and HWI puts one interface in front of all of them, so a wallet program can ask for an address or a signature without knowing whether the thing on the other end is a Coldcard, a Trezor or a Jade. Bitcoin Core reaches it from outside: the node can be started with -signer=<cmd>, an external tool it calls out to, and Core's own documentation uses HWI as the example.

That "from outside" is the whole story, and the issue says why. "This project was originally intended to enable Bitcoin Core to support hardware wallets, and it has gotten us most of the way there. However limitations of Python prevent us from going all the way as we are unable to deterministic builds or ship it with Bitcoin Core." A user who verifies a Bitcoin Core release against its reproducible build has verified everything except the component that talks to their signing device, because that component was never in the tarball to begin with.

What changes in practice is future device support. A signing device released after HWI's final version will not get a pull request merged into it, so whether Core can drive it will depend on the successor project. The issue names one: BHWI, from Wizardsardine, written in Rust, which "looks to be a promising successor to this project".

What it does not change

Nothing breaks now. The current release, 3.2.0 from February 2025, keeps working with the devices it already supports, and a final release is planned once MuSig2 support lands. Archiving is conditional on a replacement existing, not scheduled.

It does not touch your coins or your seed phrase. HWI never holds a key: it passes a partially signed transaction to the device and brings back the signature the device produced, and every secret stays on the hardware. Losing this program would cost you a way of connecting to a device, not the ability to spend from it.

It also says nothing about the devices themselves, which ship their own software, or about wallets that speak to hardware without going through HWI. This is one piece of connecting tissue, and the announcement is about who maintains it.

Context

The last few months of these notes have been about verification more than about features: a commit verifier that exited successfully on a broken repository, an invariant that only lived in reviewers' heads. This is the same theme from the other end. The chain of things a careful user can check runs from the Core binary to the device in their hand, and the link that was never reproducible is the one now looking for a maintainer.

It is also an honest note about how much of this infrastructure is one person. The issue opens by saying the project "has largely been a solo project, even though it lives under the Bitcoin Core umbrella", which is worth holding next to the fact that Bitcoin Core's documented route to a hardware wallet ran through it.

Newsletter

Bitcoin, without the noise

What happened in Bitcoin, what it actually changes, and the sources so you can check us. One issue at a time, straight to your inbox.

  • One email per issue, never a drip campaign
  • No tracking pixels and no shared addresses
  • Unsubscribe from any issue in one click

Get the next issue

One email per issue, no tracking pixels, and unsubscribe from any of them. We do not share your address. Privacy policy