a16z、Lattice Joltをリリース:ポスト量子セキュリティを備えた3倍高速な証明

iconTechFlow
共有
AI summary icon概要
a16z cryptoは、格子暗号を採用し、楕円曲線手法に代わる新しいオープンソースのゼロ知識証明(ZKP)仮想マシン「Lattice Jolt」をリリースしました。このアップグレードにより、ブロックチェーンのセキュリティが強化され、証明の生成速度が最大3倍速くなりました。証明サイズは100KB以下となり、Lattice JoltはCPUおよびGPU向けで、最も高速でコンパクトなポスト量子zkVMとなりました。

著者:a16z crypto

翻訳:深潮 TechFlow

深潮解説:zkVMは「証明が遅く、サイズが大きい」と常に批判されてきたが、a16zは今回、楕円曲線を格子暗号で置き換えることで、証明速度を3倍に向上させ、証明サイズを100KB以下に圧縮した。これは、現在のところ、伝統的な楕円曲線方式の速度を上回る唯一の後量子方式であり、チェーン上の検証コストやプライバシー応用に直接的な影響を与える。

本日、私たちはオープンソースのzkVM(ゼロ知識仮想マシン)の最新版であるLattice Joltを正式にリリースしました。Joltはもともと現在最も速く、最もシンプルなzkVMであり、そのアーキテクチャは変更されていません。しかし、基盤となる暗号学が変更されました:楕円曲線から格暗号へと置き換えられました。この1つの変更により、以下の3つのメリットが同時に実現されました:

  • Joltが後量子セキュリティに対応しました。
  • prover と verifier の速度が 2-3 倍向上しました。
  • Lattice Joltは、すべての後量子zkVMの中で最も短い証明を実現:現在は100KB未満であり、今後さらに圧縮可能です。証明はチェーン上に記録され、ネットワーク間で送信されるため、証明が小さいほど検証コストが低くなります。

これらの機能は、zkVMのすべての使用シナリオをカバーします。同じプローバーが、GPU上で数十億のCPUサイクルを処理し、スマートフォン上で数百万のサイクルを証明できます。どちらの場合も、開発者は専門知識を要する回路を手書きする必要なく、通常のプログラムを書くだけです。これが、Joltを「オールインワンSNARK」と呼ぶ理由です。

しかし、より大きな物語は、Lattice JoltがSNARKの設計と採用に与える意味である。現在市場に出ているすべての実用化された後量子SNARKは、ハッシュベースである。Lattice Joltは、格ベースのSNARKがより速く、よりコンパクトに実現できることを証明した。デジタル署名も同様の移行を経験している:ハッシュ方式は保守的な選択だが、格方式こそが世界で大規模に導入されているものである。私たちは、SNARKも同様の道をたどると予想しており、このブログ記事の後半でその理由を説明する。

楕円曲線を格に置き換える

Jolt の以前の多項式コミットメント方式は Dory であり、これはシステム内で唯一楕円曲線暗号に依存するコンポーネントであった。Lattice Jolt は、Module-SIS 格仮定に基づく新規多項式コミットメント方式である Akita で Dory を置き換えた。Lattice Jolt は、この標準的で十分に研究された仮定に基づき、128 ビット完全セキュリティを実現している。

Module-SISとその兄弟であるModule-LWEは同じ仮定の族に属しており、世界のデジタルインフラはこの族の仮定へと移行しています。これらの仮定は、デジタル署名標準であるML-DSAを支えるだけでなく、キー確立標準であるML-KEMも支えており、ML-KEMはすでに世界で最も広く展開されている後量子原語です。

Akitaの開発と実装は、LayerZeroの研究者およびエンジニアが主導し、カーネギーメロン大学、南カリフォルニア大学の研究者、および当社のa16z cryptoにおけるエンジニアリングおよび研究チームが共同で参加しています。

Lattice Jolt はなぜ速いのか

Lattice Jolt は後量子セキュリティだけでなく、置き換えられた楕円曲線バージョンよりも高速です。

