Re: [bitcoindev] Algorithm Agility for Bitcoin to maintain security in the face of quantum and classic breaks in the signature algorithms

'conduition' via Bitcoin Development Mailing List
2026-02-27T21:21:53Z

[-- Attachment #1.1.1: Type: text/plain, Size: 5423 bytes --]

> I thought "tweaking", in general, is lost in SPHINCS, as well as multiparty sigs. Be interested to see those solutions.

This is correct, but you don't actually need public-key tweaking to use an SLH-DSA pubkey as a backup for an ECC xpub. You can just append the SLH-DSA public key to a BIP32 xpub, and use the result to construct PQ-hybridized child addresses. For privacy we can attach a pseudorandom nonce derived from the chaincode, to prevent on-chain fingerprinting of unused BIP360 leaves. The resulting tap leaf hash looks random, and the SLH-DSA public key (and nonce) is only revealed if used for spending.

All this will be spec'd out as part of a non-consensus BIP, to help wallets build safe and robust quantum-resistant addresses.

> I provided an example script that shows how it works: https://gist.github.com/earonesty/ea086aa995be1a860af093f93bd45bf2. you don't pin to the final destination in phase 0.

This pseudocode seems to commit the CTV hashes T & E in the anchor_script which is used to construct the funding UTXO. This is exactly the problem I mentioned which would prevent this technique from being usable as a PQ fallback script.

> txhash is a partial-commitment, not over all fields. this give the flexibility needed for the final spend, since you don't commit to it.

You've stated specifically in your post that TXHASH enforces that the `AnchorPublishTx` creates a UTXO paying to `P_anchor`.

> OP_TXHASH is used only in Phase 0 to enforce a partial covenant... [that] pins the next envelope (P_anchor)

You've also stated that `P_anchor` commits to the CTV template hashes `T` & `E`.

> P_anchor: Taproot output key committing to an Anchor script tree that ... enforces reveal-or-escape spending conditions

This statement is backed up by the pseudocode which depends on `T` and `E` when constructing `P_anchor`, as i pointed out earlier in this email.

Thus, TXHASH (and by extension, the funding script pubkey) commits to CTV hashes `T` & `E`, yes?

Perhaps it would help if you mentioned which `TxFieldSelector` you are using, otherwise i'm just left to guess. The pseudocode is unclear.

regards,
conduition

On Monday, February 23rd, 2026 at 11:08 AM, Erik Aronesty <erik@q32.com> wrote:

> >

> >

> > I'd be excited to learn about this as an option. Erik, could you please answer my previous questions about the viability of your linked protocol? I'm not questioning its quantum-resistance properties (yet). I'm wondering how it is possible to instantiate this scheme in a way that allows a wallet to actually use this commit/reveal scheme without knowing the final destination CTV templates (denoted T & E in the delving post) in advance of creating the phase 0 locking script.
>

>

> I provided an example script that shows how it works: https://gist.github.com/earonesty/ea086aa995be1a860af093f93bd45bf2. you don't pin to the final destination in phase 0.
>

> txhash is a partial-commitment, not over all fields. this give the flexibility needed for the final spend, since you don't commit to it.
>

> however someone has pointed out a fee-problem that CCV's value-aware composability can solve. coming around to thinking the ccv-based construction would be necessary. CCV is more powerful but requires much more care in policy and analysis. CTV is trivial, we could merge it tomorrow and hardly worry about surface area issues. TXHASH is only slightly more complicated. CCV has a much bigger burden of proof around implementation and node safety... but i think you could do many kinds of vaulting schemes with it alone.
>

>

>

> > But in the case of hash-based signature (HBS) schemes, i disagree. HBS is already mature. Whatever cryptanalytic breakthroughs the future holds, we can be reasonably sure that SHA256 preimage resistance will hold for a long time, so HBS security will hold. Even today md4 and md5 preimage resistance still holds. Securing coins using hashes alone is the ideal fallback, and even if HBS is not the most efficient class of schemes, that doesn't matter so much if we don't use HBS as our primary everyday signature scheme. Its value lies in security, not efficiency.
>

>

> When I mean "too soon", I'm including SPHINCS, not sure what
> 1. Earlier versions of the SPHINCS framework were found to be susceptible to fault attacks
> 2. Earlier "Tight" proof for v1 SPHINCS was flawed, leading to 60 bits of security, not 128
> > If you're worried about stuff like how xpubs would work with HBS, we have solutions for that too, and they are mostly drop-in replacements for existing standards.
>

> I thought "tweaking", in general, is lost in SPHINCS, as well as multiparty sigs. Be interested to see those solutions. But, regardless, 17kb sigs are... not compatible with a decentralized bitcoin, imo. Lattice-sigs are the only reasonable PQ way forward and they aren't ready yet.

--
You received this message because you are subscribed to the Google Groups "Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bitcoindev+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/xGWRYbDSxkWxiv5eYH_LbX3hTXs1x2wrn6ar5EfMKKCwvRAT137keXQZqs9SaeTxOjrb5tziRcFU82wSPGD-QVokCrA-Aikfr4vktqSvK7c%3D%40proton.me.

[-- Attachment #1.1.2.1: Type: text/html, Size: 11036 bytes --]

[-- Attachment #1.2: publickey - conduition@proton.me - 0x474891AD.asc --]
[-- Type: application/pgp-keys, Size: 649 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 343 bytes --]