【ゼロ知識証明】ゼロ知識証明を解剖する
以前の記事でも取り挙げましたが、今企業の開発分野としてゼロ知識証明が注目を集めています。
ゼロ知識証明は、情報を漏らすことなく証明するために、証明者がある情報を持っていることを証明する方法のことで、証明プロトコルの一種です。基本特性として完全性、健全性、ゼロ知識性の3つの性質があります。
詳しくは前回の記事をご参照ください。
ゼロ知識証明は、ブロックチェーン上でのデータ共有時のプライバシー強化のために使われたり、また取引計算の処理能力を加速するための技術としても使われます。
Web3.0、およびその基盤となるブロックチェーン技術は、セキュリティ面について言及すると、情報改ざんには強い反面、情報漏洩やプライバシーの課題が依然としてあり、今後更に強化が期待される分野として注目されています。
今回はNFTでゼロ知識証明が活用できる具体的なシーンや、実際にゼロ知識証明を取り入れているプロジェクトを紹介していきます。
ゼロ知識証明のカテゴリ
ゼロ知識証明は,大きく分けて以下の2つがあります。
- 対話式ゼロ知識証明 証明したい人と、確認したい人の間で何度かデータのやりとりをする証明方法
- 非対話式ゼロ知識証明 データを一度提示するだけの証明方法
簡単に言うと、対話式ゼロ知識証明は、証明者と検証者の間で情報交換を行う方法であり、非対話式ゼロ知識証明は、証明者があらかじめ計算した情報を提示する方法です。
対話式ゼロ知識証明は、証明者と検証者が相互作用を行うことによって、証明が成立するかどうかを決定します。
証明者は秘密を明らかにすることなく情報を提示することで、検証者が要求する情報を提供し、検証者は、証明者から提供された情報を確認し、証明が成立するかどうかを判断します。
一方で、非対話式ゼロ知識証明は、証明者がある情報を提示することによって、証明が成立するかどうかを決定します。
この方法では、証明者は、あらかじめ証明のために必要な情報を計算し、証明を行います。検証者は、証明者から提供された情報を検証し、証明が成立するかどうかを判断します。
非対話式ゼロ知識証明は、対話式ゼロ知識証明の考えに加えて、ハッシュ値等を利用した応用技術となっており、対話式と比べると計算量が大幅に減る利点がありますが、情報を提示することが必要であるため、安全性の確保に注意する必要があります。
非対話式ゼロ知識証明の具体的な有名な技術としては、zk-SNARK(Kzero-knowledge Succinct Non-Interactive ARguments of Knowledge)、zk-STARK(zero-knowledge Scalable Transparent ARgument of Knowledge)、Bulletproofsなどがあります。
ゼロ知識証明の技術が有名になったきっかけは仮想通貨取引でした。
それまでは理論的観点だった技術が、実際に利用されたことで話題になりました。
非対話式ゼロ知識証明も同様に利用されていて、仮想通貨のZcashはzk-SNARKを最初に実装したことで、モネロはBulletproofsを利用していることで知られています。
必要となるシーンと利用目的
ゼロ知識証明の技術は、もともとは取引の正当性を実証するための技術でした。
取引時のプライバシー強化で役立ちますが、その他にも、正当性の証明で多くの計算をするための処理高速化(スケーラビリティーの向上)に利用することができます。
以下に詳細を説明します。
シーン① 取引時のプライバシーを強化する
ブロックチェーン上の取引において、送金者や受取人のアドレスを開示せずに、取引が正当であることを証明することができます。
ブロックチェーンには、スマートコントラクトと呼ばれるプログラムが実行される仕組みがありますが、ゼロ知識証明を使用することでスマートコントラクトの実行に必要な情報を開示せずに、その実行の正当性を証明することができます。
これにより、機密情報を取り扱う企業や個人も、安心してスマートコントラクトを利用することができます。
シーン② 取引時の計算処理を高速化する
ゼロ知識証明を使用した場合と使用しなかった場合では計算量は変わります。
一般的には、ゼロ知識証明はトランザクションに関連する情報を秘密に保ちながら検証するために、通常の電子署名検証よりも追加の計算量が必要になる傾向がありますが、一方でセキュリティ担保としてユーザ認証をする場合には、通常の認証プロトコルを利用するより計算量が低い場合があります。
つまりセキュリティが要件に入る場合に、結果的に取引時の計算処理が高速化されるといったメリットがあるのです。
プロジェクト紹介
具体的にどんなプロジェクトでゼロ知識証明が使われているのかを見ていきましょう。
ゼロ知識証明の技術は認証、電子署名、暗号鍵、ブロックチェーンといった多くのセキュリティ技術に応用が利くので、特色も様々なものがあります。
zkRollupを利用したL2プロジェクト
zkSync
Matter Labsが開発しているイーサリアムブロックチェーンの遅延問題を解決することを目的とした、レイヤー2拡張ソリューションです。
レイヤー2でよく使われている、計算処理速度向上およびスケーラビリティーのためのテクノロジーの中に「ロールアップ」というものがありますが、ロールアップでも「zk-Rollup」というレイヤー1への資金の引き出し時間が短かったり、ゼロ知識証明(zero-knowledge proof)の技術が使われているものを採用しています。
zkSyncは、支払い機能に焦点を当てた開発をしており、支払いアプリケーションで利用されています。
StarkNet
StarkWareが開発しているレイヤー2ソリューションで、こちらも同様にzkRollupを採用しています。
また、証明方法としてもSTARKという独自技術を持っています。
その他の特徴として、誰でもプロダクトを構築可能なパーミッションレスなソリューションになっています。
Taiko
Taikoはイーサリアムの実行環境やアプリケーションと同等性がある、zkEVM形式を採用したプロジェクトです。
EVMと同等性があるため、プログラミングコードに変更を加えず、そのままイーサリアムネットワークで利用することができます。
先日Skyland Venturesが50億円の資金調達をしてTaikoを含む複数のプロジェクトに投資していることから、今後更に発展することが期待されます。
Polygon Zero
Polygonはイーサリアムのスケーリングソリューションを提供しています。
Polygonは以前にイーサリアムのスケーラビリティを向上させるソリューションである「Hermez Network」の統合を発表してゼロ知識証明を基盤にしたソリューション開発に注力することを意思表示していて、その後昨年末にゼロ知識証明の技術を開発する「Mir」を買収することを発表しました。
これからMirの技術を活用して新たなプロジェクト「Polygon Zero」を進め、イーサリアムと同等性がある技術として、処理能力の高いソリューションを開発する計画のようです。
Intellect
人命と向き合う医療従事者のメンタルマネジメントが重要視されています。
Intellectは、企業、病院、クリニックの医療従事者に対して、メンタルヘルスケア・ソリューション「Intellect」を提供しています。
システム内で個人に関するデータにゼロ知識証明の暗号化を施しており、利用者以外の第三者が利用者情報を閲覧出来ない仕様になっています。
組織全体のメンタルヘルスデータが個人を特定できない集約データとなっているため、利用者のプライバシーが保護された状態で利用できる仕様です。
展望
ゼロ知識証明技術を利用したプロジェクトは、zkRollupを利用しているものが多い印象です。
特にイーサリアムとの同等性があるサービスは市場優位性を獲得していく予兆があります。
しかしながらこの分野はまだ発展途上で、市場競争の途中であると言えます。
またスケーリング目的以外の利用用途として、機密情報を扱うような現場のシステムでプライバシー確保を目的でもゼロ知識証明は導入されています。
市場規模の大きい企業が次々と開発研究のために参画しているゼロ知識証明技術の分野は今後も続いていき、Web3.0を更に盛り上げることになりそうです。
Plus Web3は「Web3領域に特化したキャリア支援サービス」
Plus Web3では、Web3で働きたい人材と、個人に合わせた優良企業をマッチングする求人サービスを行っています。
- Web3で働くことも考えている…
- Web3のインターン先はどこがいいか分からない…
- どんな知識やスキルがあれば良いのか分からない…
このような悩みを抱える人は、一度「無料キャリア相談」にお越しください。あなたにマッチした優良企業をご紹介いたします。