主な加速の理由は単純です。楕円曲線はJoltに256ビット体での動作を強制しますが、格暗号は128ビット体で同等のセキュリティを達成できます。Joltプローバーの主な処理は体要素の乗算(本質的に超大数の乗算)であるため、数値のサイズが半分になると、各乗算が数倍速くなります。

Dory付きのJoltはすでに高速です:前回のパフォーマンス更新では、Joltがノートパソコン上で毎秒約70万のRISC-V(RV64IMAC)サイクルを証明できることが示され、その後の最適化により、曲線版Joltは毎秒100万サイクルを超えました。

Lattice Joltは、1台のマシンで毎秒200万以上のサイクルを証明できます。

過去6か月の大部分の期間、我々はAkitaの開発とJoltへの統合に加え、Joltのコードベースをゼロから再構築しました。Joltは以前からGPU上で良好なパフォーマンスを発揮していましたが、今回の再構築により、GPU実装の構築と最適化がより容易になりました。

最初の成果はApple Metalの実装であり、Appleハードウェアに大幅な速度向上をもたらしました。(Metalは、MacBookやiPhoneなどのデバイスに内蔵されたGPU上でコードを実行するためのAppleのフレームワークです。)

  • GPU加速されたLattice Joltは、MacBook上で毎秒1,000万以上のRV64IMACサイクルを証明できます。
  • 純CPUのLattice Joltは、同じマシン上で毎秒200万以上のサイクルを証明できます。
  • 金属付きのMacBookでも、カーブ型Joltで現在毎秒約400万サイクルを実現しています。

つまり、1回のリリースで、MacBook上のJoltのパフォーマンスは、約100万サイクル/秒(カーブ版、CPUのみ)から1000万サイクル/秒以上(グリッド版、Metal対応)に向上しました。

この数字を大きな文脈で見ると:4年前、私たちは初めてSNARKプローバーのオーバーヘッドを記録したとき、計算を証明するコストは直接実行するよりも数百万倍高かった。Lattice Joltはこのオーバーヘッドを約1万倍まで削減した。しかし、これはまだ終わりではなく、エンジニアリングとプロトコルレベルでの最適化の余地は依然として存在する。

証明のサイズとプローバーの速度は同等に重要です。Lattice Joltの証明は100 KB未満で、他の後量子zkVMの証明(200 KB以上から約600 KB以上)よりもはるかに小さいです。

グレードアップ後、Joltのメモリ使用量はさらに改善され、プローバーの周期あたりの空間使用量が約300バイトから200バイトに低下しました。これにより、スマートフォン上で数百万のRISC-V周期を証明できるようになります。

関連する論文がまもなく公開され、Lattice Jolt にプライバシーアプリケーションに必要なゼロ知識性が追加されます。

なぜハッシュではなくグリッドを選ぶのですか?

長年にわたり、SNARKコミュニティの注目(およびほぼすべての本番デプロイ)は、ハッシュベースのSNARKに向けられ、それは後量子セキュリティへの道筋と見なされてきました。

また、LaBRADOR、Greyhound、LatticeFold、SuperNeo、およびAkitaの直接の前身であるHachiを含む、格SNARKと格承诺の継続的な研究ラインが存在してきた。Lattice Joltはこれらの研究を基盤とし、高性能なzkVMアーキテクチャに格承诺層を導入すると同時に、格ベースのSNARKが速度とコンパクト性において比類ないことを証明している。

これは驚くべきことではない。前述のように、同じパターンはすでにデジタル署名で発生している。

暗号学者は多くの仮定に基づいて署名を構築してきました。ハッシュ署名は、その安全仮定がシンプルで古くから知られているため、最も保守的な選択肢とされています。しかし、世界はより短く、より高速な格署名へと移行しています。

  • ML-DSA署名は約数KBです。
  • NIST標準化されたハッシュ代替案SLH-DSAははるかに大きい。
  • 暗号化と鍵交換の場合、状況はより明確です。ハッシュ方式は選択肢がなく(不可能であることが証明されています)、後量子デプロイメントは圧倒的に格に基づいています。ML-KEM(NISTが2024年に決定した主要な鍵確立標準)は、主要なブラウザや通信アプリで既にデフォルトで導入され、ネット上の多数のTLS接続で使用されています。

