开源代码见:
Giza使用Winterfell库来证明和验证Cairo VM中程序执行的正确性。
Winterfell为:A STARK prover and verifier for arbitrary computations。
Giza提供了2种使用模式:
1)模式一:外部Cairo runner创建execution trace,并将该execution trace提供给CLI以生成证明。所提供的trace中包含了:
为了证明该execution,必须重构除额外的辅助trace值,并使用内置的Rust runner来重新执行该trace,以计算出这些值。
2)模式二:仅接收某Cairo程序和初始寄存器状态,使用runner来构建所有所需的trace信息(包括trace值和内存值)。不同于模式一,当前并未完全支持Python hint和program input。当前不推荐通过该模式与Giza交互,也暂未通过CLI暴露该模式接口。