この記事はコミュニティからの投稿です。著者は、ゼロ知識証明技術を搭載したプログラム可能なプライバシー レイヤー 1 プロトコルである Manta Network の共同設立者である Kenny Li です。
この記事の見解は寄稿者/著者のものであり、必ずしも Binance Academy の見解を反映するものではありません。
TL;DR
ゼロ知識証明(ZKP)は、情報自体を明かすことなく情報の真実性を検証できる暗号化技術です。プライバシーとセキュリティを強化するブロックチェーン、暗号通貨、分散型金融(DeFi)において、ますます重要な技術となっています。
多くの DeFi プロジェクトでは、貸付、借入、取引などのサービスにおいてユーザーに優れたプライバシーとセキュリティを提供するために、すでに ZKP を使用しています。多くのレイヤー 1 ブロックチェーンでは、ZKP ベースのロールアップまたは zkEVM を追加しています。ゼロ知識証明は、そのアプリケーションがより広く採用されることが予想されるため、ブロックチェーンと Web3 の世界でますます重要な役割を果たすことが期待されています。
ゼロ知識証明はどのように機能するのでしょうか?
ゼロ知識証明とは、一方の当事者 (証明者) がもう一方の当事者 (検証者) に対して、追加情報を開示することなく、ステートメントが真実であることを証明できる方法です。これは、情報が機密情報であり、証明者が検証者にその情報にアクセスさせたくない場合に特に便利です。
証明者は、証明者だけが生成できる数学的証明を提供し、検証者はこの証明を使用してステートメントの真実性を検証できます。ただし、証明を使用して元の情報を再構築することはできません。
A と B の 2 つの入り口があるトンネルを想像してください。秘密のコードが書かれた鍵のかかったドアがあり、そのコードが唯一の通路を塞いでいて、人々がトンネルの端から端まで (A から B まで) 歩くことを防いでいます。あなたは秘密のコードを知っていて、トンネルに入りたい X 夫人にそれを売りたいと考えています。
あなたは彼女にコードを教える前に前払いしてもらいたいのですが、彼女はまずあなたが本当にコードを知っていることを証明して欲しいと思っています。この場合、彼女はトンネルの前に立って、あなたが一方の入り口から入って、もう一方の入り口から出てくるのを見ることで証明できます。こうすれば、彼女はあなたが本当に秘密のコードを知っていると納得するでしょう。
高度なゼロ知識証明の例
赤と青の区別がつかない友達がいると想像してください。あなたは、赤と青の 2 つのボールを見せています。しかし、友達はボールが互いに区別できるとは信じていません。あなたは、赤いボールと青いボールを持っていることを明かさずに、ボールの色が違うことを証明したいのです。実際、どのようにボールを区別するかについての情報を一切明かしたくないのです。
では、識別プロセスや特徴の定義に関する知識がまったくないことを明らかにしながら、ボールを区別できることをどのように証明するのでしょうか。答えは簡単です。友達に、ボールを 1 つ見せる前に、ボールを 2 つ背中の後ろに持ってもらいます。次に、ボールを背中の後ろに置き、2 つのうち 1 つをランダムに (50/50) 選んでもう一度見せます。ボールを入れ替えたかどうかは、友達に必ずわかることに注意してください。
すると、友達はあなたの答えの正当性を確認する前に、「ボールが入れ替わった?」と聞いてきます。あなたが正しい答えを言った後、友達はあなたが推測したのではないかと疑うかもしれません。彼らはあなたにさらに 5 回同じことをするように頼みます。つまり、実験で毎回正しく推測する確率は次のようになります。
可能性は低いようです! 念のため、あなたと友達はこのプロセスを 15 回繰り返します。すると、正しく推測できる確率は次のようになります。
この時点で、証明が正しいことはほぼ確実でしょう。あなたと友人が実験を無限に繰り返すと、毎回正しく推測できる可能性はゼロに近づきます。
つまり、ボールが区別可能であることを友人に証明したことになりますが、友人側はボールの区別の仕方をまったく知りません。しかし、友人は自信を持ってその発見を受け入れることができます。
ゼロ知識証明を使用する理由
ブロックチェーンと暗号通貨におけるゼロ知識証明の人気は、デジタル取引におけるプライバシーとセキュリティの需要の高まりによって推進されています。ブロックチェーン技術と暗号通貨の台頭により、機密情報を公開せずに取引を検証する方法に対するニーズが高まっており、このニーズは ZKP によって満たすことができます。
ゼロ知識証明は近年、注目と関心を集めており、ZKP を活用した多くのプロトコルが立ち上げられ、主要なブロックチェーンがゼロ知識ロールアップを構築しています。ゼロ知識証明の人気の明確な兆候は、DevCon 2022 カンファレンスで見られ、全講演の 20% 以上がこの技術に関するものでした。
主な進展
ゼロ知識証明における重要な進展の 1 つは、ZKP の特定のタイプである zk-SNARK の使用が増えたことです。zk-SNARK は、プライベート トークン取引やシールドされた貸借など、さまざまな DeFi アプリケーションで広く採用されています。ゼロ知識証明におけるもう 1 つの大きな進展は、zk ロールアップによるスケーラビリティとパフォーマンスへの重点が高まったことです。
zk-SNARKs
ゼロ知識簡潔非対話型知識論証 (zk-SNARK) は、ステートメント自体に関する情報を一切公開せずにステートメントを検証できる、特定のタイプのゼロ知識証明です。
zk-SNARK は、Zcash や JP Morgan Chase のブロックチェーンベースの支払いシステムなどのアプリケーションですでに使用されています。また、サーバーに対してクライアントを安全に認証する方法としても使用されています。
Zkロールアップ
Zk-rollups は、ブロックチェーン ネットワークのスケーリング ソリューションであり、複数のトランザクションを 1 つの大きなトランザクションにまとめてブロックチェーンに記録することを容易にします。たとえば、BNB Chain は 2022 年に zk-rollup アーキテクチャ上に構築された zkBNB テストネットを立ち上げました。
zkBNB は、数百のトランザクションをオフチェーンで 1 つのバッチにまとめ、すべてのトランザクションの有効性を証明するための暗号化証明を生成できます。zk-rollups は、スケーラビリティとセキュリティのバランスを提供し、大規模で低レイテンシの設定に適しています。
ゼロ知識証明のユースケース
ゼロ知識証明には多くのユースケースがあり、そのうちのいくつかはすでに実現されていますが、将来的に実現することが期待されているものもあります。主な ZKP ユースケースには次のものがあります。
デジタルID検証
ゼロ知識証明は、個人情報を漏らすことなくユーザーの身元を確認するために使用できます。これは、匿名性を損なうことなく投票者の身元を確認する必要があるデジタル投票システムなどのアプリケーションで役立ちます。
プライバシー保護取引
暗号通貨におけるゼロ知識証明の最も一般的な使用例の 1 つは、プライバシー保護トランザクションを可能にすることです。たとえば、Manta Network の MantaPay 分散型アプリケーション (DApp) は、ZKP を使用して、ユーザーが自分の身元やトランザクションの詳細を明かすことなく、分散型取引所 (DEX) でトランザクションを行えるようにしています。これにより、ユーザーはプライバシーを維持しながら、トランザクションにプラットフォームを使用することができます。
シールドされたトランザクション
Zcash は、ゼロ知識証明を使用して保護されたトランザクションを可能にする暗号通貨です。このようなトランザクションでは、送信者と受信者のアドレス、およびトランザクション金額がパブリック ブロックチェーンから隠されるため、ユーザーのプライバシーが強化されます。
トークン化と所有権の検証
ゼロ知識証明は、資産をトークン化し、その所有権の証明を検証するためにも使用できます。たとえば、資産をトークン化して、他の情報を公開することなく、誰でもその所有権を検証できます。
グローバルコンプライアンス
一部の国では、金融情報の収集と共有に関して厳しい規制があり、分散型プラットフォームがそれに準拠することは難しい場合があります。ゼロ知識証明を使用すると、必要な情報を規制当局と共有しながら、他の当事者からは非公開にすることができます。
これにより、分散型プラットフォームと従来の金融機関との間のギャップが埋められ、DeFi がさまざまな管轄区域の規制に準拠しやすくなります。
ブロックチェーンにおけるゼロ知識証明の未来
ゼロ知識証明は将来的に新たな技術革新をもたらす可能性があります。注目すべき ZKP 関連の今後の開発には次のようなものがあります。
クロスチェーンプライバシーレイヤー
ブロックチェーンと DeFi エコシステムが成長し進化し続けるにつれて、異なるブロックチェーン ネットワーク間での相互運用性の必要性が高まっています。クロスチェーン プライバシー レイヤーにより、関係者のプライバシーを保護しながら、異なるブロックチェーン ネットワーク上でトランザクションを実行できるようになります。
zk-STARKs
もう一つの注目すべき領域は、zk-STARK (ゼロ知識スケーラブルで透明な知識の議論) の使用の増加です。これは、zk-SNARK よりも効率的で安全であると考えられている新しいタイプのゼロ知識証明です。zk-SNARK に対する zk-STARK のもう一つの利点は、検証が速く、信頼できるセットアップを必要としないことです。
ユーザーフレンドリーなツールキット
ゼロ知識証明技術は複雑になる可能性があり、すべての開発チームがこの特定の暗号化分野の専門知識を持っているわけではありません。ユーザーフレンドリーな ZKP ツールキットは、このギャップを埋め、さまざまなバックグラウンドを持つ開発者がこの技術をより簡単に使用できるようにします。
ゼロ知識証明の限界
ゼロ知識証明は、プライバシーを保護しながら情報の真実性を検証する独自の方法ですが、100% の保証は提供しません。証明者が嘘をついている場合の検証の確率はごくわずかですが、ユーザーは ZKP が完全ではないことを認識する必要があります。
さらに、ゼロ知識証明で使用されるアルゴリズムには、大量の計算リソースが必要です。一部のタイプのゼロ知識証明では、検証者と証明者の間で多くのやり取りが必要になるため、大量の計算が必要になります。他のタイプのゼロ知識証明では、アルゴリズムの計算量が非常に多いため、ゼロ知識証明のアプリケーションが制限される可能性があります。
終わりに
ゼロ知識証明は、プライバシー保護とスケーリングの可能性という独自の特性により、急速に注目を集めています。ブロックチェーン、暗号通貨、DeFi におけるこの技術の応用が進むにつれて、ユーザーに多大なメリットをもたらす革新的なサービスがさらに増える可能性があります。ゼロ知識証明は、より安全でプライベートかつ効率的な DApp エコシステムの構築において重要な役割を果たすことが期待されています。
参考文献
zk-SNARK と zk-STARK の説明
ブロックチェーン レイヤー 1 とレイヤー 2 のスケーリング ソリューション