SNARKと署名の類似性は表面的なものではない。デジタル署名は本質的に、認可されたメッセージに対する秘密鍵の知識の証明である。SNARKはこのパラダイムを、狭い主張から任意の計算へと拡張する。したがって、SNARKの長期的な暗号学的地図が署名や暗号化の地図とまったく異なるほうが不思議である。

ここで明確にしておくべき誤解があります:ハッシュSNARKは「ハッシュ関数にのみ依存している」として、保守的な後量子選択肢としばしば言われますが、これは基盤となるハッシュ関数が非代数的である場合にのみ成り立ちます。

現在、ほとんどのハッシュベースのSNARKデプロイは、ハッシュが正しく評価されたことを低コストで証明するために、PoseidonのようなSNARKに適した代数ハッシュ構造に依存しています。これは再帰(有効なSNARK証明を保有していることを証明すること)にとって特に重要です。これらの構造は標準的なハッシュ関数よりも多くの構造を持ち、その暗号解析はまだ未熟です。

要言之、我々は代数ハッシュ関数の安全性に自信を持っていません。しかし、それらは現在でもプロダクションレベルのSNARKシステムで広く使用されています。(ただし、進展の兆しとして、イーサリアム財団は最近、それらの使用を廃止すると発表しました。)

代数ハッシュは、デプロイ済みのハッシュベースのSNARKにおける唯一の隠蔽仮定ではない。多くのシステムは、完全に証明された境界ではなく、推測的なプロキシギャップ境界を用いて具体的なセキュリティレベルを設定してきた。その中には、後に誤りであることが証明された、最も強力とされていた境界も含まれている。

上記のハッシュベースのSNARKを避けたとしても、そのセキュリティ目標は通常128ビット未満である。これは、完全な128ビットセキュリティは顕著なパフォーマンスオーバーヘッドをもたらすためである。なぜか?ハッシュベースのSNARKは、128ビットの体上で128ビットのセキュリティを達成できない。その信頼性誤差はn/|F|に比例し、ここでnは証明される文の規模にほぼ等しく、|F|は体のサイズである。したがって、128ビットの体上で10億ステップの文を証明すると、約30ビットのセキュリティが損失し、100ビット未満となる。対照的に、Lattice Joltの信頼性誤差はlog(n)/|F|に比例し、同じ体上でほぼ完全な128ビットのセキュリティを維持する(わずかなlog(n)の損失は標準的な技術で回復可能である)。

皮肉なことに、一部「保守的」な後量子選択肢として宣伝されているシステムは、代数的ハッシュ関数、推測的近接ギャップ境界、そして128ビット未満の目標セキュリティレベルに同時に依存している。したがって、ハッシュベースのSNARKは重要な方向性ではあるが、多くの人が思い込んでいるような低リスクな選択肢には自動的にはならない。

一つのJolt、三つの基礎:カーブ、グリッド、ハッシュ

私たちは、Joltが単一の暗号学的基盤に束縛されるべきではないと常に考えています。曲線、ハッシュ、格に基づく成熟した高性能なSNARKを備えるべきです。異なる仮定とパフォーマンス特性は、異なるシナリオに適しています。

しかし、デジタル署名を基準とすれば、格に基づくSNARKが最も広く導入される後量子選択肢となる。

Jolt はこの変化において非常に優れた立場にあります。初期の Jolt 設計は、楕円曲線がスパースベクトルに対するコミットメントに特に有効な特性を利用しており、格コミットメントも同様の特性を持っています:ベクトルの大部分の要素がゼロまたは小さい場合、ベクトルへのコミットメントコストは低くなります。Jolt はほぼこのようなベクトルのみにコミットメントを行うため、この特性により、Jolt の残りの部分を変更せずに Dory を Akita に置き換えることができます。

