Hi Mike,
> It is also a question: how much weight should we put on adopting an
explicitly SNARK-friendly signature scheme? While such compatibility is
clearly advantageous, it does not seem to me to be a decisive point on
its own. What would you say?
Does it depend on what we really mean by SNARK, apart from the literal definition?
What SNARK schemes are we thinking of that are post quantum? I presume I can say "all the pairings based SNARKs (and the DLOG based ones) are not quantum resistant". Are STARKs the only realistic option in this scenario? I am enormously ignorant about STARKs, but I do seem to recall that they have large proofs, so at least in theory that's a problem for such planning?
Or maybe there's another PQ SNARK scheme that I'm just unaware of.
I guess this is orthogonal to the point you're raising about arithmetic-circuit friendly hash functions like Poseidon, though. That part I find a bit brain-melting because: what mechanism is assumed to exist to translate a STARK or SNARK proof into an onchain effect? If there was say a STARK op-code then, job done. You'd just somehow have to have sufficiently small STARK proofs which is AIUI not trivial, even with nice hash functions. If not, we're back to the current hyper-sophisticated scenarios of things like Glock and BABE where you use garbled circuits, witness encryption, and also need something like the adaptor primitive of "swap signature for secret" which we currently get kind of "for free" in Schnorr with the linearity. I suppose there might be alternatives (e.g. HTLC instead of PTLC) that might be more clunky, but viable. And all of that is of course "fraud proof" style, with "slashing", and not anywhere near as clean a design as "just verify the STARK".
How does one take the 10000ft view on this needed to make a design decision? Obviously I don't know, at all, just raising points here. I guess the most interesting one is: "is STARK realistically the only game in town here?".
Cheers,
AdamISZ/waxwing