I don't see what the point of your response is here, given I specifically and explicitly state in the original post that address types revealing public keys on-chain are out of scope here, uncoverable in this way due to the proposal involving commit-reveal as an allowed mechanism.
The words you quoted were written as a counterpoint to your claim that "by layering them, and allowing any single one of them to be used, complete coverage of any conceivable key generation method can be achieved for hashed address types." My point was that your claim is not true because some coins don't have KA's (because of how their address was generated and used previously) and thus can't be rescued. I used satoshi's coins as an example but the same is true of some coins on hashed address types (see my reused paper wallet example).
Any UTXO which does have a KA is perfectly rescuable, regardless of the type of address it sits on. It just so happens that some address types encourage more KA's than others (e.g. hashed addresses), but not all coins on such addresses will have a KA and be recoverable after Q-day rolls around. Often it's impossible to identify those cases with certainty.
Again, I don't see the point of the reply here, as this would be a completely separate recovery mechanism than the combination of these two/three specific things. These specific mechanisms layered together, and applied as an additional encumbrance only on hashed address types, ignoring P2TR and P2PK, would achieve complete coverage of any feasible key generation scheme.
You said in your OP that "Coverage of non-hashed address types is fundamentally impossible", and so you focus mostly on hashed addresses in your proposal. My point is that your claim there was wrong, that P2TR coins can be rescued because they have one or more KA's, and the text you quoted shows an example of a KA in P2TR which can be used for rescue.
I point this out because any rescue protocol proposal should seek to cover as many UTXOs as possible (within reason), so we ought to cover P2TR coins as well if it's feasible to do so, which it clearly is.
Whether it was generated with BIP 32 or not is irrelevant if the address is reused, obviously in a quantum threat scenario address reuse is a fatal mistake.
That's not true, it is highly relevant. If a hashed address has an EC public key exposed on-chain prior to the activation height of the rescue protocol fork, then we can mark that address as having no "hashed address knowledge asymmetry", and disallow the use of that specific KA for coins on that specific address. Other KA's like BIP32 derivation would remain completely usable for rescue.
The same thing is true of revealing your xpubs, which is just as widespread (if not moreso) of a practice. That completely undermines the KA that HD recovery proofs depend on.
Also not true. Revealing your account-level (i.e.
m/44'/0'/0') xpub does not give a quantum adversary any information about the extended key at the coin-level (i.e.
m/44'/0'). Wallets typically never share these keys, even in complex multisig setups. The hardened derivation of the account-level xpriv key (at
m/44'/0'/0') is exactly the quantum hard relation that the BIP32 KA relies upon, and knowing the account-level xpriv doesn't give you any help in deriving it from the coin-level parent key. I'd encourage you to revisit
Laolu's thread on the ML and you'll see
this is exactly what his best ZKP benchmark does.
However, revealing your xpub does give a CRQC the ability to forge the hashed-address KA proof, because they can re-derive the hidden public key, crack it, and forge a signature + KA-proof to steal the coins. Since xpubs are shared off-chain, validator nodes won't know that they should disable the hashed-address KA for children of the exposed xpub. So there is some meat to the argument that we ought not to allow hashed address KA's at all, because they would encourage selling of xpubs to CRQCs and enable more theft than would otherwise be possible. I'm personally still undecided on this problem.
I don't see how this is a useful response or criticism, unless you also want to apply the same degree of criticism to HD recovery proofs in general as well.
I'm not trying to criticize you or your proposal, other than by correcting false statements. I'm sorry if my prior reply was confusing, I can write a bit indirectly at times.
The general idea of layering different KA's is excellent, and I fully support it. But it's also important we be accurate about which coins can and can't be rescued, as this is a very important factor which ML readers will use to weigh the pros/cons of supporting or rejecting a rescue protocol soft-fork, and as i said earlier, misconceptions abound here.
The most common misconception I see in this field of research is that people think too much about the proving mechanism and not enough about the knowledge asymmetries and hard relations. The exact tooling used to prove & authenticate KA's (ZKPs, commit/reveal, etc) should IMO be decoupled from the discussion of which coins can/can't be rescued. Pretty much any KA you can authenticate with a ZKP can be authenticated with commit/reveal, and vice-versa.
So there should really be two discussions:
- Which knowledge asymmetries should be allowed for rescue?
- Which proving system should we use to authenticate knowledge asymmetries?
On the subject of (1), I parsed the point of your OP roughly as "more is better" when it comes to KA's, and mostly I agree. Unfortunately we can't recover every UTXO, even if you scope it strictly to certain address types as you do. There will always be confiscation with rescue protocols, unless you limit yourself only to KA's whose existence can be checked on-chain, like the hashed address KA, leaving all other addresses untouched, which IMO is a bad plan because we'll have poor practical results (1/3 of the supply remains to be siezed or frozen).
On (2), I think you may have some misunderstandings about how commit/reveal works, because you claimed commit/reveal is not useful for proving KA's in non-hashed address types, which is incorrect: Commit/reveal can prove any KA for any UTXO just as well as ZKPs, no matter what address type the coins sit on.
regards,
conduition