
TEE再び注目:プライバシー技術の発展におけるジレンマの中での新たな光?
TechFlow厳選深潮セレクト

TEE再び注目:プライバシー技術の発展におけるジレンマの中での新たな光?
MPCおよびZK技術が性能や技術面で直面している課題に対して、TEEはどのような変革をもたらすことができるのか?
執筆:LINDABELL
プライバシー保護のニーズが高まるにつれ、TEE(Trusted Execution Environment)は再び注目を集めています。数年前にも議論されましたが、ハードウェアのセキュリティ問題により広範な採用には至っていませんでした。しかし、MPCやZK技術がパフォーマンスや技術的要件の面で課題に直面している現在、多くの研究者や開発者が改めてTEEに注目しています。
このトレンドは、Twitter上で「TEEがZK技術を置き換えるのか」という議論を巻き起こしました。一部のユーザーは、TEEとZKは異なる課題に対応するため補完関係にあり、競合関係ではないと指摘します。また、AWSやIntelが提供するセキュリティは、Rollupのマルチシグ保護よりも高いという意見もあります。TEEは設計空間において拡張性に優れており、これはZKでは実現できない利点です。このようなトレードオフは価値があると言えるでしょう。
TEEとは何か?
TEEは決して馴染みのない概念ではありません。私たちが日常的に使うiPhoneにも「Secure Enclave」という名のTEE技術が搭載されており、ユーザーの機微情報の保護や暗号化処理の実行を担っています。Secure Enclaveはシステムオンチップ(SoC)に統合され、メインプロセッサから分離されることで高いセキュリティを確保しています。たとえば、Touch IDやFace IDを使用するたびに、生物認証情報はSecure Enclave内で検証され、その情報が外部に漏れないように守られています。
TEE(Trusted Execution Environment:信頼できる実行環境)とは、コンピュータやモバイルデバイス内に設けられた独立した安全領域であり、メインのオペレーティングシステムとは隔離されています。主な特徴は以下の通りです。まず、メインOSが攻撃を受けても、内部のデータや処理は安全に保たれます。次に、ハードウェアサポートと暗号技術により、コードやデータが実行中に改ざんされるのを防ぎます。さらに、機密データは暗号化によって保護され、漏洩を防止します。
現在、代表的なTEEの実装方法には以下のようなものがあります:
-
Intel SGX:ハードウェア支援による分離された実行環境を提供し、機密データやコードを保護する安全なメモリ領域(enclave)を作成します。
-
ARM TrustZone:プロセッサ内に「セキュアワールド」と「ノーマルワールド」を分けており、前者で機密操作を、後者で通常のタスクを処理します。
-
AWS Nitro Enclaves:AWS Nitro TPMセキュリティチップに基づくクラウド上の信頼できる実行環境で、機密データを扱うクラウドコンピューティング用途に特化しています。
暗号資産分野では、TEEは信頼できる環境でのオフチェーン計算によく利用されます。また、TEEのリモートアテンステーション(Remote Attestation)機能により、リモート側がTEE内で実行されているコードの整合性を検証でき、データ処理の安全性を保証できます。ただし、TEEには非中央集権性の不足という課題もあります。なぜなら、IntelやAWSといった中央集権的なベンダーに依存しているため、これらのハードウェアにバックドアや脆弱性があれば、システム全体のセキュリティが脅かされる可能性があるからです。それでも、構築が容易でコストが低いという点から、高いセキュリティとプライバシー保護を求めるアプリケーションにとって有効な手段です。こうした利点により、プライバシー保護やLayer2のセキュリティ強化など、さまざまな暗号資産アプリケーションへの応用が進んでいます。
TEEプロジェクトの紹介
Flashbots:SGXを通じてプライベート取引と非中央集権的なブロック生成を実現
Flashbotsは2022年から、SGXなどの信頼できる実行環境に関連するプライバシー技術の探索を始め、これを取引供給チェーン上での信頼不要な協働の重要な構成要素として位置づけました。2023年3月、FlashbotsはIntelが開発した信頼できる実行環境SGX enclace内にブロックビルダーを正常に動作させることに成功し、プライベート取引とブロックビルダーの非中央集権化に一歩前進しました。SGX enclaceを利用することで、ブロックビルダーや他のインフラストラクチャ提供者はユーザーの取引内容を閲覧できず、またenclave内で検証可能な有効なブロックを生成し、入札額を正しく報告することで、mev-boostの中継者の必要性を排除できる可能性があります。さらに、この技術は排他的な注文フローのリスクを軽減し、取引を秘匿しつつも、enclave内で動作するすべてのブロックビルダーがアクセス可能にします。
確かにTEEは外部リソースへのアクセスとプライバシー保護を提供できますが、非TEE技術に比べるとパフォーマンスは高くありません。また、中央集権的なリスクも存在します。Flashbotsは、TEEだけではすべての問題を解決できないことを認識しており、他のセキュリティ対策と組み合わせ、さらに別のエンティティを導入してTEEの計算とコードを検証し、システムの透明性と信頼性を確保する必要があると考えています。そのため、Flashbotsは複数のTEEからなるネットワーク(Kettles)と、そのネットワークを管理し、TEE内で実行されるプログラムをホストする無許可型の信頼できるパブリックチェーン(SUAVE Chain)を構想しました。これがSUAVEの基本的なアイデアです。
SUAVE(Single Unified Auction for Value Expression)はMEV関連の課題を解決するインフラストラクチャであり、メモリプールとブロック生成の役割を既存のブロックチェーンから切り離し、独立したネットワーク(ソーティングレイヤー)として、あらゆるブロックチェーンに即時接続可能なメモリプールおよび非中央集権的ブロックビルダーを提供することを目指しています。
(SUAVEの詳細についてはChainFeedsの過去記事をご参照ください)
SUAVEは二段階で展開されます。最初のバージョンであるSUAVE Centauriには、プライベート注文フローオークション(OFA)とSUAVE Devnet(テストネット)が含まれます。このバージョンの実装には暗号技術やTEEは使用しません。第二のバージョンAndromedaでは、信頼できる実行環境(例:SGX)内で実行ノードを動作させます。オフラインで稼働するTEEノード上の計算とコードが期待通りに実行されていることを保証するため、FlashbotsはTEEのリモートアテンステーション機能を利用して、スマートコントラクトがTEEからのメッセージを検証できるようにします。具体的には、Solidityコードにリモート証明を生成する新しいプリコンパイル機能を追加し、SGXプロセッサで証明を生成、オンチェーンで完全に検証を行い、Automata-V3-DCAPライブラリを使ってこれらの証明を検証します。
まとめると、SUAVEはTEEの統合を通じて現在の第三者を代替し、SUAVEシステム内で動作するアプリケーション(注文フローオークションやブロックビルダーなど)はすべてTEE内で実行され、オンチェーンのリモートアテンステーションによってTEEの計算とコードの完全性を保証します。
Taiko:SGXを用いた多重証明システムRaikoの構築
TEEの概念はRollupにも拡張され、多重証明システムを構築できます。多重証明とは、一つのブロックに対して複数種類の証明を生成することを意味し、イーサリアムのマルチクライアントモデルに似ています。この仕組みにより、ある証明に脆弱性があっても、他の証明が有効である限り、システム全体の安全性が保たれます。
多重証明の仕組みでは、証明を生成したいユーザーは誰でもノードを起動し、取引やすべての状態アクセスのMerkle証明などのデータを抽出できます。これらのデータを使って異なるタイプの証明を生成し、すべての証明をスマートコントラクトに提出します。スマートコントラクトは証明の正当性を検証します。TEEによって生成された証明については、ECDSA署名が予定されたアドレスによって署名されているかどうかを確認します。すべての証明が検証され、ブロックハッシュが一致すれば、そのブロックは「証明済み」とマークされ、オンチェーンに記録されます。
TaikoはIntel SGX技術を活用して、Taikoおよびイーサリアムのブロックを検証するための多重証明システムRaikoを構築しています。SGXを利用することで、重要なタスクを実行する際のデータプライバシーとセキュリティを確保でき、仮に潜在的な脆弱性が存在しても、TEEが追加の保護を提供し、攻撃者が証明システムを破壊するのを防ぎます。SGX証明は単一のコンピュータ上で数秒で完了し、証明生成の効率に影響を与えません。また、Taikoは顧客プログラムをZKおよびTEEの両方で実行可能な形式にコンパイルできる新アーキテクチャを導入し、ブロックの状態遷移の正確性を保証するとともに、ベンチマークテストとモニタリングで性能と効率を評価しています。
TEEには多くの利点がありますが、実装には依然課題があります。例えば、SGXの設定には複数のクラウドプロバイダーに対応するCPUが必要であり、検証時のGasコストの最適化も求められます。また、計算とコードの正確性を検証するための安全な通信路の確立も必要です。これらの課題を解決するために、TaikoはGramine OSを使用してアプリケーションを信頼できるenclave内にカプセル化し、使いやすいDockerおよびKubernetes設定を提供することで、SGX対応CPUを持つユーザーであれば誰でも簡単にアプリケーションを展開・管理できるようにしています。
Taikoのアナウンスによると、Raikoは現在SP1、Risc0、SGXをサポートしており、JoltおよびPowdrとの統合も進めています。今後、より多くのRiscv32 ZK-VMの統合、Wasm ZK-VMの拡張、Rethとの直接統合によるリアルタイムブロック証明、モジュラー構造によるマルチチェーンブロック証明のサポートなどを計画しています。

