JCE 제공자를 위한 지원 메커니즘 - AWS CloudHSM

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

JCE 제공자를 위한 지원 메커니즘

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

키 및 키 페어 함수 생성

Java용 AWS CloudHSM 소프트웨어 라이브러리에서는 키 및 키 쌍 생성 함수를 위해 다음 작업을 사용할 수 있습니다.

  • RSA

  • EC

  • AES

  • DESede (Triple DES)1 참고 참조

  • GenericSecret

암호 함수

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

알고리즘 Mode 패딩 참고
AES CBC

AES/CBC/NoPadding

AES/CBC/PKCS5Padding

Cipher.ENCRYPT_MODECipher.DECRYPT_MODE를 구현합니다.

Cipher.UNWRAP_MODE for AES/CBC NoPadding 구현

AES ECB

AES/ECB/PKCS5Padding

AES/ECB/NoPadding

Cipher.ENCRYPT_MODECipher.DECRYPT_MODE를 구현합니다.

AES CTR

AES/CTR/NoPadding

Cipher.ENCRYPT_MODECipher.DECRYPT_MODE를 구현합니다.

AES GCM

AES/GCM/NoPadding

Cipher.WRAP_MODE, Cipher.UNWRAP_MODE, Cipher.ENCRYPT_MODE, Cipher.DECRYPT_MODE를 구현합니다.

AES-GCM 암호화를 수행할 때 HSM은 요청에서 초기화 벡터(IV)를 무시하고 HSM이 생성하는 IV를 사용합니다. 작업이 완료되면 Cipher.getIV()를 호출하여 IV를 가져와야 합니다.

AESWrap ECB

AESWrap/ECB/NoPadding

AESWrap/ECB/PKCS5Padding

AESWrap/ECB/ZeroPadding

Cipher.WRAP_MODECipher.UNWRAP_MODE를 구현합니다.

DESede (Triple DES) CBC

DESede/CBC/PKCS5Padding

DESede/CBC/NoPadding

Cipher.ENCRYPT_MODECipher.DECRYPT_MODE를 구현합니다. 예정된 변경 사항은 1 아래 참고를 참조하세요.

DESede (Triple DES) ECB

DESede/ECB/NoPadding

DESede/ECB/PKCS5Padding

Cipher.ENCRYPT_MODECipher.DECRYPT_MODE를 구현합니다. 예정된 변경 사항은 1 아래 참고를 참조하세요.

RSA ECB

RSA/ECB/PKCS1Padding참고 참조 1

RSA/ECB/OAEPPadding

RSA/ECB/OAEPWithSHA-1ANDMGF1Padding

RSA/ECB/OAEPWithSHA-224ANDMGF1Padding

RSA/ECB/OAEPWithSHA-256ANDMGF1Padding

RSA/ECB/OAEPWithSHA-384ANDMGF1Padding

RSA/ECB/OAEPWithSHA-512ANDMGF1Padding

Cipher.WRAP_MODE, Cipher.UNWRAP_MODE, Cipher.ENCRYPT_MODE, Cipher.DECRYPT_MODE를 구현합니다.

RSA ECB

RSA/ECB/NoPadding

Cipher.ENCRYPT_MODECipher.DECRYPT_MODE를 구현합니다.

RSAAESWrap ECB

RSAAESWrap/ECB/OAEPPadding

RSAAESWrap/ECB/OAEPWithSHA-1ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-224ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-256ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-384ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-512ANDMGF1Padding

Cipher.WRAP_MODECipher.UNWRAP_MODE를 구현합니다.

서명 및 인증 기능

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

다이제스트 기능

Java용 AWS CloudHSM 소프트웨어 라이브러리는 다음 메시지 다이제스트를 지원합니다. Client SDK 5를 사용하면 데이터가 소프트웨어에서 로컬로 해시됩니다. 즉, SDK로 해시할 수 있는 데이터 크기에는 제한이 없습니다.

  • SHA-1

  • SHA-224

  • SHA-256

  • SHA-384

  • SHA-512

해시 기반 메시지 인증 코드(HMAC) 함수

Java용 AWS CloudHSM 소프트웨어 라이브러리는 다음 HMAC 알고리즘을 지원합니다.

  • HmacSHA1(최대 데이터 크기(바이트): 16288)

  • HmacSHA224(최대 데이터 크기(바이트): 16256)

  • HmacSHA256(최대 데이터 크기(바이트): 16288)

  • HmacSHA384(최대 데이터 크기(바이트): 16224)

  • HmacSHA512(최대 데이터 크기(바이트): 16224)

암호 기반 메시지 인증 코드(CMAC) 함수

CMAC(암호 기반 메시지 인증 코드) 는 블록 암호와 비밀 키를 사용하여 메시지 인증 코드(MAC) 를 생성합니다. MAC에서는 해싱 방법이 아닌 블록 대칭 키 방법을 사용한다는 점에서 HMAC과 다릅니다.

Java용 AWS CloudHSM 소프트웨어 라이브러리는 다음 CMAC 알고리즘을 지원합니다.

  • AESCMAC

키 팩토리를 사용하여 키를 키 사양으로 변환합니다.

키 팩토리를 사용하여 키를 키 사양으로 변환할 수 있습니다. AWS CloudHSM JCE에는 두 가지 유형의 키 팩토리가 있습니다.

SecretKeyFactory: 대칭 키를 가져오거나 파생하는 데 사용됩니다. 를 사용하여 SecretKeyFactory 지원되는 키 또는 대칭 키를 가져오거나 파생할 수 KeySpec 있도록 지원되는 키를 전달할 수 있습니다. AWS CloudHSM지원되는 사양은 다음과 같습니다. KeyFactory

  • SecretKeyFactoryFor의 generateSecret 메서드는 다음과 같은 KeySpec클래스가 지원됩니다.

    • KeyAttributesMap추가 속성이 있는 키 바이트를 CloudHSM 키로 가져오는 데 사용할 수 있습니다. 예제는 여기에서 확인할 수 있습니다.

    • SecretKeySpec대칭 키 사양을 CloudHSM 키로 가져오는 데 사용할 수 있습니다.

    • AesCmacKdfParameterSpec다른 CloudHSM AES 키를 사용하여 대칭 키를 도출하는 데 사용할 수 있습니다.

KeyFactory: 비대칭 키를 가져오는 데 사용됩니다. 를 사용하여 KeyFactory 지원되는 키 또는 비대칭 키 가져오기가 지원되는 KeySpec 키를 전달할 수 있습니다. AWS CloudHSM자세한 정보는 다음 리소스를 참조하세요.

KeyFactoryFor의 translateKey 메서드는 키 인터페이스를 구현하는 모든 키를 받아들입니다.

메커니즘 주석

[1] NIST 지침에 따라 2023년 이후 FIPS 모드의 클러스터에서는 이 기능이 허용되지 않습니다. 비 FIPS 모드의 클러스터의 경우 2023년 이후에도 여전히 허용됩니다. 세부 정보는 FIPS140 규정 준수: 2024 메커니즘 지원 중단를 참조하세요.