インテルのトラステッドプラットフォームモジュールをプログラムすることは可能ですか?

StackOverflow https://stackoverflow.com/questions/8412868

質問

TPMをプログラムできるかどうか疑問に思っています( http://en.wikipedia.org/wiki/Trusted_Platform_Module )は、次のような方法で、ほとんどのIntelチップに存在します。 ジェネラコディセタグプレ

明らかに、動作を開始した後は再プログラム可能であってはなりません(このステートメントが正しいかどうか知っていますか?)。

役に立ちましたか?

解決

TPMの動作は、Trusted ComputingGroupによって発行された仕様によって定義されます。 TPMは指定どおりに動作する必要があるため、適切に実装されたTPMの機能を変更することはできません。 TPMの製造元は、出荷後に製品を更新する機能が制限されています。たとえば、インフィニオンはデバイスのファームウェアアップデートを提供しています。

ただし、IntelTPMは異なる場合があります。一部のチップセットには、実際のハードウェアTPMではなくエミュレート/ソフトウェアTPMが含まれていました。これらのTPMは、BIOSアップデートで更新できます。ただし、この場合も、アップデートはIntelから提供される必要があります。 DQ67SWのような最近のボードには、Intel製ではないスタンドアロンのハードウェアTPMがあります。

つまり、2番目の質問に対する答えは次のとおりです。いいえ、TPMが使用する暗号化アルゴリズムをプログラム/定義することはできません


最初の質問について:はい、永続ストレージに何を格納するかをある程度定義できます。このメモリ領域は、不揮発性ストレージまたは NV と呼ばれます。最初に TPM_NV_DefineSpace コマンドを使用してスペースを定義する必要があります。その後、 TPM_NV_ReadValue TPM_NV_WriteValue を使用して、その場所との間で読み取りと書き込みを行うことができます。定義すると、NVに特定の量のメモリが予約され、この場所のセキュリティ属性も設定されます。これらのコマンドは低レベルのTPMコマンドであるため、トラステッドソフトウェアスタック(TSS)を使用してTPMをインターフェイスすることを強くお勧めします。 jTSS jTpmTools または TrouserS 。

NVに関する注意事項:

  • NVのスペースは非常に限られていますが、正確な量はベンダー固有です(通常は5kb未満)。 PCプラットフォームの最小量は2048バイトです。
  • TPMはパッシブデバイスであり、コマンドを発行しないと何もできません。 TPMに何かを保存する場合は、それらのコマンドを発行するアクティブな部分(BIOS、ソフトウェア、チップセット、CPU)が必要です。
  • ほとんどの暗号化キーでさえ、TPM内に保存されていません。キー階層があり、ルートキー(ストレージルートキー-SRK)のみがTPMに格納されます。他のすべてのキーは、暗号化された方法で外部に保存されます。

他のヒント

TPMはプログラム可能ではありません。サポートされているアルゴリズムの固定セットがあります。コードはROMに保存されます(そうでない場合は、ある程度改ざんされないパッケージ内にあるEEPROMに保存され、上書きすることはできません)。

TPMは、さまざまな管理役割を定義します。初めて使用するときに、管理者パスワードを設定します(または、ソフトウェアが自動的に設定します。その場合は、これらのパスワードを慎重にバックアップする必要があります)。 TPMを受け取ったときの状態がわからない場合は、「工場出荷時のデフォルト」にリセットできます(既存のすべてのキーと資格情報をクリアします)。これはTPMのクリアと呼ばれ、通常はBIOSから実行されます。

TPMによって保存および使用されるさまざまな資格情報の概要は、資格情報プロファイル。通常のライフサイクルの一部であるキーに加えて、独自のキーをインポートし、TPMのRNGを使用してエクスポートできないキーを作成できます。

標準の TPMプロテクションプロファイルがあります。 IntelのTPMがそれに関して評価されているかどうかはわかりません。図1は、キーを生成できる時期を示すTPMライフサイクルの図です。

実際には、おそらく TrouSerS (完全にオープンソースのTPM API)を介してTPMと対話します。 、またはWindowsのBitlockerを介して限定的に。

はい。TPMチップは、まさにこの種の操作などに使用できます。

TrouSerS スタックは、使用に必要なトラステッドコンピューティングソフトウェアスタックのオープンソース実装です。TPMチップを確実に。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top