ゼロ知識証明
検証者がある人が命題の真偽を証明できるということを判断できる
例: とある面接にて
登場人物
プログラマーの採用面接担当する人事(プログラミングが全く出来ない)
とある応募者
面接にて、この人事が、ある応募者は、プログラミングができるか?ということを知りたい
この時、人事が応募者のプログラミングスキルの有無をゼロ知識証明に必要な3大要素を満たした上で知ることができる方法があれば、それはゼロ知識証明である
例えばAtCoderのとあるABCのA問題(FizzBuzz問題)を応募者に提示する。応募者は自分のアカウントで問題を解く。人事はその応募者の正誤結果のみ確認する。
正解してるかどうかだけを見ればプログラミングスキルの有無はわかる。
人事はどうやって問題を解いたかまで知る必要がない(人事担当にはプログラミングスキルは不要)。
ゼロ知識証明に必要な3大要素
完全性
プログラミングができる人なら100%解けること
健全性
プログラミングができない人なら100%解けない
ゼロ知識性
人事はプログラミングができる必要なし
読んだ記事