翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS CloudHSM クライアント SDK 5 の JCE プロバイダーでサポートされているメカニズム
このトピックでは、 AWS CloudHSM クライアント SDK 5 で JCE プロバイダーでサポートされているメカニズムについて説明します。でサポートされている Java 暗号化アーキテクチャ (JCA) インターフェイスとエンジンクラスの詳細については AWS CloudHSM、以下のトピックを参照してください。
トピック
キーとキーペアの関数を生成する
Java 用 AWS CloudHSM ソフトウェアライブラリでは、次のオペレーションを使用してキーとキーペア関数を生成できます。
暗号関数
Java 用 AWS CloudHSM ソフトウェアライブラリは、次のアルゴリズム、モード、パディングの組み合わせをサポートしています。
| アルゴリズム | モード | [Padding] (パディング) | 注意事項 |
|---|---|---|---|
| AES | CBC |
|
|
| AES | ECB |
|
|
| AES | CTR |
|
|
| AES | GCM |
|
AES-GCM 暗号化の実行時に、HSM はリクエスト内の初期化ベクトル (IV) を無視し、独自に IV を生成して使用します。オペレーションが完了したら、 |
| AESWrap | ECB |
|
|
| DESede (Triple DES) | CBC |
|
|
| DESede (Triple DES) | ECB |
|
|
| RSA | ECB |
|
|
| RSA | ECB |
|
|
| RSAAESWrap | ECB |
|
|
署名および検証
Java 用 AWS CloudHSM ソフトウェアライブラリは、次のタイプの署名と検証をサポートしています。クライアント SDK 5 とハッシュ機能付きの署名アルゴリズムでは、データはソフトウェアでローカルにハッシュされてから、署名/検証のために HSM に送信されます。つまり、SDK でハッシュできるデータのサイズに制限はありません。
RSA 署名タイプ
-
NONEwithRSA -
RSASSA-PSS -
SHA1withRSA -
SHA1withRSA/PSS -
SHA1withRSAandMGF1 -
SHA224withRSA -
SHA224withRSAandMGF1 -
SHA224withRSA/PSS -
SHA256withRSA -
SHA256withRSAandMGF1 -
SHA256withRSA/PSS -
SHA384withRSA -
SHA384withRSAandMGF1 -
SHA384withRSA/PSS -
SHA512withRSA -
SHA512withRSAandMGF1 -
SHA512withRSA/PSS
ECDSA 署名タイプ
-
NONEwithECDSA -
SHA1withECDSA -
SHA224withECDSA -
SHA256withECDSA -
SHA384withECDSA -
SHA512withECDSA
ML-DSA 署名タイプ
-
ML-DSA -
ML-DSA-44 -
ML-DSA-65 -
ML-DSA-87 -
ML-DSA-EXTERNAL-MU
EdDSA 署名タイプ 注を参照 2
-
Ed25519またはEdDSA(最大データサイズ: 16,000 バイト) -
Ed25519ph
ダイジェスト関数
Java 用 AWS CloudHSM ソフトウェアライブラリは、次のメッセージダイジェストをサポートしています。クライアント SDK 5 では、データはソフトウェアでローカルにハッシュされます。つまり、SDK でハッシュできるデータのサイズに制限はありません。
-
SHA-1 -
SHA-224 -
SHA-256 -
SHA-384 -
SHA-512
Hash-based Message Authentication Code (HMAC) 関数
Java 用の AWS CloudHSM ソフトウェアライブラリは、次の HMAC アルゴリズムをサポートしています。
-
HmacSHA1(最大データサイズ (バイト): 16288) -
HmacSHA224(最大データサイズ (バイト): 16256) -
HmacSHA256(最大データサイズ (バイト): 16288) -
HmacSHA384(最大データサイズ (バイト): 16224) -
HmacSHA512(最大データサイズ (バイト): 16224)
暗号ベースのメッセージ認証コード (CMAC) 関数
CMAC (暗号ベースのメッセージ認証コード) は、ブロック暗号とシークレットキーを使用してメッセージ認証コード (MAC) を作成します。HMAC とは異なり、MAC にはハッシュ方式ではなくブロック対称キーメソッドを使用します。
Java 用 AWS CloudHSM ソフトウェアライブラリは、次の CMAC アルゴリズムをサポートしています。
-
AESCMAC
キー共有機能
Java 用の AWS CloudHSM ソフトウェアライブラリは、Key Derivation Functions (KDF) を使用した ECDH をサポートしています。サポートされている KDF の種類は次のとおりです。
キーファクトリを使用してキーをキー仕様に変換します
キーファクトリを使用してキーをキー仕様に変換できます。 AWS CloudHSM には、JCE 用の 2 種類のキーファクトリがあります。
SecretKeyFactory: 対称キーをインポートまたは派生させるために使用されます。SecretKeyFactory を使用すると、サポートされているキーまたはサポートされている KeySpec を渡して、対称キーを AWS CloudHSMにインポートまたは派生させることができます。KeyFactory でサポートされている仕様は次のとおりです。
-
SecretKeyFactory
generateSecretのメソッドでは、以下の KeySpecクラスがサポートされています。 KeyAttributesMap を使用して、追加の属性を持つキーバイトを CloudHSM キーとしてインポートできます。例はこちら
からご覧いただけます。 SecretKeySpec
を使用して、対称キー仕様を CloudHSM キーとしてインポートできます。 AesCmacKdfParameterSpec を使用して、別の CloudHSM AES キーを使用して対称キーを取得できます。
注記
SecretKeyFactory の translateKey メソッドは、キー
KeyFactory: 非対称キーのインポートに使用されます。SecretKeyFactory を使用すると、サポートされているキーまたはサポートされている KeySpec を渡して、非対称キーを AWS CloudHSMにインポートすることができます。詳細については、以下のリソースを参照してください。
KeyFactory
generatePublicのメソッドでは、次の KeySpecクラスがサポートされています。 RSA、EC、および EdDSA KeyTypes 用の CloudHSM KeyAttributesMap。 KeyAttributesMap KeyTypes 例はこちら
からご覧いただけます RSA、EC、および EdDSA パブリックキー用の X509EncodedKeySpec
RSA パブリックキー向け RSAPublicKeySpec
EC パブリックキーの ECPublicKeySpec
(Ed25519 には適用されません)
KeyFactory
generatePrivateのメソッドでは、次の KeySpecクラスがサポートされています。 RSA、EC、および EdDSA KeyTypes 用の CloudHSM KeyAttributesMap。 KeyAttributesMap KeyTypes 例はこちら
からご覧いただけます RSA、EC、および EdDSA プライベートキーの PKCS8EncodedKeySpec
RSA プライベートキー向け RSAPrivateCrtKeySpec
EC プライベートキーの ECPrivateKeySpec
(Ed25519 には適用されません)
ML-DSA キーのインポート制限
AWS CloudHSM は、 KeyFactory (generatePublic および ) を介した ML-DSA キーのインポートをサポートしていませんgeneratePrivate。ML-DSA キーを使用するには、 を使用して HSM で直接生成しますKeyPairGenerator。ML-DSA は、 を使用したパブリックキーのエクスポートKeyFactoryをサポートします getKeySpec ( を返しますX509EncodedKeySpec)。
KeyFactory の translateKey メソッドでは、キーインターフェイス
メカニズムの注釈
[1] NIST ガイダンスに従い、2023 年以降の FIPS モードのクラスターでは、これは許可されません。FIPS 以外のモードのクラスターでは、2023 年以降も許可されます。詳細については、「FIPS 140 コンプライアンス: 2024 年 メカニズムの非推奨」を参照してください。
[2] 非 FIPS モードの hsm2m.medium インスタンスでのみサポートされています。
[3] キー取得関数 (KDFs) は NIST Special Publication 800-56A Revision 3