23.2. 信頼できる鍵および暗号化された鍵
信頼できる鍵 および 暗号化鍵 は、システムセキュリティーを強化する上で重要な要素です。
信頼できる鍵と暗号化された鍵は、カーネルキーリングサービスを使用するカーネルが生成する可変長の対称鍵です。たとえば、Extended Verification Module (EVM) が実行中のシステムの整合性を検証および確認できるように、キーの整合性を検証できます。ユーザーレベルのプログラムがアクセス可能なのは、暗号化された ブロブ の形式での鍵のみです。
- 信頼できる鍵
信頼できる鍵は、鍵の作成と暗号化 (保護) の両方に使用される Trusted Platform Module (TPM) チップを必要とします。各 TPM には、ストレージルートキーと呼ばれるマスターラッピングキーがあります。これは TPM 自体に保存されます。
注記RHEL 9 は TPM 2.0 のみをサポートします。TPM 1.2 を使用する必要がある場合は、RHEL 8 を使用してください。詳細は、Red Hat ナレッジベースソリューション Is Trusted Platform Module (TPM) supported by Red Hat? を参照してください。
TPM 2.0 チップのステータスを確認できます。
$ cat /sys/class/tpm/tpm0/tpm_version_major 2
TPM 2.0 チップを有効にし、マシンのファームウェアの設定を通じて TPM 2.0 デバイスを管理することもできます。
さらに、TPM の platform configuration register (PCR) 値の特定セットを使用して、信頼できる鍵を保護できます。PCR には、ファームウェア、ブートローダー、およびオペレーティングシステムを反映する整合性管理値のセットが含まれます。PCR でシールされたキーは、暗号化されたシステム上の TPM によってのみ復号化できます。ただし、PCR でシールされた信頼できるキーをキーリングにロードすると、それに関連付けられた PCR 値が検証されます。検証後、新しいカーネルの起動をサポートするためなどに、新しい PCR 値または将来の PCR 値でキーを更新できます。また、単一のキーを、それぞれ異なる PCR 値を持つ複数のブロブとして保存することもできます。
- 暗号化鍵
- 暗号化鍵はカーネル Advanced Encryption Standard (AES) を使用するため、TPM を必要としません。これにより、暗号化鍵は信頼できる鍵よりも高速になります。暗号化鍵は、カーネルが生成した乱数を使用して作成され、ユーザー空間のブロブへのエクスポート時に マスターキー により暗号化されます。
マスターキーは信頼できる鍵か、ユーザーキーのいずれかです。マスターキーが信頼されていない場合、暗号化されたキーのセキュリティーは、暗号化に使用されたユーザーキーによって決まります。