Scroll:Automataと共同でTEE Proverを開発
Scrollの多重証明メカニズムは、三つの目標を達成することを目指しています。すなわち、L2のセキュリティ強化、最終性時間の増加なし、そしてL2取引に対する限界的なコストの追加です。そのため、ZK証明に加えて補助的な証明方式を選ぶ際、Scrollは最終性と費用対効果を慎重に考慮しました。不正証明(Fraud Proof)はセキュリティが高いものの、最終性時間が長すぎます。zkEVMバリデーターは強力ですが、開発コストが高く複雑です。最終的に、ScrollはJustin Drakeが提唱したTEE Proverを補助証明方式として採用しました。
TEE Proverは保護されたTEE環境で動作し、取引を迅速に実行して証明を生成するため、最終性時間を増加させません。また、もう一つの重要な利点はその効率性です。関連するオーバーヘッドは無視できるレベルです。

現在、Scrollはモジュラー型証明レイヤーのAutomataと協力して、Scroll向けのTEE Proverを開発中です。Automataは、TEEコプロセッサを通じてマシンレベルの信頼をイーサリアムまで拡張することを目指すモジュラー型検証レイヤーです。ScrollのTEE Proverは、オンチェーンとオフチェーンの二つの主要コンポーネントから構成されています:
-
SGX Prover:オフチェーンコンポーネントで、enclave内で動作し、enclave内のブロック実行後のステートルートが既存のステートルートと一致するかをチェックし、その後SGX Verifierに実行証明(PoE)を提出します。
-
SGX Verifier:L1チェーンにデプロイされたスマートコントラクトで、SGX Proverが提示したステートトランジションと、Intel SGX enclaveが提出した証明レポートの正当性を検証します。
SGX Proverは、L1に提出されたソータのトランザクションバッチを監視し、ステートトランジション実行時に使用されるデータが完全かつ改ざんされていないことを保証します。その後、SGX Proverはすべての必要な情報を含むブロック証明(PoB)を生成し、すべての検証および実行ノードが同じデータセットを使用することを確保します。実行後、SGX ProverはL1に実行証明(PoE)を提出します。その後、SGX VerifierはPoEが有効なSGX Proverによって署名されたかを検証します。
SGX ProverはRustで記述されており、スマートコントラクトのEVMエンジンとしてSputnikVMを使用しています。この実装はSGXハードウェアモードをサポートするマシンでコンパイル・実行可能であり、非SGX環境でもデバッグが可能です。一方、SGX VerifierはAutomataがオープンソースで提供するDCAP v3検証ライブラリを使用しており、Scrollテストネットの全ブロック履歴の検証が可能です。
また、TEEの実装やハードウェアメーカーに対する信頼問題を軽減するため、Scrollは異なるハードウェアやクライアントからのTEE Proverを集約するプロトコルの研究も進めています。このプロトコルはしきい値署名スキームを組み合わせます。しきい値署名スキームは、複数の参加者が共同で署名を生成する暗号技術であり、特定の数以上の参加者が合意した場合のみ署名が有効になります。具体的には、TEE ProverはN個のTEE証明者のうち、少なくともT個の証明者が一貫した証明を生成する必要があります。

