Zero-Knowledge Proof(ゼロ知識証明)
ゼロ知識証明は「自分が持つ知識が正しいことを、追加情報を提示することなく証明可能である」ことを示す技術です。
ゼロ知識証明の特性は3つあります。
・完全性:証明者の主張が真であるならば、検証者はその主張の正しさを高確率で検証できる。
・健全性:証明者の主張が偽であれば、証明者がどのように振る舞ったとしても、検証者はその主張が間違いであることを見抜くことができる。
・ゼロ知識性:検証者が証明者から何らかの知識(情報)を取得しようとしても、証明者の主張が真であること以上の知識は得られない。
Web3におけるゼロ知識証明の必要性
Web3では以下の2点からゼロ知識証明が必要とされています。
秘匿性の向上
ブロックチェーンのオープンであるという特徴は、ガバナンスの透明化など多くの利点を提供してきましたが、個人資産が外部から閲覧可能であることのリスクや、企業のプライベート性の高いデータの取扱いなど、まだまだ課題が残されています。
今後はその透明性と秘匿性がユースケースごとに上手く使い分けされていくことが予想されており、その中でゼロ知識証明が秘匿性を向上させる技術として活用されていく可能性が高いと考えられています。
ブロックチェーンの処理速度(スケーラビリティ)の向上
2021年バブルの時期からEthereumのトランザクション処理速度の遅さや、高騰するガス代の問題がそれまで以上に顕在化していますが、その課題に対するスケーリングソリューションとしてzkRollupと呼ばれる技術などの活用も大きく期待されています。
zkRollupはゼロ知識証明を活用し、多くのトランザクションを一括で検証することが可能となることで、ブロックチェーンの処理速度が向上するとされています。
ゼロ知識証明についてより詳しく知りたい方はこちらの記事をご覧ください。