zkp101
1. Statement(文言)
これは証明したいことです。例えば、"私はある秘密の値xを知っています" というStatementがあったとします。
2. Witness(証人)
これはStatementが正しいことを証明するために必要な情報です。
例えば、値xを知っていることを示す証拠がWitnessとなります。
3. Proof(証明)
これはStatementが正しいことを示すために、Witnessを使用して作られたデータのことを指します。これはStatementが真であることを示す数学的な証拠となります。
4. Argument(論証)
Proofを生成するための手順のことを指します。アルゴリズムを使用してWitnessからProofを生成することができます。
これらの概念は、ゼロ知識証明プロトコルにおいて重要な役割を果たします。一般的には、Statementが秘密である場合、Witnessを公開することなくProofを生成することが求められます。ゼロ知識証明は、Statementが正しいことを示すために必要な情報だけを公開し、秘密を保持することができるプロトコルです。
5. Constraint(制約)
プロバーが証明しようとしている主張に関連する条件やルールのことを指します。
制約は通常、特定の計算や関数が正しく実行されたことを確認するために使用されます。プロバーは、制約を満たす証拠を提示することによって、主張が正しいことを証明します。