Automata:TEEコプロセッサでブロックチェーンのセキュリティとプライバシーを強化
Automata Networkはモジュラー型検証レイヤーであり、ハードウェアを共通のRoot of Trustとして利用し、TEEバリデーターに基づくマルチバリデーターシステム、RPCリレーにおける公平性とプライバシー、暗号化enclave内でのブロック構築など、多くのユースケースを実現しています。
前述のように、Scrollの多重証明システムはAutomataとの協業で開発されています。それ以外にも、AutomataはTEEコプロセッサをEigenLayerメインネットに導入したMulti-Prover AVSの一形態としています。TEEコプロセッサとは、特定の計算タスクを実行するハードウェアであり、メインチェーンの能力を補完または拡張するために使用されます。Automata NetworkのTEEコプロセッサは、TEEで隔離された領域内で安全な計算を実行することで、ブロックチェーンの機能を拡張します。
具体的には、Multi-Prover AVSは、プロトコルごとの要件に応じて複数の独立したバリデーターを調整・管理するタスク制御センターです。各プロトコルは検証が必要なタスクを公開し、長期的な報酬インセンティブによって動機付けられた承諾済みTEE委員会を組織できます。実際に検証を行うノード(オペレーター)はこれらのタスクに登録参加でき、相互に協力してセキュリティを確保します。また、トークンを保有しプロトコルのセキュリティを支援したいユーザーはステーカーとなり、信頼できるオペレーターにステーキング権を委任できます。このステーキングは初期段階での経済的安全性を強化し、ステークされた資金が保証として、オペレーターに誠実かつ効率的な作業を促します。EigenLayerは、ステーカー、オペレーター、プロトコルが自由に参加できる無許可市場を創出しています。

