ゼロ知識証明 (ZKP) は、暗号学における魅力的で強力な概念であり、これを使用すると、知っていることを明かすことなく、何かを知っていることを証明できます。つまり、情報の詳細を明かすことなく、誰かが正しい情報を持っていることを検証できるということです。この特性は、安全な認証からブロックチェーン上のプライベート トランザクションまで、多くの興味深い用途に使用できます。

この記事では、ZK-Snarks、ZK-Starks、そして最新かつ最もエキサイティングな開発であるPLONK ZKPシステムなど、さまざまな種類のZKPを含むゼロ知識証明の世界を探ります。また、5歳の子供でもこれらの概念を理解できるように、実際の生活からのわかりやすい例も紹介します。

ゼロ知識証明とは何ですか?

ゼロ知識証明 (ZKP) は、一方の当事者 (証明者) がもう一方の当事者 (検証者) に、情報を明かすことなく、自分が情報を知っていることを納得させることができる暗号化技術です。言い換えれば、証明者は、特定の情報が何であるかを明かすことなく、自分がその情報を所有していることを証明できます。

ZKP は、機密情報を公開することなく、安全な認証、識別、データ共有を可能にするため、暗号化における強力なツールです。これにより、当事者はプライバシーを放棄することなく、情報やトランザクションを検証できます。

ZK-スナークス

ZK-Snarks は、ブロックチェーン技術、特に Zcash などのプライバシー重視のブロックチェーンで広く使用されているゼロ知識証明の一種です。ZK-Snarks は、Zero-Knowledge Succinct Non-Interactive Argument of Knowledge の略です。

ZK-Snarks を理解するために、秘密の番号を持っていて、その番号を明かさずにその番号を知っていることを誰かに証明したいというシナリオを想像してみましょう。ZK-Snarks を使用すると、番号自体を明かさずに、その番号を知っていることを相手に納得させる証明を構築することで、これが可能になります。

ZK-スタークス

ZK-Starks は、ZK-Snarks に似た別のタイプのゼロ知識証明ですが、いくつかの違いがあります。ZK-Starks は、Zero-Knowledge Scalable Transparent Argument of Knowledge の略です。

ZK-Starks を理解するために、秘密のフレーズがあり、フレーズ自体を明かさずにそのフレーズを知っていることを誰かに証明したいというシナリオを想像してみましょう。ZK-Starks を使用すると、フレーズ自体を明かさずに相手にフレーズを知っていることを納得させる証明を構築することで、これが可能になります。

プロンクス

PLONK は、ゼロ知識証明の世界で最も新しく、最もエキサイティングな開発です。PLONK は、多項式ベース、線形複雑、非対話型、知識証明の略です。

PLONK は、ZK-Snarks や ZK-Starks よりもさらに強力で効率的なゼロ知識証明の一種です。プライベート トランザクション、認証、データ共有など、暗号化の分野で多くの用途があります。

PLONK を理解するために、秘密のメッセージがあり、そのメッセージ自体を明かさずにそのメッセージを知っていることを誰かに証明したいというシナリオを想像してみましょう。PLONK を使用すると、メッセージ自体を明かさずにそのメッセージを知っていることを相手に納得させる証明を構築することで、これが可能になります。

結論

ゼロ知識証明は、機密情報を公開することなく当事者が情報や取引を検証できるようにする暗号化の強力なツールです。ZK-Snarks、ZK-Starks、PLONK は、ブロックチェーン業界などでさまざまな用途に使用されている異なるタイプのゼロ知識証明です。