Skip to main content
QUICK REVIEW

[論文レビュー] Blockchain and Trusted Computing: Problems, Pitfalls, and a Solution for Hyperledger Fabric

Yandamuri, Sravya, Abraham, Ittai|arXiv (Cornell University)|May 22, 2018
Security and Verification in Computing参考文献 34被引用数 97
ひとこと要約

本稿では、非最終的コンセンサスブロックチェーンに内在するロールバック攻撃およびステート継続性の問題に対処する、Intel SGXエナclave内でのスマートコントラクト実行のセキュアなアーキテクチャを提案する。各アプリケーションを専用エナclaveに隔離し、エナclaveステートが最終的ブロックのみを反映するようにすることで、ネイティブパフォーマンスの80–90%を達成しつつ、最小限の信頼計算基盤(TCB)を実現し、企業向けブロックチェーンワークロードにおける強力なプライバシーを実現する。

ABSTRACT

A smart contract on a blockchain cannot keep a secret because its data is replicated on all nodes in a network. To remedy this problem, it has been suggested to combine blockchains with trusted execution environments (TEEs), such as Intel SGX, for executing applications that demand privacy. Untrusted blockchain nodes cannot get access to the data and computations inside the TEE. This paper first explores some pitfalls that arise from the combination of TEEs with blockchains. Since TEEs are, in principle, stateless they are susceptible to rollback attacks, which should be prevented to maintain privacy for the application. However, in blockchains with non-final consensus protocols, such as the proof-of-work in Ethereum and others, the contract execution must handle rollbacks by design. This implies that TEEs for securing blockchain execution cannot be directly used for such blockchains; this approach works only when the consensus decisions are final. Second, this work introduces an architecture and a prototype for smart-contract execution within Intel SGX technology for Hyperledger Fabric, a prominent platform for enterprise blockchain applications. Our system resolves difficulties posed by the execute-order-validate architecture of Fabric and prevents rollback attacks on TEE-based execution as far as possible. For increasing security, our design encapsulates each application on the blockchain within its own enclave that shields it from the host system. An evaluation shows that the overhead moving execution into SGX is within 10%-20% for a sealed-bid auction application.

研究の動機と目的

  • TEEベースのブロックチェーン実行におけるロールバック攻撃という重要な問題に取り組むこと、特に非最終的コンセンサスを採用するシステムにおいて。
  • Intel SGXエナclave内でのスマートコントラクト実行において、ステートの継続性と機密性を保証すること。
  • 各アプリケーションを個別のエナclaveに隔離することで、信頼計算基盤(TCB)を最小限に抑え、攻撃表面を削減すること。
  • 最終的コンセンサスを採用する企業向けブロックチェーン上で、実用的かつプライバシー保護されたスマートコントラクト実行を可能にすること。
  • 実世界の密封入札オークションユースケースを用いて、提案手法のパフォーマンスオーバーヘッドを評価すること。

提案手法

  • 各アプリケーションが別個の隔離エナclaveで実行されるように、Hyperledger Fabric上でのIntel SGXエナclave内でのスマートコントラクト実行を実現するプロトタイプを設計する。
  • ロールバック攻撃を防止するため、エナclaveへの入力としてブロックチェーンの最終的かつコミット済みステートを用いることで、ステートの継続性を維持する。
  • コンセンサスの最終的確定後にのみトランザクション結果を処理するようにすることで、エナclave実行をFabricのexecute-order-validateアーキテクチャと統合する。
  • エナclaveに含めるコードを必須のものに限定し、完全なブロックチェーンノードロジックを除外することで、TCBを最小限に抑える。
  • ステート更新および暗号化操作のための、ブロックチェーンピアとエナclave間の安全な通信チャネルを実装する。
  • パフォーマンスオーバーヘッドとセキュリティ保証を測定するために、密封入札オークションワークロードを用いてプロトタイプを評価する。

実験結果

リサーチクエスチョン

  • RQ1Intel SGXのような信頼実行環境は、非最終的コンセンサスプロトコルを採用するブロックチェーンプラットフォームと安全に統合可能か?
  • RQ2下位のブロックチェーンがフォークする可能性がある状況下で、TEEベースのスマートコントラクト実行におけるロールバック攻撃をどのように防止できるか?
  • RQ3ブロックチェーン実行における機密性と正しさを保持しつつ、信頼計算基盤を最小限に抑えるアーキテクチャパターンは何か?
  • RQ4Hyperledger Fabricのような企業向けブロックチェーンプラットフォーム上で、SGXエナclave内でのスマートコントラクト実行がパフォーマンスにどの程度影響を与えるか?
  • RQ5SGXエナclave内でのアプリケーションレベルの隔離は、TEE内での完全なブロックチェーンノード実行を必要とせずに、強力な機密性を提供可能か?

主な発見

  • 提案アーキテクチャは、エナclaveステートが常に最終的かつコミット済みブロックチェーンステートと同期されていることで、ロールバック攻撃を効果的に防止する。
  • 密封入札アプリケーションを用いた測定により、SGXエナclave内でのスマートコントラクト実行のパフォーマンスオーバーヘッドは、保護されていない実行と比較して10%–20%の範囲に収まる。
  • 各アプリケーションを個別のエナclaveに隔離することで、信頼計算基盤が著しく縮小され、セキュリティが向上し、攻撃表面が削減される。
  • コンセンサスの最終的確定後にエナclave実行を遅延させる設計により、Hyperledger Fabricのexecute-order-validateモデルと完全に互換性がある。
  • プロトタイプは、許容可能なパフォーマンスオーバーヘッドを伴いながらも、強力なプライバシー保証を達成できることを示しており、企業向けブロックチェーンユースケースにおけるTEEベース実行の実現可能性を裏付けている。
  • 本手法は、非最終的コンセンサスを採用するイーサリアムやビットコインのようなパブリックブロックチェーンには直接適用できない。これは、非最終的コンセンサスが本質的にTEE内でのステート継続性を損なうからである。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。