Secret Network:SGX技術によるプライバシー保護
プライバシー重視のパブリックチェーンであるSecret Networkは、Secret ContractとTEE技術を通じてデータのプライバシー保護を実現しています。この目的を達成するため、Secret NetworkはIntel SGXの信頼できる実行環境技術を採用しており、ネットワークの一貫性を保つため、Intel SGXチップのみの使用を許可し、他のTEE技術はサポートしていません。
Secret Networkは、SGXセキュアゾーンの完全性と安全性を検証するリモート認証プロセスを採用しています。各フルノードは登録前に認証レポートを作成し、CPUが最新のハードウェアアップグレードを使用していることを証明し、オンチェーンで検証されます。新規ノードがコンセンサス共有鍵を取得すると、ネットワーク内の計算と取引を並列処理できるようになり、ネットワーク全体のセキュリティが確保されます。攻撃ベクトルを最小限に抑えるため、Secret NetworkはSGX-ME(Management Engine)ではなくSGX-SPS(Server Platform Service)を使用しています。
具体的な実装では、Secret NetworkはSGXを用いて、暗号化された入力・出力・状態を持つ計算を実行します。つまり、データのライフサイクル全体を通して常に暗号化された状態が維持され、不正なアクセスを防止します。また、Secret Networkの各検証ノードはIntel SGX対応CPUを使用して取引を処理し、機密データは各検証ノードのセキュアゾーン内でのみ復号され、外部からはアクセスできません。
Oasis:SGXを用いたプライバシー対応スマートコントラクト
プライバシーコンピューティングネットワークOasisはモジュラー型アーキテクチャを採用し、コンセンサス層とParaTimes層にそれぞれコンセンサスとスマートコントラクト実行を分離しています。ParaTimesはスマートコントラクト実行層であり、複数の並列ParaTimeから構成されます。各ParaTimeは共有状態を持つ計算環境を表し、これによりOasisは一つの環境で複雑な計算タスクを、別の環境でシンプルな取引を処理することが可能になります。
ParaTimesはプライバシー対応と非対応の2種類に分けられ、異なるParaTimeは異なる仮想マシンを実行でき、許可制または無許可制に設計可能です。Oasisの核心的価値の一つとして、TEE技術を活用した二種類のプライバシー対応スマートコントラクト「Cipher」と「Sapphire」を提供しています。いずれもIntel SGXのTEE技術を採用しています。暗号化されたデータとスマートコントラクトは一緒にTEEに入り、データは復号されスマートコントラクトによって処理された後、出力時に再び暗号化されます。このプロセスにより、データは処理中も機密性が保たれ、ノード運営者やアプリ開発者に漏れることはありません。違いは、Sapphireがプライバシー対応EVM互換のParaTimeであるのに対し、CipherはWasmスマートコントラクトを実行するプライバシー対応ParaTimeである点です。

