Hey Pieter, nice to hear from you too on this.
Do you have any take on the OP idea about P2MR depth restrictions?
as far as compelling reasons go, I think the quantum resistance debate is quite different from P2TR adoption. As Q-fear grows, I suspect there will be increasingly loud and hard-to-ignore voices (and possibly regulation...) to adopt post quantum cryptography technology stacks.
I hope so too! It's totally possible that a significant majority of UTXOs migrate in time - say if you're right and there is a very public concerted push towards PQ, or if Q-day turns out to be 50+ years from now. But it's impossible to predict this. For now I hope for the best, but I also want to plan for the worst.
If PQ fear is indeed such a strong motivating factor as you hypothesize, wouldn't this be an argument against P2TRv2? P2TRv2 isn't quantum-resistant by default but P2MR is. Personally, if I thought a CRQC is imminent, I would rather sell my coins or stow them in a P2WSH address than migrate to an address format which requires a follow-up fork to be secure.
To borrow a phrase, P2TRv2 bears a systemic risk (solving the fork timing problem), whereas P2MR has only local risk (address reuse, which btw would also be solved if we could solve fork-timing). Antoine drew this comparison on his post too but we apparently disagree on which is preferable.
Users and devs can control local risk with very simple software tweaks (to avoid address reuse) but they can't do anything about systemic risks. This is why I prefer P2MR. If the fork-timing problem can be solved conclusively then maybe P2TRv2 would be viable, but as you've alluded to, we have yet to hear any passable solution that doesn't require a cooperative CRQC.
No offense, but this sounds like a fairly depressing scenario to me. If an ECDLP break happens before even a large majority of the "active" economy adopts Q-safe outputs, I don't think there is much of an interesting future for Bitcoin. Leaving many users' coins vulnerable to theft will undermine short-term trust in the currency, possibly fatally so. The alternative, burning significant amounts of users' coins will be seen as confiscation that undermines the long-term stability value proposition bitcoin has, as it would be indistinguishable from a PQC altcoin that imports some fairly arbitrary subset of Bitcoin's UTXO set (see also https://antoinep.com/posts/quantum_risk_mitigation/, where Antoine makes that point in more detail).
Agreed, it would suck, but would likely be viable.
I lack data, but I suspect that by Q-day most coins will have some knowledge-asymmetry with a CRQC (hash preimages, BIP32 parent keys, hidden P2TR script paths, etc) and so can be rescued with simple commit/reveal protocols - no heavy ZK machinery or hard-forks needed.
With that in mind, then it doesn't really matter how many recoverable coins migrate before Q-day, does it? If you can assume P2TRv2's PQ-security promise will be deployed on-time, then you can also assume any BIP32 wallet in-use today can be rescued. What we really must care about is migrating the unrecoverable fraction of coins (e.g. JBOK wallets with exposed pubkeys). These should already be rare and will only become rarer as more time passes.
So in order to argue your point that P2TRv2 makes confiscation/theft less likely, you'd need to show that P2TRv2 will result in a meaningfully higher number of unrecoverable coins migrating. And I don't see why that would be the case. Holders of ancient JBOK coins with exposed keys are probably either dead, or have lost their keys. If a holder does still have the keys, then why would they move to P2TRv2 but not P2MR?
On a more positive note, if we can someday say "Look, quantum computers appeared and screwed some people over, but most people can recover their coins as long as they fulfill any one of these common criteria," then that seems like Bitcoin's unique value and confiscation resistance is surprisingly intact to me. Certainly better than certain other altcoin migrations I've seen in the past, but I guess this is a subjective question, and everyone will have their own opinion.
It's possible to allow a Merkle tree whose leaves are either EC keys or scripts, and then allow spending from the key-leaves by revealing the path and a signature, but recover the expected public key from the signature. That needs a variation of BIP340 that doesn't commit to the public keys (which may break some of the proofs of higher-level schemes, but as long as there is no ANYPREVOUT like functionality, the message implicitly commits to the output so that may be fine). But even with that, efficiency is 32 bytes worse than P2TR, because in a Q-safe setting with at least one additional PQC branch, you have at least 32 bytes of Merkle path. Is this what you have in mind?
Sorry to string you along but I'm gonna hold off here as I don't want to take credit for the idea by jumping the gun and explaining it myself. I'll leave it open for the actual author to chime in on this thread if/when he's ready :)
A reasonable intersection of both opinions could be further witness discount of EC Schnorr of P2MR (Segwit v2).
Further 2x witness discount (total 8x witness discount) makes P2MR EC-spend transaction cost almost at par with P2TRv2 key-spend path.
I wouldn't rule out a discount in a future upgrade but for now i'm hesitant to bundle PQ addresses/signatures with anything that might disrupt the existing fee market, especially given the frustratingly controversial topic of inscriptions/spam. I can already picture the Knotsies decrying a witness-discounted PQ soft fork as "spam-support hidden behind quantum FUD". Never mind that we're already going to have to bump the stack element size limit...
regards,
conduition