NEWTON
Asked
9 months ago
18
views
0
In SNARKs, you can use Zokrates or snarkjs to generate a proof for a program/computation and verify it, locally or on Ethereum.
Similar to this unanswered question, how to do the same in Cairo and STARK for, say, the 15-puzzle?
Can cairo-run
generate a proof, or only a trace?
I can send it to SHARP with cairo-sharp, but I can't generate nor see the proof locally. Any way to generate the proof by running my own prover without SHARP?
ㅤ This question was originally posted on Triality
0
You can build your own prover-verifier pair using STARK construction, which is open knowledge, but then you will need to generate AIR yourself. Check out https://github.com/novifinancial/winterfell
If you write a Cairo program to be proven, currently only SHARP can prove it i.e. the Cairo prover is yet to be open sourced.
For verifying proof (generated by SHARP) in Cairo, check out https://github.com/starkware-libs/cairo-lang/blob/master/src/starkware/cairo/stark_verifier/air/layouts/recursive/verify.cairo which is the recursive verifier program released with Cairo 0.10.0
ㅤ This answer was originally posted on Triality
answered
9 months ago
How to generate a proof for a Cairo program and verify it?
What is SHARP in Cairo Language?
How to submit a StarkNet contract?
How to use get_fp_and_pc in Cairo Lang?
Cairo Automatic Events
Can anyone point me to Pedersen, Rescue references? StarkNet / Cairo Lang
Cairo Lang / StarkNet: What are Revoked references? What is alloc_locals?
Where can i get test tokens in StarkNet?
How to get the block hash in Cairo lang?
How to deploy a contract through starknet.py?
How to make output like "hello world" in Cairo Language (StarkNet)?
Cairo Error: Getting Expected expression of type 'felt', got '__main__.getCurrNumber.Return'
How do I create my own account abstraction using starknetjs?
Is it possible to use ArgentX to sign in user to a off-chain api/db?