TEE(Trusted Execution Environment)とは
注:この文書は英語の原文からの自動翻訳です。
TEE(Trusted Execution Environment)とは
Trusted Execution Environment (TEE) は、プロセッサ内の安全でハードウェア的に隔離された領域で、システムの他の部分 — オペレーティングシステム、ハイパーバイザー、さらにはマシンの物理的な所有者を含む — から保護されたかたちでコードを実行しデータを処理します。TEE 内で実行されるコードは、外部のソフトウェアによって観察されたり改ざんされたりすることはできません。TEE は機密コンピューティングのメカニズムを提供します。すなわち、ハードウェアによって強制された保証を伴って、信頼できないハードウェア上で機密性の高いワークロードを実行することです。
要約: TEE はプロセッサ内のハードウェアベースの「密閉された部屋」です。その中のコードとデータは、外部のあらゆるもの — サーバーの運用者を含む — に対して不可視で触れられません。信頼できないマシン上で機密性のある AI を可能にします。
それが解決する問題
分散型 AI では、コンピューティングは信頼できない当事者によって提供されます。ユーザーが推論のために機密性の高いデータをリモートの GPU ノードに送るとき、あるいはモデルの所有者が独自のモデルを第三者のハードウェアにデプロイするとき、根本的な疑問が生じます。コンピューティング提供者がデータを読んだりモデルを盗んだりするのを、どうやって防ぐのか?
従来のソフトウェアベースの隔離(仮想マシン、コンテナ)は、ワークロードを互いから保護しますが、インフラの運用者からは保護しません。運用者は OS、ハイパーバイザー、ハードウェアを支配します — 原理的には、メモリを検査し、ネットワークトラフィックを傍受し、秘密を抽出できます。TEE は、信頼の境界をハードウェア自体の中へ移すことでこれに対処します。
仕組み
TEE はエンクレーブ — ハードウェアレベルで暗号化されアクセス制御された、保護されたメモリと実行の領域 — を作ります。一般的なプロセスは次のように機能します。
- エンクレーブの作成。 プログラムがプロセッサに安全なエンクレーブの作成を要求します。プロセッサは、マシン上の他のすべてのソフトウェアからアクセスできない暗号化されたメモリの領域を割り当てます。
- コードのロード。 保護されるべきアプリケーションのコードとデータがエンクレーブにロードされます。プロセッサはロードされたコードを測定(ハッシュ化)して、何が正確にロードされたかのフィンガープリントを作ります。
- 密閉された実行。 コードがエンクレーブ内で実行されます。エンクレーブのメモリ内のすべてのデータはプロセッサによって暗号化されます。攻撃者がマシンへの物理的アクセスを持ち RAM チップを直接読んだとしても、暗号化されたデータしか見えません。
- アテステーション。 TEE はアテステーションレポート — ハードウェアによって署名された暗号的な証明で、「この特定のコードが本物のハードウェア上の本物の TEE 内で実行されており、その測定値はこのハッシュと一致する」と述べるもの — を生成します。リモートの当事者(ユーザー、スマートコントラクト、検証者)はアテステーションを検証して、エンクレーブが本物で期待されたコードが実行されていることを確認できます。
- 結果の配信。 エンクレーブは出力を生成し、要求する当事者向けにそれを暗号化できます。マシンの運用者は、平文の入力、内部の状態、出力を決して見ません。
アテステーションが鍵となる性質
アテステーションがなければ、TEE は単なるセキュリティの主張にすぎません。アテステーションがそれを検証可能にします。分散型 AI プロジェクトが TEE を使うとき、アテステーションレポートは機密の実行が実際に行われたというエビデンスです。アテステーションレポートはスマートコントラクトによってオンチェーンで検証でき、ハードウェアレベルのプライバシーとブロックチェーンレベルの検証可能性の間にリンクを生み出します。
主要な TEE 実装
いくつかのハードウェアメーカーが TEE 技術を提供しており、それぞれ異なるアーキテクチャと信頼の前提を持ちます。
| 実装 | メーカー | スコープ | 備考 |
|---|---|---|---|
| Intel SGX | Intel | アプリケーションレベルのエンクレーブ | 個々のアプリケーションを保護;エンクレーブのメモリが限られる;広く研究され実戦で試されている |
| Intel TDX | Intel | VM レベルの隔離 | 仮想マシン全体を保護;SGX より大きなメモリをサポート;より新しい技術 |
| AMD SEV / SEV-SNP | AMD | VM レベルの隔離 | VM のメモリ全体を暗号化;SNP は整合性の保護を追加;クラウドの提供物で使われる |
| ARM TrustZone | ARM | システムレベルの分離 | プロセッサを「セキュアワールド」と「ノーマルワールド」に分ける;モバイルデバイスや IoT で広く使われる |
| NVIDIA Confidential Computing | NVIDIA | GPU レベルの隔離 | 機密コンピューティングを GPU のワークロードに拡張;AI 推論とトレーニングに重要 |
AI ワークロードにとって、GPU レベルの TEE サポートは特に重要です。AI モデルが主に CPU ではなく GPU 上で実行されるためです。NVIDIA の機密コンピューティングの拡張は、モデル推論を GPU 自体の TEE 内で実行できるようにし、GPU で加速された計算の間にモデルの重みと入力データを保護します。
なぜ TEE がクリプト AI にとって重要か
TEE は、他のプライバシー技術がまだ規模をもって対処できない実務的な問題を解決します。すなわち、許容可能なパフォーマンスで信頼できないハードウェア上で大規模な AI モデルを実行することです。
機密の AI 推論
クリプト AI における主要なユースケースは**機密の推論**です。分散型推論ネットワークはユーザーのリクエストを GPU 提供者とマッチングします。TEE がなければ、GPU 提供者はユーザーの入力、モデルの重み、出力を見られます。TEE があれば、推論はハードウェアで密閉されたエンクレーブ内で実行されます — 提供者はハードウェアを提供しますが、計算にアクセスできません。
これは、信頼不要の環境では他の方法では不可能だったシナリオを可能にします。
- ユーザーは、コンピューティング提供者に見られることなく、機密性の高い金融データを AI 分析のために提出できます。
- モデルの所有者は、モデルの盗難のリスクなしに、独自のモデルを第三者の GPU にデプロイできます。
- AI エージェントは、データを機密に保ちながら、オンチェーンワークフローの一部としてプライベートなユーザーデータを処理できます。
アテステーションを通じた検証可能な AI
TEE のアテステーションは、特定のモデルが保護された環境内で実行されたという検証可能な証明を生み出します。このアテステーションがオンチェーンに投稿されると、AI 計算が機密性の保証を伴って実行されたというエビデンスを提供します。検証可能な AI の文脈では、TEE のアテステーションはゼロ知識証明ほど数学的に厳密ではありませんが、大規模なモデルにははるかに実用的です — TEE は数十億のパラメータを持つモデルをほぼネイティブの速度で実行できる一方、ZK ベースの検証は現在小さなモデルに限られています。
信頼モデル
重要な区別:TEE のセキュリティはハードウェアメーカーを信頼することに依存します。メーカーの実装にバグやバックドアがあれば、セキュリティの保証は崩れます。これは、保証が数学的でいかなるハードウェアベンダーにも依存しない ZK 証明とは根本的に異なります。Intel SGX に対するいくつかのサイドチャネル攻撃がセキュリティ研究者によって実証され、パッチと改善された設計につながってきました。TEE のセキュリティは進化する分野であり、ハードウェアメーカーへの信頼の前提は無視するのではなく理解されるべきです。
DecAIHub プロジェクトカードでの表示箇所
TEE 関連の機能はいくつかのフィールドに現れます。
- AI component — 「TEE-based inference」、「confidential execution」、「attested model serving」といった値は TEE の利用を示します。
- Evidence 表 — TEE の Tier-1 エビデンスには、アテステーションの検証ログ、使われた TEE 実装のドキュメント、公開されたセキュリティ監査、オンチェーンのアテステーション検証コントラクトが含まれます。
- 検証メカニズム — プロジェクトが(ZK やコンセンサスベースの検証ではなく)検証可能な AI へのアプローチとして TEE を使うとき、これはプロジェクトの説明や AI component フィールドに記されます。
TEE は、第三者のハードウェア上での機密のモデル実行が中核的な要件である AI/推論 と AI/コンピューティング のカテゴリのプロジェクトでよく見られます。
TEE が証明しないこと
- TEE のアテステーションはコードが本物のエンクレーブ内で実行されたことを証明します — それはコード自体が正しい、安全である、あるいは主張どおりのことをすることを証明しません。エンクレーブのコードのバグは TEE 内のバグです。
- TEE は AI モデルが良い、偏りがない、あるいは正確であることを証明しません。実行の機密性と整合性を証明するのであって、モデルの品質を証明するのではありません。
- TEE は分散化を証明しません。単一の提供者が TEE で保護されたワークロードを実行できます。分散化はネットワークのアーキテクチャから来るのであって、TEE 自体から来るのではありません。
- TEE はハードウェアがすべての攻撃に対して免疫であることを証明しません。サイドチャネル攻撃、ファームウェアの脆弱性、サプライチェーンのリスクは依然としてセキュリティ研究の活発な領域です。
- TEE は誰かを信頼する必要性を排除しません — それは信頼をコンピューティング提供者からハードウェアメーカーへ移します。これは信頼の対象面の大幅な縮小ですが、完全な信頼不要ではありません。
混同しないでください
- ZK(ゼロ知識証明) — ZK は計算の整合性とプライバシーの数学的な保証を提供します。TEE はハードウェアベースの保証を提供します。両者は検証可能な AI に使えますが、異なる信頼モデルとパフォーマンス特性を持ちます。
- プライバシー — プライバシーはより広い目標であり、TEE はそれを達成する一つのメカニズムです。他のプライバシーメカニズムには ZK 証明、MPC、準同型暗号があります。
- 暗号化 — データの暗号化は、保管時または転送中のデータを保護します。TEE は計算中(使用中)のデータを保護します。これらは補完的であり、置き換え可能ではありません。
- 仮想マシン/コンテナ — VM とコンテナはワークロード間のソフトウェアレベルの隔離を提供しますが、インフラの運用者に対しては保護しません。TEE は運用者に対して保護するハードウェアレベルの隔離を提供します。
- Secure enclave(製品名として) — Apple の「Secure Enclave」は Apple のデバイスにおける特定の実装です。TEE エンクレーブの一般的な概念はより広く、メーカーをまたいで適用されます。
よくある質問
TEE は暗号化とどう違いますか?
暗号化は、データが保管されている(at rest)とき、または送信されている(in transit)ときにそれを保護します。TEE はデータが処理されている(in use)間にそれを保護します。標準的な暗号化は、計算の前にデータが復号される必要があり、それが計算を実行する者にデータを露出させます。TEE はデータをメモリ内で暗号化されたまま保ち、ハードウェアで密閉されたエンクレーブ内で処理するため、データはエンクレーブの外で平文で露出することは決してありません — マシンの運用者にさえも。TEE と暗号化は補完的です。データは TEE への転送中に暗号化され、その中で機密に処理され、結果はユーザーへの転送中に暗号化されます。
TEE はハッキングされることがありますか?
TEE の実装はセキュリティ研究の対象になっており、いくつかのサイドチャネル攻撃が実証されてきました — 特に Intel SGX の初期バージョンに対して。これらの攻撃は通常、タイミングの差、消費電力のパターン、キャッシュの挙動を悪用して、エンクレーブの計算についての情報を推測します。ハードウェアメーカーはファームウェアのパッチとアーキテクチャの改善で応じます。現世代の TEE 実装(Intel TDX、AMD SEV-SNP)は既知の攻撃クラスへの緩和策を組み込んでいます。TEE のセキュリティは絶対ではありませんが、ソフトウェアのみの隔離と比べてハードルを著しく上げます。実務的なリスクは、具体的な TEE 実装、ファームウェアのバージョン、脅威モデルに依存します。
なぜクリプト AI プロジェクトは ZK 証明より TEE を選ぶのでしょうか?
主な理由はパフォーマンスです。TEE は大規模な AI モデル(数十億のパラメータを持つモデルを含む)を、ハードウェアの隔離による最小限のオーバーヘッドで、ほぼネイティブの速度で実行できるようにします。ZK ベースの検証(zkML)は現在、モデルを数学的な回路に変換して暗号的な証明を生成する必要があり、桁違いに高コストで小さなモデルに限られます。TEE は、信頼できないハードウェア上の機密性のある AI のための、今日の実用的でデプロイ可能なソリューションを提供します。トレードオフはハードウェアメーカーへの信頼の前提であり、ZK 証明はそれを必要としません。
TEE のアテステーションとは何ですか?
アテステーションは、TEE のハードウェアによって生成される暗号的な証明で、次のことを証明します。この特定のコードが、この特定の測定値(ハッシュ)を伴って、本物のハードウェア上の本物の TEE エンクレーブ内で実行されている、と。アテステーションはメーカーによってハードウェアに埋め込まれた鍵で署名されます。リモートの当事者は、メーカーの信頼の根(root of trust)に照らしてアテステーションを検証し、エンクレーブが本物であることを確認できます。クリプト AI では、アテステーションレポートはスマートコントラクトによってオンチェーンで検証でき、ハードウェアレベルのセキュリティとブロックチェーンレベルの透明性の間に検証可能なリンクを生み出します。
外部リンク
- Confidential Computing Consortium — TEE ベースの機密コンピューティングの標準を定義し、業界全体での採用を推進する Linux Foundation のプロジェクト。
- Intel SGX Developer Reference — 最も広く使われている TEE 実装の一つ、Intel の Software Guard Extensions の技術ドキュメント。
- ARM TrustZone Technology — モバイルデバイスとエッジコンピューティングで使われる ARM の TEE 実装の概観。
No comments to display
No comments to display