3 ms·
What’s a zk-SNARK without a trusted setup? I thought zk-STARKs addressed this, but it seems like you’re continuing with a circuit model.
by sshine 4y ago
What’s a zk-SNARK without a trusted setup?
I thought zk-STARKs addressed this, but it seems like you’re continuing with a circuit model.
- porcuquine 4y agoNova (for example) doesn't require a trusted setup. The circuit is just a schematic description of the underlying computation. In the case of the Lurk core language, this computation is 'one reduction step of a Lurk evaluation' (https://github.com/lurk-lang/lurk-rs/blob/master/spec/reduction-notes.md https://github.com/lurk-lang/lurk-rs/blob/master/spec/reduct...). Coming up with a 'fixed computation' that yields general computation is part of the design problem for Lurk (or any other Lurk-like language). Even if we did need a per-circuit trusted setup (which we don't), we could perform such a setup for our core circuit and use it to prove arbitrary programs. For example, although we have not actually performed the trusted setup, we do have an example using Groth16 (which does require a trusted setup to be secure) and aggregates the potentially many discrete reduction steps to produce a succinct proof.
- emmorais 4y agoIndeed zk-STARK addresses it, but it is not the only alternative (Bulletproofs, Nova, Halo2 also doesn't require a trusted setup). All zk-SNARKs need some kind of intermediate representation that looks like a circuit, then this characteristic has nothing to do with the trusted setup requirement.