客户端软件工具包 3 的支持机制 - AWS CloudHSM

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

客户端软件工具包 3 的支持机制

有关 AWS CloudHSM 支持的 Java 加密体系结构 (JCA) 接口和引擎类的更多信息,请参阅以下主题。

支持的密钥

适用于 Java 的 AWS CloudHSM 软件库使您能够生成以下密钥类型。

  • AES – 128、192 和 256 位 AES 密钥。

  • DESede – 92 位 3DES 密钥。有关即将发生的更改,请参阅下面的注释 1

  • NIST 曲线 secp256r1 (P-256)、secp384r1 (P-384) 和 secp256k1(区块链)的 ECC 密钥对。

  • RSA 2048 位到 4096 位 RSA 密钥,增量为 256 位。

除了标准参数以外,我们对于生成的每个密钥还支持以下参数。

  • Label:可用于搜索密钥的密钥标签。

  • isExtractable:指示密钥是否可从 HSM 中导出。

  • isPersistent:指示在当前会话结束时密钥是否保留在 HSM 上。

注意

利用 Java 库版本 3.1,可以更详细地指定参数。有关更多信息,请参阅支持的 Java 属性

支持的密码

适用于 Java 的 AWS CloudHSM 软件库支持以下算法、模式和填充组合。

算法 Mode Padding 注意事项
AES CBC

AES/CBC/NoPadding

AES/CBC/PKCS5Padding

实施 Cipher.ENCRYPT_MODECipher.DECRYPT_MODE

AES ECB

AES/ECB/NoPadding

AES/ECB/PKCS5Padding

实施 Cipher.ENCRYPT_MODECipher.DECRYPT_MODE。使用转换 AES。
AES CTR

AES/CTR/NoPadding

实施 Cipher.ENCRYPT_MODECipher.DECRYPT_MODE

AES GCM AES/GCM/NoPadding

实施 Cipher.ENCRYPT_MODECipher.DECRYPT_MODE,以及 Cipher.WRAP_MODECipher.UNWRAP_MODE

执行 AES-GCM 加密时,HSM 会忽略请求中的初始化向量 (IV) 并使用其生成的 IV。当该操作完成时,您必须调用 Cipher.getIV() 以获取 IV。

AESWrap ECB

AESWrap/ECB/ZeroPadding

AESWrap/ECB/NoPadding

AESWrap/ECB/PKCS5Padding

实施 Cipher.WRAP_MODECipher.UNWRAP_MODE。使用转换 AES。

DESede (三重 DES) CBC

DESede/CBC/NoPadding

DESede/CBC/PKCS5Padding

实施 Cipher.ENCRYPT_MODECipher.DECRYPT_MODE

密钥生成程序接受 168 或 192 位的大小。但是在内部,所有 DESede 密钥都是 192 位。

有关即将发生的更改,请参阅下面的注释 1

DESede (三重 DES) ECB

DESede/ECB/NoPadding

DESede/ECB/PKCS5Padding

实施 Cipher.ENCRYPT_MODECipher.DECRYPT_MODE

密钥生成程序接受 168 或 192 位的大小。但是在内部,所有 DESede 密钥都是 192 位。

有关即将发生的更改,请参阅下面的注释 1

RSA ECB

RSA/ECB/NoPadding

RSA/ECB/PKCS1Padding

实施 Cipher.ENCRYPT_MODECipher.DECRYPT_MODE

有关即将发生的更改,请参阅下面的注释 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_MODECipher.DECRYPT_MODECipher.WRAP_MODECipher.UNWRAP_MODE

OAEPPadding 是采用 SHA-1 填充类型的 OAEP

RSAAESWrap ECB OAEPPADDING 实施 Cipher.WRAP_ModeCipher.UNWRAP_MODE

支持的摘要

适用于 Java 的 AWS CloudHSM 软件库支持以下消息摘要。

  • SHA-1

  • SHA-224

  • SHA-256

  • SHA-384

  • SHA-512

注意

长度小于 16 KB 的数据将在 HSM 上进行哈希处理,而较大的数据将在软件中本地进行哈希处理。

支持 HMAC 散列消息认证码算法

适用于 Java 的 AWS CloudHSM 软件库支持以下 HMAC 算法。

  • HmacSHA1

  • HmacSHA224

  • HmacSHA256

  • HmacSHA384

  • HmacSHA512

支持的签名/验证机制

适用于 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

机制注释

[1] 根据 NIST 指南中对 FIPS 集群的要求,2023 年之后不再允许使用。有关详细信息,请参阅FIPS 140 合规:2024 年机制弃用