33

ARMにはTrustZoneと呼ばれるものがあります。ARMのドキュメントによると、プロセスはセキュア/非セキュアワールドで実行できます。

  1. セキュア/非セキュアワールドとはどういう意味ですか。プロセッサの実行モードに関連しているのか、それともメモリ領域などの権限の設定に関連しているのか。
  2. ARMの7つの動作モードとセキュア/非セキュアワールドの間に関係はありますか?
  3. ARMでTrustZoneを有効にする方法。
  4. これはどのバージョンのARMから導入されましたか。
  5. このTrustZoneを使用することは必須ですか。LinuxカーネルはこのTrustZone拡張機能を使用しますか?

これを理解するのを手伝ってください。

4

2 に答える 2

34

http://infocenter.arm.com/help/topic/com.arm.doc.prd29-genc-009492c/index.htmlは、少し複雑すぎて十分に説明できないものの概要を説明する、非常に優れた入門書です。テキストボックスに入力します。しかし、私はあなたの直接の質問に以下で答えようとします。

  1. これは、実行モードに直交する追加の特権オプションを指します。セキュアワールドには、セキュアとしてタグ付けされたメモリアクセスを作成する機能がありますが、非セキュアアクセスを作成することもできます。通常の世界では、安全でないアクセスしかできません。さらに、特定のプロセッサ構成オプションは、セキュアワールドにのみアクセスできます。目的は、デバイスのメインオペレーティングシステムまたはアプリケーションソフトウェアでのソフトウェアの悪用に対して(直接)脆弱ではない単純な環境で安全なソフトウェアを分離することです。
  2. 追加の「モニター」モードを追加することを除けば、なし。このモニターモードは、通常の世界と安全な世界の間の「コンテキストスイッチ」に使用されます。
  3. TrustZoneは有効になっておらず、実装されています(または実装されていません)。
  4. TrustZoneは、ARMアーキテクチャバージョン6のセキュリティ拡張機能で導入されました。TrustZoneをサポートする最初のプロセッサはARM1176でした。すべてのCortex-Aプロセッサがそれをサポートしています。
  5. 「いいえ」。ただし、TrustZone対応プロセッサは電源投入時にセキュア状態で実行を開始するため、ブートローダーがセキュリティ状態を変更するために何もしない場合、すべてのソフトウェアはセキュアとして実行されます(セキュリティ上の利点はなくなります)。いいえ、TrustZone環境は、OSに直接統合するのではなく、OSと一緒に実行することを明示的に意図しています。一部のプラットフォームでは、LinuxカーネルがSecure Monitor Callsを実行して、SecureWorldに特定のシステム構成オプションの変更を要求します。
于 2012-09-09T09:18:39.357 に答える