

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Client SDK 3 for Client AWS CloudHSM SDK 3 でサポートされているメカニズム
<a name="java-lib-supported"></a>

このトピックでは、 AWS CloudHSM クライアント SDK 3 で JCE プロバイダーがサポートするメカニズムについて説明します。でサポートされている Java 暗号化アーキテクチャ (JCA) インターフェイスとエンジンクラスの詳細については AWS CloudHSM、以下のトピックを参照してください。

**Topics**
+ [サポートされるキー](#java-keys)
+ [サポートされる暗号](#java-ciphers)
+ [サポートされているダイジェスト](#java-digests)
+ [サポートされている Hash-based Message Authentication Code (HMAC) アルゴリズム](#java-mac)
+ [サポートされている署名/検証メカニズム](#java-sign-verify)
+ [メカニズムの注釈](#w2aac25c23c25c11c17)

## サポートされるキー
<a name="java-keys"></a>

Java 用の AWS CloudHSM ソフトウェアライブラリでは、次のキータイプを生成できます。
+ AES – 128、192、256 ビットの AES キー。
+ DESede — 92 ビット 3DES キー。今後の変更については、以下の注記「[1](#java-keys-note-1)」を参照してください。
+ NIST 曲線 secp256r1 (P-256)、secp384r1 (P-384)、および secp256k1 (ブロックチェーン) を対象とした ECC キーペア。
+ RSA – 2,048～4,096 ビットの RSA キー (256 ビットの増分)。

標準のパラメータに加えて、生成されるキーごとに以下のパラメータがサポートされています。
+ **Label**: キーの検索に使用できるキーラベル。
+ **isExtractable**: キーを HSM からエクスポートできるかどうかを示します。
+ **isPersistent**: 現在のセッションの終了後、キーが HSM に残るかどうかを示します。

**注記**  
 Java ライブラリバージョン 3.1 では、パラメータをより詳細に指定することができます。詳細については、「[サポートされている Java 属性](java-lib-attributes.md)」を参照してください。

## サポートされる暗号
<a name="java-ciphers"></a>

Java 用 AWS CloudHSM ソフトウェアライブラリは、次のアルゴリズム、モード、パディングの組み合わせをサポートしています。


| アルゴリズム | モード | [Padding] (パディング) | 注意事項 | 
| --- | --- | --- | --- | 
| AES | CBC |  `AES/CBC/NoPadding` `AES/CBC/PKCS5Padding`  | `Cipher.ENCRYPT_MODE` および `Cipher.DECRYPT_MODE` を実装します。  | 
| AES | ECB |  `AES/ECB/NoPadding` `AES/ECB/PKCS5Padding`  | Cipher.ENCRYPT\$1MODE および Cipher.DECRYPT\$1MODE を実装します。AES 変換 を使用します。 | 
| AES | CTR |  `AES/CTR/NoPadding`  |  `Cipher.ENCRYPT_MODE` および `Cipher.DECRYPT_MODE` を実装します。  | 
| AES | GCM | AES/GCM/NoPadding | `Cipher.ENCRYPT_MODE` および `Cipher.DECRYPT_MODE`、`Cipher.WRAP_MODE` および `Cipher.UNWRAP_MODE` を実装します。AES-GCM 暗号化の実行時に、HSM はリクエスト内の初期化ベクトル (IV) を無視し、独自に IV を生成して使用します。オペレーションが完了したら、`Cipher.getIV()` を呼び出して IV を取得する必要があります。 | 
| AESWrap | ECB |  `AESWrap/ECB/ZeroPadding` `AESWrap/ECB/NoPadding` `AESWrap/ECB/PKCS5Padding`  |  `Cipher.WRAP_MODE` および `Cipher.UNWRAP_MODE` を実装します。AES 変換 を使用します。  | 
| DESede (Triple DES) | CBC |  `DESede/CBC/NoPadding` `DESede/CBC/PKCS5Padding`  |  `Cipher.ENCRYPT_MODE` および `Cipher.DECRYPT_MODE` を実装します。 キー生成ルーチンは 168 ビットまたは 192 ビットのサイズを受け入れます。ただし、内部的に、すべての DESede キーは 192 ビットです。 今後の変更については、以下の注記「[1](#java-keys-note-1)」を参照してください。  | 
| DESede (Triple DES) | ECB | `DESede/ECB/NoPadding``DESede/ECB/PKCS5Padding` | `Cipher.ENCRYPT_MODE` および `Cipher.DECRYPT_MODE` を実装します。 キー生成ルーチンは 168 ビットまたは 192 ビットのサイズを受け入れます。ただし、内部的に、すべての DESede キーは 192 ビットです。 今後の変更については、以下の注記「[1](#java-keys-note-1)」を参照してください。  | 
| RSA | ECB | `RSA/ECB/NoPadding``RSA/ECB/PKCS1Padding` | `Cipher.ENCRYPT_MODE` および `Cipher.DECRYPT_MODE` を実装します。 今後の変更については、以下の注記「[1](#java-keys-note-1)」を参照してください。 | 
| RSA | ECB | `RSA/ECB/OAEPPadding` `RSA/ECB/OAEPWithSHA-1ANDMGF1Padding` `RSA/ECB/OAEPWithSHA-224ANDMGF1Padding` `RSA/ECB/OAEPWithSHA-256ANDMGF1Padding` `RSA/ECB/OAEPWithSHA-384ANDMGF1Padding` `RSA/ECB/OAEPWithSHA-512ANDMGF1Padding`  |  `Cipher.ENCRYPT_MODE`、`Cipher.DECRYPT_MODE`、`Cipher.WRAP_MODE`、および `Cipher.UNWRAP_MODE` を実装します。 `OAEPPadding` は、`SHA-1` パディングタイプの `OAEP` です。  | 
| RSAAESWrap | ECB | OAEPPADDING | Cipher.WRAP\$1Mode および Cipher.UNWRAP\$1MODE を実装します。 | 

## サポートされているダイジェスト
<a name="java-digests"></a>

Java 用 AWS CloudHSM ソフトウェアライブラリは、次のメッセージダイジェストをサポートしています。
+ `SHA-1`
+ `SHA-224`
+ `SHA-256`
+ `SHA-384`
+ `SHA-512`

**注記**  
16 KB 未満のデータは HSM でハッシュされ、それ以上のデータはソフトウェアでローカルにハッシュされます。

## サポートされている Hash-based Message Authentication Code (HMAC) アルゴリズム
<a name="java-mac"></a>

Java 用の AWS CloudHSM ソフトウェアライブラリは、次の HMAC アルゴリズムをサポートしています。
+ `HmacSHA1`
+ `HmacSHA224`
+ `HmacSHA256`
+ `HmacSHA384`
+ `HmacSHA512`

## サポートされている署名/検証メカニズム
<a name="java-sign-verify"></a>

Java 用 AWS CloudHSM ソフトウェアライブラリは、次のタイプの署名と検証をサポートしています。

**RSA 署名タイプ**
+ `NONEwithRSA`
+ `SHA1withRSA`
+ `SHA224withRSA`
+ `SHA256withRSA`
+ `SHA384withRSA`
+ `SHA512withRSA`
+ `SHA1withRSA/PSS`
+ `SHA224withRSA/PSS`
+ `SHA256withRSA/PSS`
+ `SHA384withRSA/PSS`
+ `SHA512withRSA/PSS`

**ECDSA 署名タイプ**
+ `NONEwithECDSA`
+ `SHA1withECDSA`
+ `SHA224withECDSA`
+ `SHA256withECDSA`
+ `SHA384withECDSA`
+ `SHA512withECDSA`

## メカニズムの注釈
<a name="w2aac25c23c25c11c17"></a>

[1] NIST ガイダンスに従い、2023 年以降の FIPS モードのクラスターでは、これは許可されません。FIPS 以外のモードのクラスターでは、2023 年以降も許可されます。詳細については、「[FIPS 140 コンプライアンス: 2024 年 メカニズムの非推奨](compliance-dep-notif.md#compliance-dep-notif-1)」を参照してください。