Zero-Knowledge-Proofs
零知識證明:groth16。證明人密鑰可以公開嗎?
這是 gnark 文件的引用。
請注意,在生產環境中必須仔細考慮此步驟。groth16.Setup 使用一些隨機性來預先計算證明和驗證密鑰。如果程序或機器洩露了這種隨機性,攻擊者可能會破壞 ZKP 協議。
聽起來好像
some randomness
在設置過程中。我會分享驗證密鑰。所以它更像PublicKey。但是我是否必須保密證明密鑰並在以後進行解密?PS Prover 和 Verifier 密鑰是否被稱為“公共參數”?
是的。證明者密鑰可以是公開的。
https://consensys.net/blog/developers/introduction-to-zk-snarks/
密鑰生成器 G 接受一個秘密參數 lambda 和一個程序 C,並生成兩個公開可用的密鑰,一個證明密鑰 pk 和一個驗證密鑰 vk。