两种零知识证明 1⃣ 交互式零知识证明 ▰ 验证者出题(挑战) ▰ 证明者根据挑战回 ▰ 多轮来回,验证者确认证明有效 2⃣ 非交互式零知识证明 ▰ 证明者只需要生成一个文件(proof) ▰ 验证者拿到它就能独立验证,不需要往返交互 ZK 证明的三个特性 ▰ 完整性-Completeness 如果命题是真的,证明一定能通过验证 ▰ 可靠性-Soundness 如果命题是假的,没人能造出假证明通过验证 ▰ 零知识性- Zero Knowledge 验证者无法从证明中推导出秘密的输入 因为区块链的属性,实际应用中基本都是非交互式零知识证明。 非交互式零知识证明是用一次证明者的自我随机挑战来确定证明的真实性。 @brevis_zk 学习笔记 ~