Bool Network:MPC、ZKP、TEE技術を融合し、ビットコイン検証のセキュリティと非中央集権化を強化
Bool NetworkはMPC、ZKP、TEEの三技術を融合し、外部検証者クラスタを動的隠蔽委員会(DHC)に改造することで、ネットワークセキュリティを強化しています。
動的隠蔽委員会では、検証プロセス中に外部検証ノードがコンセンサス署名を行う際に秘密鍵が露呈する問題を解決するため、Bool NetworkはTEE技術を導入しています。たとえば、Intel SGX技術を用いて秘密鍵をTEE内にカプセル化し、ノード装置がローカルのセキュアゾーン内で動作するようにします。これにより、システムの他のコンポーネントはデータにアクセスできません。リモートアテンステーションにより、証人ノードは自身がTEE内で動作し鍵を保管していることを証明でき、他のノードやスマートコントラクトはオンチェーンでこれらのレポートを検証できます。
さらに、BOOL Networkは完全なオープンエントリーを採用しており、TEEデバイスを持つ任意の主体がBOOLをステーキングすることで検証ノードになれます。

Marlin:TEEとZKコプロセッサを組み合わせた非中央集権型クラウドコンピューティング
Marlinは、信頼できる実行環境とZKコプロセッサを組み合わせた検証可能計算プロトコルであり、複雑なワークロードを非中央集権型クラウドに委託します。
Marlinは複数のハードウェアタイプとサブネットワークを包含しています。そのTEE技術は主にサブネットワーク「Marlin Oyster」に適用されています。Oysterはオープンプラットフォームで、開発者が信頼できない第三者ホスト上でカスタム計算タスクやサービスを展開できます。Oysterは現在、AWS Nitro TPMセキュリティチップに基づく信頼できる実行環境であるAWS Nitro Enclavesに依存しています。非中央集権化のビジョンを実現するため、Oysterは将来、より多くのハードウェアプロバイダーとの互換性を持つ予定です。さらに、OysterはDAOがスマートコントラクトの呼び出しを通じてenclaveを直接設定でき、特定メンバーがSSHやその他の認証鍵を管理する必要をなくします。この方法は人為的操作への依存を低減します。
Phala Network:TEEに基づく多重証明システムSGX-Prover
Phala Networkは、TEEを通じてデータのプライバシーと安全な計算を実現する非中央集権型のオフチェーン計算インフラです。現在、Phala NetworkはIntel SGXを唯一のTEEハードウェアとしてサポートしています。非中央集権型TEEネットワークに基づき、Phala NetworkはTEEベースの多重証明システム「Phala SGX-Prover」を構築しています。具体的には、オフチェーンモジュールsgx-proverが状態遷移プログラムを実行した後、計算結果を含むTEE Proofを生成し、オンチェーンのsgx-verifierに検証のために提出します。
また、ユーザーがSGXの中央集権化に対する懸念を解消するため、Phala NetworkはGatekeeperとWorkerという二つの役割を導入しています。GatekeeperはPHAトークン保有者がNPoSで選出され、ネットワーク鍵の管理と経済モデルの監督を担当します。WorkerはSGXハードウェア上で動作します。鍵ローテーション機構を導入することで、GatekeepersはTEEネットワークのセキュリティを確保できます。
現在、Phala Networkには世界中のユーザーによって登録・運用されている3万を超えるTEEデバイスがあります。また、Phala NetworkはTEEに基づく高速最終性ソリューションの研究も進めています。理論的には、TEE証明に基づいて高速最終性を実現し、必要に応じてのみZK証明を提供できる可能性があります。
まとめ
Twitter上の議論に対して、UniswapのCEOであるHayden Adamsも見解を示しました。「TEEが受ける否定的な評価は、完璧を求めすぎて良い結果を妨げているように感じられる。どんなものにもトレードオフがある。ブロックチェーンの保護においては、使えるツールが多いほどよい。」
以上のようなユースケースを見ると、TEE技術がプライバシーとセキュリティの課題解決に大きな可能性を持っていることがわかります。たとえば、FlashbotsはTEEでプライベート取引と非中央集権的ブロック生成を実現し、TaikoやScrollはTEEによる多重証明制度でL2取引の安全性を確保しています。しかし、現時点ではほとんどのプロジェクトが単一の中央集権的ベンダーに依存しており、一定のリスクを抱えています。今後は、より多くのハードウェアプロバイダーをサポートし、ノード比率を設定して異なるハードウェア上でノードが動作するようにすることで、特定ベンダーへの過度な依存による中央集権化リスクをさらに低減できるかもしれません。
TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News










