

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Client SDK 3 for AWS CloudHSM Client SDK 3에 지원되는 메커니즘
<a name="java-lib-supported"></a>

이 주제에서는 AWS CloudHSM 클라이언트 SDK 3을 사용하는 JCE 공급자가 지원하는 메커니즘에 대한 정보를 제공합니다. 에서 지원하는 Java 암호화 아키텍처(JCA) 인터페이스 및 엔진 클래스에 대한 자세한 내용은 다음 주제를 AWS CloudHSM참조하세요.

**Topics**
+ [지원되는 키](#java-keys)
+ [지원되는 암호](#java-ciphers)
+ [지원되는 다이제스트](#java-digests)
+ [지원되는 해시 기반 메시지 인증 코드(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 - 2048비트 \$1 4096비트의 RSA 키입니다(256비트씩 증분).

표준 파라미터 외에도 생성되는 각 키에 대해 다음의 파라미터도 지원됩니다.
+ **Label**: 키를 검색하는 데 사용할 수 있는 키 라벨.
+ **isExtractable**: HSM에서 키를 내보낼 수 있는지 여부를 나타냅니다.
+ **isPersistent**: 현재 세션이 종료될 때 키가 HSM에 남아 있는지 여부를 나타냅니다.

**참고**  
 Java 라이브러리 버전 3.1은 파라미터를 보다 자세히 지정할 수 있는 기능을 제공합니다. 자세한 내용은 [지원되는 Java 속성](java-lib-attributes.md)을 참조하세요.

## 지원되는 암호
<a name="java-ciphers"></a>

Java용 AWS CloudHSM 소프트웨어 라이브러리는 다음 알고리즘, 모드 및 패딩 조합을 지원합니다.


| Algorithm | Mode | 패딩 | 참고 | 
| --- | --- | --- | --- | 
| 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)를 무시하고 HSM이 생성하는 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`

**참고**  
크기가 16KB 미만인 데이터는 HSM에서 해싱되고, 더 큰 데이터는 소프트웨어에서 로컬로 해싱됩니다.

## 지원되는 해시 기반 메시지 인증 코드(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) 섹션을 참조하세요.