ゼロ知識証明

ある人が他の人に、自分の持っている数学的な命題が真であることを伝えるのに、真であること以外の何の知識も伝えることなく、それを証明できるようなやりとりの手法。
例えば、個人情報を用いてユーザ認証を行う場合を考える。このとき以下の性質を満たしている方法が、ゼロ知識証明である。
・ユーザは真正な入力でないと正しさを証明できない
・個人情報そのものは漏れることはない(ゼロ知識性)
ゼロ知識性とは、検証者が不正して証明者から知識を盗もうとしても「命題が真である」以外の何の知識も得られない性質のこと。
ゼロ知識証明の応用例には、以下の様なものがある。
公開鍵暗号
・デジタル署名
・ユーザ認証



簡単な具体例としては、パスワード認証を行うのにパスワードそのものではなくパスワードから生成したハッシュ値を使うという方法がゼロ知識証明に当たる。これにより、パスワードが正しいかの証明は行えるが、パスワードそのものは漏れることがない。