完全準同型暗号(FHE)を使えば、アプリケーションはデータを先に復号することなく、暗号化されたデータ上で計算を実行できる。結果も暗号化されたままなので、機密データを計算の間ずっと非公開に保つ必要がある場合にFHEは有用だ。

ゼロ知識(ZK)証明は目的が異なる。ある当事者が、基となる秘密データを明かさずに、命題や計算が正しいことを証明できる仕組みだ。ZK証明は、プライバシーを保った資格情報、ロールアップの検証、支払能力の証明など、計算全体を暗号化したまま保つことよりも検証を重視する場面でよく用いられる。

両者の決定的な違いは、FHEが処理中のデータを保護するのに対し、ZK証明は秘密の入力を開示せずに結果を検証する点にある。プライバシー重視のブロックチェーンシステムの中には、同一問題の異なる部分を解くものとして両技術を組み合わせるものもある。

完全準同型暗号(FHE)とは何か

完全準同型暗号(FHE)は、暗号化されたデータ上で直接計算を実行できる暗号方式だ。データは処理中も暗号化されたままで、最終結果は後から復号すると、元の平文から得られるはずだったものと同じ出力になる。

ブロックチェーンアプリケーションでは、FHEは検証者や他の参加者に値そのものを開示することなく、暗号化された残高、秘密投票、機密のアプリケーション状態を支え得る。システムには、鍵管理、復号権限、最終結果へのアクセスに関する明確なルールが依然として必要だ。

ゼロ知識(ZK)証明とは何か

ゼロ知識(ZK)証明を使えば、ある当事者が、証明の生成に用いた秘密情報を明かさずに、命題や計算が正当であることを証明できる。証明者が証明を生成し、検証者が事前に定められたルールに照らしてそれを確認する。

ZK証明は、プライバシーを保った本人確認、取引の検証、ロールアップの妥当性、準備金や支払能力の証明に利用できる。プライバシーはアプリケーションの設計次第で、入力や出力、取引の詳細の一部が公開されたままとなる場合もある。

FHEとZK証明の主な違いは何か

FHEとZKは機密計算の異なる部分を担う。両者を代替関係と見なすと、プライバシーか正当性のどちらかが満たされないままになりかねない。

観点完全準同型暗号(FHE)ゼロ知識(ZK)証明
主な目的常に暗号化されたままのデータ上で直接計算する証人を開示せずに命題が正当であることを証明する
出力正規の復号経路を必要とする暗号化された結果を生成するコンパクトな証明と選択された公開出力を生成する
計算モデル評価者は、対応する暗号化演算の下で暗号文を変換する証明者は、計算を回路や仮想マシンに変換する
検証正しく復号すると、計算された平文結果が明らかになる検証者は、計算全体を再実行せずに証明を確認する
パフォーマンスコスト暗号文演算とブートストラッピングが大きな実行オーバーヘッドを生む証明生成は重いが、検証はコンパクトに保てる
鍵への依存復号鍵のガバナンスがシステム設計上の重要な選択となる信頼できるセットアップや証明の前提は、選択した方式に依存する

FHEとZK証明はどのように動作が異なるのか

- FHE:計算が行われる間もデータは暗号化されたままだ。アプリケーションは、値そのものを開示することなく、暗号化された残高、投票、その他のプライベートな状態を更新できる。システムには、復号鍵、認可されたアクセス、鍵の紛失や漏えい時の復旧に関するルールが依然として必要だ。

- ZK証明:証明者は、秘密の入力が一連のルールを満たすことを、その入力を明かさずに示す。検証者は、計算全体を繰り返す代わりに、得られた証明を確認する。証明が確認するのはシステムに組み込まれたルールのみであるため、回路のロジックが誤っていれば、誤った条件に対して正当な証明が生成される可能性がある。

代表的なFHEプロジェクトとZKプロジェクトは?

代表的なFHEプロジェクト

1. Zama:機密スマートコントラクトと暗号化されたオンチェーンアプリケーション向けのFHEツールとブロックチェーン基盤を開発している。

2. Fhenix:FHEを用いて暗号化されたスマートコントラクト実行を支えるブロックチェーン基盤を構築している。

3. Inco:FHEベースの暗号化状態を用いた、ブロックチェーンアプリケーション向けの機密コンピューティングに注力している。

代表的なZKプロジェクト

1. zkSync:ゼロ知識証明を用いてオフチェーン取引のバッチを検証し、イーサリアムをスケールさせる。

2. Starknet:STARK証明を用いて計算を検証し、イーサリアム上のスマートコントラクト実行をスケールさせる。

3. Aztec:ゼロ知識証明技術を用いたプライバシー保護型のブロックチェーンアプリケーションに注力している。

FHEとZK証明にはどのようなリスクやトレードオフがあるか

- FHEのリスク:暗号化された計算は通常の計算よりはるかにリソースを消費する。大きな暗号文、処理速度の低下、鍵管理、復号権限は、コストと複雑さを増大させ得る。

- ZKのリスク:証明生成には専用の回路とソフトウェアが必要だ。回路、コンパイラ、検証コントラクト、セットアップ手順のバグはプライバシーや正当性に影響し得るほか、公開メタデータが情報を明かす可能性もある。

両技術は、暗号技術そのものよりも、正しい実装とアプリケーション設計に大きく依存している。

ブロックチェーンアプリケーションにはどのプライバシー技術が適しているか

- FHE:機密残高、プライベートオークション、暗号化された投票など、プライベートデータを継続的に処理する必要があるアプリケーションにより適している。

- ZK証明:本人確認、ロールアップの検証、支払能力の証明、プライベートな適格性確認など、基となる情報を明かさずに条件や計算が正当であることを証明する用途により適している。

- 併用:FHEとZK証明を組み合わせるシステムもあり、計算中はデータを暗号化したままにしつつ、証明によって入力と処理が所定のルールに従っていることを検証できる。

関連概念

1. ZKロールアップとは?

2. 秘密鍵とは?

3. スマートコントラクトとは?

関連記事

1. Succinct(PROVE)分散型ZKPネットワークとは?BingXでの取引方法

2. イーサリアム上のAZTECプライバシーLayer 2 zkRollupとは?購入方法

3. 2026年の注目ゼロ知識(ZK)暗号プロジェクトとは?

4. Zama(ZAMA)とは?機密スマートコントラクト向け「HTTPZ」レイヤー