小さな O はパスワードが記載された箱を所有しており、小さな K に本当のパスワードを告げずにパスワードを知っていると説得したいと考えています。どうやってするの?
O ちゃんはある方法を思いつきました。K ちゃんに、世界で自分だけが内容を知っているメモを書いてもらい、K ちゃんはそれを開いた箱の中に入れて鍵をかけました。そこで O ちゃんは箱を取り上げ、パスワードを使って K ちゃんが箱に入れたメモを取り出し、翌日そのメモを K ちゃんに渡しました。この過程で、K 君はそれまで知らなかった情報 (箱のパスワード) を知りませんでしたが、それでも O 君がパスワードを知っていると信じなければなりませんでした。この検証プロセスはゼロ知識証明です。
**ゼロ知識証明とは、簡単に言うと、最小限の情報交換で二者間の信頼を確立し、それ以上の情報を開示することなく、A が何か/特定の結論が正しいことを B に証明することができます。 **
さらに、ゼロ知識証明は、ユーザーが特定の ID 情報を明らかにすることなく ID 検証を行うのにも役立ちます。イーサリアム上の Polygan ID はゼロ知識証明検証スキームを採用しており、ユーザーのプライバシー保護に役立つだけでなく、KYC 検証仕様の規制要件も満たしており、いつどのデータを共有するかをユーザーが自由に選択できます。
OKLink: トランザクションを効率的かつ安全にしますか? 「ゼロ知識証明」技術と切り離せない
原作者: ジェイソン・ジャン
ブロックチェーン技術の進化には、プライバシーと拡張という 2 つの重要な問題が避けられません。これら 2 つの問題に対する「標準的な解決策」を探したところ、これらはテクノロジ、つまりゼロ知識証明と切り離せないことがわかりました。ゼロ知識証明とは何ですか?ブロックチェーンのプライバシーと拡張の問題はどのように解決されるのでしょうか?
##1.ゼロ知識証明とは何ですか?
1985 年、MIT の S.Goldwasser、S.Micali、C.Rackoff は、研究論文「対話型証明システムの知識の複雑さ」で初めてゼロ知識証明を提案しました。これは、証明者が有効な情報を明らかにすることなく知識の正しさを証明するための検証プロトコルです。
理解を容易にするために、例を挙げてみましょう。
小さな O はパスワードが記載された箱を所有しており、小さな K に本当のパスワードを告げずにパスワードを知っていると説得したいと考えています。どうやってするの?
O ちゃんはある方法を思いつきました。K ちゃんに、世界で自分だけが内容を知っているメモを書いてもらい、K ちゃんはそれを開いた箱の中に入れて鍵をかけました。そこで O ちゃんは箱を取り上げ、パスワードを使って K ちゃんが箱に入れたメモを取り出し、翌日そのメモを K ちゃんに渡しました。この過程で、K 君はそれまで知らなかった情報 (箱のパスワード) を知りませんでしたが、それでも O 君がパスワードを知っていると信じなければなりませんでした。この検証プロセスはゼロ知識証明です。
**ゼロ知識証明とは、簡単に言うと、最小限の情報交換で二者間の信頼を確立し、それ以上の情報を開示することなく、A が何か/特定の結論が正しいことを B に証明することができます。 **
証明プロセスにおける対話モードに応じて、「対話型ゼロ知識証明」と「非対話型ゼロ知識証明」の 2 つのカテゴリに分類できます。
インタラクティブなゼロ知識証明とは、何かを証明するために、証明者は嘘発見器と同じように検証者と繰り返し対話する必要があることを意味します。検証者は証明者のコミットメントの信頼性に異議を唱えるために絶えず質問をし、証明者は常に応答する必要があります。バリデーターが納得するまで、これらの課題に対処してください。その流れは以下の通りです。
初期のゼロ知識証明はすべて対話型でした。この方法は簡単ですが、プロセスは長く非効率的です。双方が同時にオンラインで検証を完了する必要があり、一度に信頼できる検証者は 1 人だけです。複数の人を信頼する場合は、上記のプロセスを繰り返す必要があります。 。このプロセスは考えるのが面倒です。
したがって、非対話型のゼロ知識証明が登場しました。非対話型のゼロ知識証明では、証明者と検証者が事前に検証ルールに合意し、証明者は約束どおりにデータを提供し、検証者はいつでもデータの正しさを検証できます。この種の非対話型検証では、双方が同時にオンラインである必要はなく、証明者は証明を 1 回提供するだけで済みます。 **実際のシナリオのアプリケーションは、基本的に ZK-SNARK や ZK-STARK などの非対話型のゼロ知識証明です。 **
2. ブロックチェーンの世界でゼロ知識証明はどのような用途に使われますか?
ゼロ知識証明は主に、ブロックチェーンの世界におけるプライバシーとスケーラビリティという 2 種類の問題を解決するために使用されます。 **
(1) プライバシー
ゼロ知識証明の重要な応用成果の 1 つは、2015 年に開始されたプライベートトランザクションを実現できる Zcash プロジェクトです。 Zcash などの匿名コインに加えて、ゼロ知識証明は、ブロックチェーン ファイナンス、オンチェーン投票、本人確認などのシナリオでも役割を果たすことができます。
ブロックチェーン金融アプリケーションでは、ゼロ知識証明により、参加者はどの取引や情報を開示または非表示にするかを柔軟に選択できます。たとえば、企業は、機密の顧客、従業員の給与、請負業者、サプライヤーなどに関する機密情報を隠しながら、監査証跡のために特定の支払いを選択的に公開できます。
チェーン上で投票する場合、ゼロ知識証明により、参加者は匿名で投票し、投票結果の正当性を検証することもできます。
さらに、ゼロ知識証明は、ユーザーが特定の ID 情報を明らかにすることなく ID 検証を行うのにも役立ちます。イーサリアム上の Polygan ID はゼロ知識証明検証スキームを採用しており、ユーザーのプライバシー保護に役立つだけでなく、KYC 検証仕様の規制要件も満たしており、いつどのデータを共有するかをユーザーが自由に選択できます。
(2) 拡張性
ブロックチェーンは、市場の需要を満たすことができないパフォーマンスの制限により拡張が急務となっており、ゼロ知識証明に基づく ZK ロールアップ拡張ソリューションは、レイヤー 2 拡張の究極のソリューションとみなされています。 ZK-Rollups は、計算をオフチェーンに転送することにより、つまり、多数のトランザクションをロールアップ ブロックにパックし、チェーンの下でゼロ知識証明に基づいて有効性証明を生成することにより、ブロックチェーンのスループットを向上させます。レイヤ 1 のみで必要です。証明を検証すると、新しい状態を直接適用できるようになり、結果としてガスが減り、セキュリティが向上します。
ZK-SNARKs テクノロジーに基づく zkSync と zk-STARKs テクノロジーに基づく StarkNet は、現在最も代表的な ZK-Rollups プロジェクトです。
このうちzkSyncは、Matter Labsが2018年に発表したレイヤー2拡張ソリューションで、ゼロ知識証明に基づくロールアップを利用することでイーサリアムネットワークのスケーラビリティを向上させます。 ** 今年の 2 月、zkSync は zkSync Era メインネットが正式に開始されたと発表し、その後、OKLink マルチチェーン ブラウザが zkSync メインネット データへのアクセスをリードし、ネットワーク全体で zkSync ネットワークをサポートする最初のマルチチェーン ブラウザになりました。 **
StarkNet は、イスラエルのソフトウェア会社 StarkWare によって開発された許可不要のレイヤー 2 ネットワークであり、zk-STARKs テクノロジーを使用することで、DApp がより低いトランザクション コストでより大きなコンピューティング スケールを実現できるようになります。 2021 年 11 月のメインネットの立ち上げ以来、StarkNet エコシステムは急速に発展しており、現在 100 を超える Dapps とサービスがあり、DeFi、NFT、ウォレット、クロスチェーン ブリッジなどのさまざまなカテゴリをカバーしています。 ZK ロールアップ トラックの中で最も高い評価と最大の市場シェアを持つプロジェクトの 1 つとして、StarkNet の開発は大きな注目を集めています。 OKLink の OKLink マルチチェーン ブラウザは、近い将来 StarkNet ブラウザも起動し、StarkNet エコロジーとレイヤー 2 構築に注目し参加するすべてのユーザーに、より包括的で豊富なオンチェーン データの洞察とサービスを提供します。
StarkNet ブラウザは OKLink によって起動された 30 番目のブロックチェーン ブラウザであり、zksync に次ぐ 2 番目の ZK Rollup ブラウザになると報告されています。将来的には、OKLink マルチチェーン ブラウザーは、ゼロ知識証明に基づいて、Polygon-zk、Linea、Base、Scoll などの有名な ZK ロールアップ プロジェクト用のブロックチェーン ブラウザーも起動する予定です。