Thank you.
In general I would say there are 3 options to generate a ZK proof for a specific computation:
- build custom circuits: this is a very low level task that requires deep knowledge of moon math and cryptography, super hard to maintain.
- use a general purpose ZK VM like Risc Zero and prove the execution of your existing code you want to prove. The benefit is that you don’t have to rewrite the code you can use it directly as is. However there is a big performance overhead
- rewrite the code you want to prove with a specialized high level ZK DSL like Cairo (this is the technique I am using). Maximal efficiency.
Login to reply
Replies (1)
Oh, I think many devs who are not familiar with ZK proof might choose second aproach due to minimum modification of the original code or they just can't due to all dependencies which hard to be rewriten all over. 😅
> However there is big overhead
Does it slow down much to generate the proof along the code? More than 1000ms?