我々はハッシュベースのJoltバージョンを構築します。しかし、ハッシュベースのバージョンは、曲線ベースや格ベースのJoltと比較して、空間効率が低く、証明がより大きくなり、さまざまな複雑な問題を抱えています。これは、最も有望なハッシュベースのSNARKの研究が二進体上で行われているためです。この数体系はハッシュの評価を証明するのに適していますが、CPUの算術処理方式とは一致しません。この不一致により、通常のCPU乗算の証明が高コストになります。それでも、デジタル署名の分野のように、エコシステムは主要な仮定の各族に対してzkVMを備えるべきです。

オムニSNARK

Lattice Joltは、ゼロ知識仮想マシン(zkVM)の構築者が求めるすべての要件を一度に満たします:後量子、透明性、高速、コンパクトで空間効率的です。Joltが高速である理由であったすべての利点を犠牲にすることなく、LaBRADORからHachiまでの格子SNARK研究路線を本番レベルのzkVMに実装します。

私たちの目標は、最も高性能なzkVMを誰でも利用できるようにオープンソース化することだけでなく、特定のアプリケーション向けにSNARKを手動で最適化する必要を大幅に減らすことです。これは、Joltが手動で最適化されたプローバーと同等の速度であることを要求するものではありません。それは、あたかもCPUがすべてのタスクで専用ASICに匹敵することを求めるような、不可能な目標です。Joltには、受け入れ可能なユーザー体験を提供するのに十分な速さがあれば十分です。

クライアント証明に関連する「小規模」ステートメント(現在、これらのシナリオでは手動で最適化された回路が支配的)にとって、重要な基準は、スマートフォン上で約1秒以内に証明を生成することです。Jolt はすでにこの目標に近づいており、さらに多くの高速化手法が進行中です。

SNARKの時代が到来しました。

本コンテンツは参考情報であり、法律的、商業的、投資的、または税務的な助言として依拠すべきではありません。これらの事項については、ご自身の顧問にご相談ください。ここで言及されるすべての証券またはデジタル資産は説明目的のみであり、投資助言または投資顧問サービスの提示を意図するものではありません。さらに、本コンテンツはいかなる投資家または潜在的投資家に対しても提供されるものではなく、a16zが運用するファンドへの投資を決定するための根拠として使用してはなりません。(a16zファンドへの投資の提示は、各ファンドのプライベートプレイスメントメモ、認購契約および関連文書を通じてのみ行われ、これらの文書を完全にご確認いただく必要があります。)ここで言及、引用、または説明された投資またはポートフォリオ企業は、a16zが運用するツールにおけるすべての投資を代表するものではなく、これらの投資が利益をもたらすことを保証するものでもなく、今後行われる他の投資が同様の特性または結果をもたらすことを保証するものでもありません。Andreessen Horowitzが運用するファンドによる投資の一覧(発行者がa16zによる公表を許可していない投資および非公開の上場デジタル資産投資を除く)は、https://a16z.com/investments/ でご確認いただけます。

本資料に含まれるチャートは参考用であり、いかなる投資判断の根拠としても使用しないでください。過去のパフォーマンスは将来の結果を保証するものではありません。本コンテンツは記載された日付における状況を反映しています。本資料に記載された予測、推定、先行きに関する記述、目標、見通しおよび/または意見は、予告なしに変更される可能性があり、他の者の意見と異なる、または対立する場合があります。その他の重要な情報については、https://a16z.com/disclosures をご参照ください。

免責事項: 本ページの情報はサードパーティからのものであり、必ずしもKuCoinの見解や意見を反映しているわけではありません。この内容は一般的な情報提供のみを目的として提供されており、いかなる種類の表明や保証もなく、金融または投資助言として解釈されるものでもありません。KuCoinは誤記や脱落、またはこの情報の使用に起因するいかなる結果に対しても責任を負いません。 デジタル資産への投資にはリスクが伴います。商品のリスクとリスク許容度をご自身の財務状況に基づいて慎重に評価してください。詳しくは利用規約およびリスク開示を参照してください。