Red Hat Training

A Red Hat training course is available for RHEL 8

10.4. 信頼できる鍵および暗号化された鍵

信頼できる鍵 および 暗号化鍵 は、システムセキュリティーを強化する上で重要な要素です。

信頼できる鍵と暗号化された鍵は、カーネルキーリングサービスを使用するカーネルが生成する可変長の対称鍵です。キーの整合性を検証できます。つまり、実行中のシステムの整合性を検証および確認するために、Extended Verification Module (EVM) などでキーを使用できます。ユーザーレベルのプログラムがアクセス可能なのは、暗号化された ブロブ の形式での鍵のみです。

信頼できる鍵は、鍵の作成と暗号化 (保護) の両方に使用される Trusted Platform Module (TPM) チップというハードウェアコンポーネントを必要とします。TPM は、プライマリー storage root key と呼ばれるキーを使用してキーを保護します。

注記

Red Hat Enterprise Linux 8 は、TPM 1.2 と TPM 2.0 の両方をサポートしています。詳細は、Trusted Platform Module (TPM) は 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 値に更新されます。1 つの鍵を複数のブロブとして保存することもできますが、それぞれ PCR 値が異なります。

暗号化鍵は、カーネルの AES (Advanced Encryption Standard) を使用するため、TPM を必要としないので、信頼できる鍵よりも高速になります。暗号化鍵は、カーネルが生成した乱数を使用して作成され、ユーザー空間のブロブへのエクスポート時に マスターキー により暗号化されます。

マスターキーは信頼できる鍵か、ユーザーキーのいずれかです。マスターキーが信頼されていない場合には、暗号化鍵のセキュリティーは、暗号化に使用されたユーザーキーと同じように保護されます。