本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
适用于 AWS CloudHSM Client SDK 3 的 Client SDK 3 支持的机制
本主题提供有关 AWS CloudHSM 客户端 SDK 3 支持的 JCE 提供程序的机制的信息。有关支持的 Java 密码学架构 (JCA) 接口和引擎类的信息 AWS CloudHSM,请参阅以下主题。
支持的密钥
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 | ECB |
|
实施 Cipher.ENCRYPT_MODE 和 Cipher.DECRYPT_MODE。使用转换 AES。 |
| AES | CTR |
|
实施 |
| AES | GCM | AES/GCM/NoPadding |
实施 执行 AES-GCM 加密时,HSM 会忽略请求中的初始化向量 (IV) 并使用其生成的 IV。当该操作完成时,您必须调用 |
| AESWrap | ECB |
|
实施 |
| DESede (三重 DES) | CBC |
|
实施 密钥生成程序接受 168 或 192 位的大小。但是,在内部,所有 DESede 密钥都是 192 位。 有关即将发生的更改,请参阅下面的注释 1。 |
| DESede (三重 DES) | ECB |
|
实施 密钥生成程序接受 168 或 192 位的大小。但是,在内部,所有 DESede 密钥都是 192 位。 有关即将发生的更改,请参阅下面的注释 1。 |
| RSA | ECB |
|
实施 有关即将发生的更改,请参阅下面的注释 1。 |
| RSA | ECB |
|
实施
|
| RSAAESWrap | ECB | OAEPPADDING |
实施 Cipher.WRAP_Mode 和 Cipher.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 指导,2023 年以后处于 FIPS 模式的集群不允许这样做。对于处于非 FIPS 模式的集群,2023 年之后仍然允许。有关详细信息,请参阅FIPS 140 合规:2024 年机制弃用。