高速かつ高信頼性のゼロ知識暗号化を実現


この進捗によって、より安全で迅速なオンライン金融取引や、その他の価値が高い情報交換が可能になるかもしれない


現代の暗号技術における画期的な進歩の1つが「ゼロ知識証明(ZKP: zero‐knowledge proofs」という概念です。ゼロ知識証明は、ある当事者(証明者)が、他の当事者(検証者)に対して、命題の真偽を証明する以外の情報は一切明かさずに、真実であることの証明を可能にするプロトコルです。これらのプロトコルは、金融取引や国防総省などが行う安全な機密情報の交換にとって非常に重要で必要不可欠です。

従来、ゼロ知識プロトコルは計算負荷が高いため、実際のアプリケーションで効率的に実装するのが困難だとされてきました。この課題に取り組むことが、国防高等研究計画局(DARPA)の「Securing Information for Encrypted Verification and Evaluation(SIEVE)意訳:暗号化検証および評価のための情報保護」プログラムの主な目的の1つでした。

SRIのComputer Science LaboratoryのAdvanced Computer ScientistであるVitor Pereiraは、「SIEVEプログラムは、ゼロ知識に関する論文やソフトウェアを多く生み出しました」と述べています。「私たちの研究の特徴は、これらの暗号プロトコルの数学的に検証された実装を開発しましたが、検証されていないアプローチの速度に匹敵する速度を実現したことです。」

「私たちは、検証されていないアプローチに匹敵する速度で動作する、数学的に検証された実装を開発しました。」—Vitor Pereira

最終的な成果は、これらのプロトコルの数学が正式に定義され、機械によって検証され、実装がその定義から抽出されたことです。これにより、手動によるコーディングミスが排除され、実装されたプロトコルが意図した通りに動作し、正しく安全に機能するという高い信頼性を持って保証されます。

Pereiraはさらに、「このようなコンピュータ支援暗号化のより大きな目標は、セキュリティの特性保持を保証しながら、セキュリティ証明の複雑さを制御することです」と述べ、SRIがゼロ知識証明を検証するために使用した技術を説明した2つの論文についても触れました。

SIEVE プログラムチームの最初の論文では、ゼロ知識に対する「Multiparty Computation in the Head(MitH)」アプローチの初めての機械検証実装を紹介しました。そして、この研究により、ゼロ知識プロトコルの一般的な数学的に検証された実装を作成する可能性が生まれました。

また、2番目の論文では、機械検証暗号学のパフォーマンスに関する重要な課題に取り組み、並列処理を利用してメモリアクセスを最適化した実装を作成する正式な方法を提案しました。この結果、実行速度は従来の検証済み実装に比べて実行速度が3,000倍向上し、検証されていない手動でコーディングされたアプローチと同じ性能に達しました。

発表された論文に加えて、チームは自分たちの研究成果をより広くコミュニティに提供するため、EVOCryptというオープンソースのライブラリを作成しました。

「現在、私たちは技術を改良し、量子コンピューティングを含む新たな分野への適用を広げることを目指しています」とPereirは述べています。「これは、この研究にとって興味深い方向性となり得るでしょう。」

配布声明A:公的なリリースが承認されています。配布に制限はありません。

(Distribution Statement A: Approved for public release, distribution unlimited.)


Read more from SRI