ゼロ知識証明2では、攻撃の成功確率1/2で証明することができ、繰り返すことで0に近づけることが可能になる方法を説明した。これについては、繰り返しを減らす方法やさらになくす方法も提案されている。
減らすには、検証者がbを0以上q未満の値からランダムに選択して証明者に伝え、証明者はc=r+bx \bmod qを計算して検証者に返答する方法がある。このようにおいても、g^c=ay^bは成り立つ。これは1度で、攻撃の成功確率1/qで証明することができる。
なくす方法では、ハッシュ関数を使う。p, q, g, y, aを連結したものから証明者はハッシュを計算。さらにハッシュ値をbとして、証明者はc=r+bx \bmod qを計算して、a, b, cを検証者に伝える。検証者は、同様の検証を行う。これにより、やはり、攻撃の成功確率1/qで証明することができる。
0 件のコメント:
コメントを投稿