web-dev-qa-db-ja.com

3つの主要な機能グループを持つTPM

これについては少し不明確です(強いとマークされています):

「公開鍵認証機能は、ハードウェア乱数ジェネレーターを使用したオンチップキーペアの生成と、公開鍵の署名、検証、暗号化、および復号化を提供します。チップで秘密鍵を生成し、転送されるたびに暗号化するチップの外ではTPMは悪意のあるソフトウェアがキーにまったくアクセスできないことを保証します。キーは暗号化されていないチップの外には決して見えないため、キーの所有者でさえ秘密キーをフィッシングやファーミング攻撃に渡すことはできません。悪意のあるコードがTPMの秘密キーを使用する可能性があるため、悪意のあるコードがキーを使用できないようにするために、何らかの方法を提供する必要があります。

「整合性測定機能は、悪意のあるコードによるアクセスから秘密鍵を保護する機能を提供します。信頼されたブートでは、チップは、ブートシーケンス全体を通じてプラットフォーム構成レジスタ(PCR)のハッシュに構成情報のハッシュを格納します。ブートされると、データ(秘密鍵など)はPCRで「封印」できます。封印されたデータは、PCRが封印時と同じ値である場合にのみ封印解除できます。したがって、代替システムを起動しようとすると、または、ウイルスがオペレーティングシステムを「バックドア」し、PCR値が一致せず、開封が失敗するため、悪意のあるコードによるアクセスからデータが保護されます。 "

"認証機能は、PCRにコミットされたすべてのソフトウェア測定値のリストを保持し、TPMだけが知っている秘密鍵でそれらに署名できます。したがって、信頼できるクライアントは、そのソフトウェアが第三者であることを証明できます。侵害されたか、または侵害されていない。 "

それぞれの小さな例を教えてください。ありがとう

1
user180095

tPMは、悪意のあるソフトウェアがキーにまったくアクセスできないことを保証します。鍵は暗号化されていないチップの外には見えないので、鍵の所有者でさえ秘密鍵をフィッシングやファーミング攻撃に渡すことはできません。

TPMでは、これらの秘密キーをエクスポートすることはできません。キーは、TPMにboundであると言われています。つまり、これらのキーのいずれかを使用して署名する唯一の方法は、コンピューターを使用してTPMに要求を送信することです。これらのキーを利用しようとする攻撃者は、コンピュータにアクティブにアクセスする必要があります。正当なユーザー(だまされた可能性があります)の協力があっても、キーのコピーを作成してオフラインで使用することはできません。

パッシブ攻撃を防止することは、攻撃者がコンピューターの足場を取得して維持する必要があることを意味し、検出される可能性が高くなります。また、管理者が攻撃者のバックドアを見つけて閉じると、攻撃者はキーにアクセスできなくなります。すでに生成した署名を使用することはできますが、新しい署名を新しいデータにすることはできません。 (もちろん、キーを否認するのが最善です。)

起動すると、データ(秘密鍵など)をPCRで「封印」できます。封印されたデータは、PCRが封印時と同じ値である場合にのみ封印解除できます。

データの封印とは、特定のキーを使用してデータを暗号化(および場合によっては認証)することです。封印されたデータがある場合、データを回復する唯一の方法は、データの封印に使用されたキーを取得することです。この段落で説明するキーは TPMにバインドされたキーとPCR値から派生した(= /// =) で、どこにも保存されていません¹。派生キーを見つける唯一の方法は、同じ入力で同じキー派生アルゴリズムを使用することです。入力の1つはTPMにバインドされたシークレットであるため、TPMの外部で同じキーを派生させることはできません。別の入力はPCR値であり、TPMはPCRの現在の内容を使用してキー導出を実行するだけなので、プラットフォームが同じ状態(PCR値で定義されている)でない限り、同じキーを導出することはできません。 。

アテステーション機能は、PCRにコミットされたすべてのソフトウェア測定値のリストを保持し、TPMだけが知っている秘密鍵でそれらに署名できます。したがって、信頼できるクライアントは、ソフトウェアが侵害されているかどうかを第三者に証明できます。

PCRにはソフトウェア測定値が含まれています。これは基本的に、コンピューター(BIOS、ブートローダー、OSカーネルなど)で実行されるコードイメージのハッシュを意味します。 PCRに特定の値がある場合、これはコンピューターが特定のコードイメージを実行していることを証明します(PCRが不正確または不完全になる原因となった可能性のあるソフトウェアまたはハードウェアにバグがないと仮定します)。 TPMは、証明書を生成できます。これは、PCR値と追加データを含む署名付きメッセージです。署名鍵はTPMにバインドされています。有効な署名を持つ証明書が与えられた場合、これは、PCRが特定の値を持っていたときに、秘密鍵を所有するTPMを備えたコンピューターで署名が行われたことを保証します。

¹ バックアップ用にエクスポートされていない限り。署名キーとは異なり、暗号化キーは実際にはデバイスにバインドされていないことがよくあります。デバイスが破損した場合にデータを回復する方法が必要だからです。