私は現在TPM(Trusted Platform Module)を見ていて、TPMがプラットフォーム認証をどのように提供するのか疑問に思っています。正当なホストがクラウドにデプロイされていると仮定します。 TPMを使用して、接続しているホストが、同じ構成を持つ他のホストではなく、まさにそのホストであることを確認するにはどうすればよいですか?
原則として、そのホストにはTPMが搭載されているため、裏書きキーは一意であるので、EK(裏書きキー)の公開キーで確認できます。たとえば、TPMを使用して、EKの秘密キーでメッセージを暗号化できます。そして、EKの公開鍵でそれを解読します。しかし、ドキュメントを調べたところ、EKの秘密鍵で任意のメッセージを明示的に暗号化するAPIが見つかりませんでした。
では、通常、TPMを使用してこのようなホスト認証を実行するにはどうすればよいでしょうか。
必要なのは リモート認証 (QUOTE操作)です。
これはプライバシーの問題となるため、保証キー(EK)に直接アクセスすることはできません。この一意の識別子を使用してシステムを追跡できます。 EKは、認証IDキー(AIK)と組み合わせて、または直接匿名認証( [〜#〜] daa [〜#〜] )と組み合わせて使用できます。
OpenAttestation Intelのオープンソースソリューションである PrivateCA とこの presentation をご覧になることをお勧めします。
Northoxの発言に対するわずかな修正:リモート認証ではAIKが使用されるため、これが必要です。利用可能なものに応じて、プライバシーCAまたはDAAのいずれかを使用して、適切に認定されたAIKを取得できます。
ただし、この種の使用の場合、AIK証明書は実際には必要ない場合があります。マシンへの物理アクセス(または同等の安全なチャネル)がある場合は、AIKを生成し、その公開キーをエクスポートして使用することができます。それを認証します。