BIP 353 is a huge leap forward in security and UX for common payments from hardware wallets. Yet, sadly, its stuck in a three-w ay chicken-and-egg problem between the software wallets that people use, the hardware wallet firmware, and recipients. No one wants to do the work to be a first-mover when the other two legs don't exist yet. So, to get off zero, lets try a bounty. I'm offering $1000 (payable only in Bitcoin to a BIP 353 HRN) each for the first hardware wallet and (on-chain, hardware wallet-supporting) software wallet to support sending to BIP 353 HRNs. For a hardware wallet, this should be easy, just detect the PSBT field for a DNSSEC proof, validate it, and display the HRN for verification instead of (or in addition to) the actual address. You don't have to use to do the validation, but I imagine it will be easy. The feature has to exist in the released default firmware for the hardware wallet. For a software wallet, there's only a few more steps, support detecting a BIP 353 HRN in the send-to UI, do the DNS lookup (again, dnssec-prover should make this easy, if you want), build the proof, and include it in the PSBT you provide to hardware wall ets. Also store the HRN (and maybe DNSSEC proof) so that the transaction history shows it. The default sending methods (GUI/CLI/whatever) have to support accepting HRNs and should handle them just like regular addresses. You don't have to support silent payments, but of course its good to as well. Support has to be in an official release. A hardware wallet that also provides a software wallet doesn't get to claim both bounties. Releases which satisfy the bounty must be made before December 31, 2025.

Replies (15)

If two wallets claim the bounty the one which merged a substantial majority of the work gets the bounty, not just based on release date, otherwise it wouldn’t be fair to projects with a rigid release schedule.
HRF is happy to match this bounty for $1000. Freedom Go Up!
Matt Corallo's avatar Matt Corallo
BIP 353 is a huge leap forward in security and UX for common payments from hardware wallets. Yet, sadly, its stuck in a three-w ay chicken-and-egg problem between the software wallets that people use, the hardware wallet firmware, and recipients. No one wants to do the work to be a first-mover when the other two legs don't exist yet. So, to get off zero, lets try a bounty. I'm offering $1000 (payable only in Bitcoin to a BIP 353 HRN) each for the first hardware wallet and (on-chain, hardware wallet-supporting) software wallet to support sending to BIP 353 HRNs. For a hardware wallet, this should be easy, just detect the PSBT field for a DNSSEC proof, validate it, and display the HRN for verification instead of (or in addition to) the actual address. You don't have to use to do the validation, but I imagine it will be easy. The feature has to exist in the released default firmware for the hardware wallet. For a software wallet, there's only a few more steps, support detecting a BIP 353 HRN in the send-to UI, do the DNS lookup (again, dnssec-prover should make this easy, if you want), build the proof, and include it in the PSBT you provide to hardware wall ets. Also store the HRN (and maybe DNSSEC proof) so that the transaction history shows it. The default sending methods (GUI/CLI/whatever) have to support accepting HRNs and should handle them just like regular addresses. You don't have to support silent payments, but of course its good to as well. Support has to be in an official release. A hardware wallet that also provides a software wallet doesn't get to claim both bounties. Releases which satisfy the bounty must be made before December 31, 2025.
View quoted note →
Default avatar
RamenCoffee 5 months ago
Can you explain to my small brain why this isn't a massive downgrade for privacy ? Doesn't the BIP reduce anonimity sets available for projects tp exploit ?
Default avatar
RamenCoffee 5 months ago
No, I mean if you associate adresses to some sort of ID, you create new metadata and a whole source of data for clustering adresses. In some, if not most cases, those may be linked to actual gov names ?
Depends on the use-case. If you’re accepting donations you probably already have that issue. Also depends on the user, if the 353 points to a silent address and BOLT 12 then there’s nothing to tie it to. Ideally it would point to those plus an on-chain fallback but no one would use the fallback so it wouldn’t matter.
Default avatar
RamenCoffee 5 months ago
makes sense. Tyty I still think it will end up in a buncha people unwittingly doxxing themselves, but at least there's a way to use it correctly.
Sadly address reuse is baked into a lot of the flows popular in the ecosystem. 353 (and combined QRs generally) push towards a single identifier which can allow the underlying address to rotate underneath or seamlessly upgrade to things like silent payments which do so without active servers. I don’t think we fix address reuse by yelling at people, we need better tools.