ゼロ知識証明 Zero-Knowledge Proofs

ゼロ知識証明 Zero-Knowledge Proofs

ゼロ知識証明(zkプロトコルとも呼ばれる)は、証明者と検証者の間で行われる検証方法である。ゼロ知識証明システムでは、証明者は検証者に対して、情報そのものを明かすことなく、特定の情報(数学の方程式の解など)の知識を持っていることを証明することができる。これらの証明システムは、現代の暗号技術者がプライバシーとセキュリティのレベルを高めるために使用することができる。

ゼロ知識証明の概念は、シャフィ・ゴールドワッサーとシルビオ・ミカリが1985年に発表したMITの論文で初めて説明された。彼らは、数やその数に関する追加情報を開示することなく、数のいくつかの性質を証明することが可能であることを実証した。この論文はまた、証明者と検証者の間の相互作用によって、与えられた定理を証明するのに必要な情報量を減らすことができるという、数学的に重要な発見を紹介した。

zk証明は、完全性と健全性という2つの基本的な要件を満たす必要がある。完全性とは、証明者が関連情報の知識を高い精度で証明できることである。証明が健全であるためには、検証者は証明者が実際に情報を所有しているかどうかを確実に判断できなければならない。最後に、真にゼロ知識であるためには、証明は、問題の情報が証明者と検証者の間で伝達されることなく、完全性と健全性の両方を達成しなければならない。

ゼロ知識証明は、プライバシーとセキュリティが不可欠なアプリケーションで主に使用される。例えば認証システムは、証明書や身元を直接明かすことなく検証するためにゼロ知識証明を使用することができる。簡単な例としては、ある人がコンピュータ・システムのパスワードを持っていることを、そのパスワードを開示することなく検証するために使用することができる。

ゼロ知識証明の顕著な実世界での使用例は、暗号通貨とブロックチェーン技術の世界で見られる。ゼロ知識Succinct Non-interactive Argument of Knowledge(zk-SNARK)として知られる証明の一種を使用することで、Zcashのようなプライバシー重視の暗号通貨は、ユーザーにプライバシーレベルを高めたブロックチェーン取引を提供することができる。イーサリアムも2017年のビザンチウム更新以降、zk-SNARK証明に取り組んでいる。

About the author
crypto

コメントする