16.2.2. KRA での暗号化アルゴリズムの設定

注記
以下の設定では,AES CBC (kra.allowEncDecrypt.archive=true および kra.allowEncDecrypt.recovery=true の場合) と、AES Key Wrap (kra.allowEncDecrypt.archive=false および kra.allowEncDecrypt.recovery=false の場合) のみが許可されます.いずれかのアルゴリズムをサポートする FIPS140-2 で検証された HSM はすべて、KRA が提供する主要なアーカイブおよびリカバリー機能に使用できます。
Certificate Systemは、/var/lib/pki/pki-instance_name/conf/kra/CS.cfg ファイルで、鍵操作暗号化に関連する設定パラメーターのグループを定義します。以下のパラメーターのセットを推奨します (他のオプションについては上記を参照)。
kra.allowEncDecrypt.archive=false
kra.allowEncDecrypt.recovery=false
kra.storageUnit.wrapping.1.sessionKeyLength=256
kra.storageUnit.wrapping.1.sessionKeyWrapAlgorithm=RSA
kra.storageUnit.wrapping.1.payloadEncryptionPadding=PKCS5Padding
kra.storageUnit.wrapping.1.sessionKeyKeyGenAlgorithm=AES
kra.storageUnit.wrapping.1.payloadEncryptionAlgorithm=AES
kra.storageUnit.wrapping.1.payloadEncryptionMode=CBC
kra.storageUnit.wrapping.1.payloadWrapAlgorithm=AES KeyWrap
kra.storageUnit.wrapping.1.sessionKeyType=AES
kra.storageUnit.wrapping.1.payloadWrapIVLen=16
kra.storageUnit.wrapping.choice=1
各グループ (kra.storageUnit.wrapping.0.*kra.storageUnit.wrapping.1.*) には個別の設定があり、番号はどの設定が同じ構成グループに属するかを定義します。現在の設定グループは、/var/lib/pki/pki-instance_name/conf/kra/CS.cfg ファイルの kra.storageUnit.wrapping.choice パラメーターで設定されます。
続行する前に、設定ファイルに kra.storageUnit.wrapping.choice=1 が設定されていることを確認してください。
注記
Certificate System は、KRA データベースのレコードにデータを復号化するのに必要な情報を追加します。したがって、暗号化アルゴリズムを変更した後でも、Certificate System は、別の暗号化アルゴリズムを使用して、以前に KRA に保存されたデータを復号化できます。

16.2.2.1. パラメーターとその値の説明

各シークレット (「payload」) はセッションキーで暗号化されます。この暗号化を制御するパラメーターには、payload というプレフィックスが付けられます。使用するパラメーターセットは、kra.allowEncDecrypt.archive および kra.allowEncDecrypt.recoveryの値によって異なります。デフォルトでは、これらは両方とも false です。HSM におけるこの 2 つのパラメーターの効果については、「KRA で AES 暗号化を使用する場合の HSM の制約の解決」 を参照してください。
kra.allowEncDecrypt.archivekra.allowEncDecrypt.recovery の両方が false の場合:
  • payloadWrapAlgorithm は、使用されるラップアルゴリズムを決定します。有効な選択肢は AES KeyWrap のみです。
  • payloadWrapAlgorithm=AES/CBC/PKCS5Padding の場合、payloadWrapIVLength=16 は、IV を生成する必要があることを PKI に伝えるために指定する必要があります (CBC では IV が必要です)。
kra.allowEncDecrypt.archivekra.allowEncDecrypt.recovery の両方が true の場合:
  • payloadEncryptionAlgorithm は、使用される暗号化アルゴリズムを決定します。唯一の有効な選択肢は AES です。
  • payloadEncryptionMode ブロックチェーンモードを決定します。唯一の有効な選択肢は CBC です。
  • payloadEncryptionPadding パディングスキームを決定します。唯一の有効な選択肢は PKCS5Padding です。
次に、セッションキーは KRA Storage Certificate (RSA トークン) でラップされます。セッションキーおよびその暗号化を制御するパラメーターには、sessionKey というプレフィックスが付けられます。
  • sessionKeyType は、生成するキーのタイプです。唯一の有効な選択肢は AES です。
  • sessionKeyLength は、生成されたセッションキーの長さです。有効な選択肢は 128256 で、ペイロードをそれぞれ 128 ビット AES または 256 ビット AES で暗号化します。
  • sessionKeyWrapAlgorithm は、KRA Storage 証明書のキーのタイプです。本ガイドで唯一の有効な選択肢は RSA です。