本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
所有 HSM 实例的已知问题
以下问题会影响所有 AWS CloudHSM 用户,无论他们使用的是 key_mgmt_util 命令行工具、PKCS #11 SDK、JCE SDK 还是 OpenSSL SDK。
主题
- 问题:AES 密钥包装使用 PKCS #5 填充,而不是提供与标准兼容的使用零填充的密钥包装
- 问题:客户端进程守护程序要求其配置文件中至少有一个有效的 IP 地址才能成功连接到集群
- 问题: AWS CloudHSM 使用客户端 SDK 3 可以进行哈希处理和签名的数据上限为 16 KB
- 问题:无法将导入的密钥指定为不可导出
- 问题:wrapKey 的默认机制和 key_mgmt_util 中的 unWrapKey命令已被删除
- 问题:如果您在集群中有一个 HSM,HSM 失效转移将无法正常工作
- 问题:如果在短时间内超过集群中 HSM 的密钥容量,客户端会输入未处理的错误状态
- 问题:大小大于 800 字节的 HMAC 密钥的摘要操作不受支持
- 问题:与客户端软件开发工具包 3 一起分发的 client_info 工具会删除由可选输出参数指定的路径的内容
- 问题:在容器化环境中使用 --cluster-id 参数运行 SDK 5 配置工具时收到错误
- 问题:您收到错误 “无法从提供的 pfx 文件创建证书/密钥。错误: NotPkcs8 英寸
问题:AES 密钥包装使用 PKCS #5 填充,而不是提供与标准兼容的使用零填充的密钥包装
此外,不支持不使用填充和使用零填充的密钥包装。
-
影响:如果您在其中使用此算法进行 AWS CloudHSM封装和解包,则不会产生任何影响。但是,使用封装的密钥 AWS CloudHSM 不能在要求符合无填充规范的其他 HSM 或软件中解包。这是因为,在执行与标准兼容的解开包装操作期,您的密钥数据后面可能会添加 8 字节的填充数据。外部封装的密钥无法正确解封到实例中。 AWS CloudHSM
-
变通办法:要在外部对某个密钥解开包装,而该密钥是在 AWS CloudHSM 实例上使用 AES 密钥包装和 PKCS #5 填充进行包装的,则您必须先去除额外的填充,然后才能尝试使用该密钥。您可以通过以下方式执行此操作:在文件编辑器中修剪额外的字节,或者只将密钥字节复制到您代码中的新缓冲区。
-
解决状态:对于 3.1.0 客户端和软件版本, AWS CloudHSM 为 AES 密钥包装提供符合标准的选项。有关更多信息,请参阅 AES 密钥包装。
问题:客户端进程守护程序要求其配置文件中至少有一个有效的 IP 地址才能成功连接到集群
-
影响:如果您删除了集群中的所有 HSM,然后添加了获得新 IP 地址的另一个 HSM,客户端守护程序将继续在您的 HSM 的原始 IP 地址搜索它们。
-
解决办法:如果您运行间歇性工作负载,我们建议您使用CreateHsm函数中的
IpAddress
参数将 elastic network interface (ENI) 设置为其原始值。请注意,ENI 是特定于可用区 (AZ) 的。替代方法是删除/opt/cloudhsm/daemon/1/cluster.info
文件,然后将客户端配置重置为新 HSM 的 IP 地址。您可以使用client -a
命令。有关更多信息,请参阅安装和配置 AWS CloudHSM 客户端 (Linux) 或安装和配置 AWS CloudHSM 客户端 (Windows)。<IP address>
问题: AWS CloudHSM 使用客户端 SDK 3 可以进行哈希处理和签名的数据上限为 16 KB
-
解决状态:大小小于 16KB 的数据继续发送至 HSM 进行哈希处理。我们添加了在软件中对于大小介于 16KB 和 64KB 之间的数据本地进行哈希处理的功能。如果数据缓冲区大于 64KB,客户端 SDK 5 将明显失败。您必须将您的客户端和 SDK 更新到高于 5.0.0 或更高版本才能从此修复中受益。
问题:无法将导入的密钥指定为不可导出
-
解决状态:此问题已修复。您无需执行任何操作,即可从修复获益。
问题:wrapKey 的默认机制和 key_mgmt_util 中的 unWrapKey命令已被删除
问题:如果您在集群中有一个 HSM,HSM 失效转移将无法正常工作
-
影响: 如果集群中的单个 HSM 实例失去连接,客户端将不会与其重新连接,即使 HSM 实例稍后恢复。
-
解决方法:我们建议任意生产集群中至少有两个 HSM 实例。如果您使用此配置,将不会受此问题影响。对于单个 HSM 集群,退回客户端守护程序以恢复连接。
-
解决状态: 此问题已经在 AWS CloudHSM 客户端 1.1.2 发布版中解决。您必须升级到此客户端,才能从修复中获益。
问题:如果在短时间内超过集群中 HSM 的密钥容量,客户端会输入未处理的错误状态
-
影响: 当客户端遇到未处理的错误状态时会冻结,必须重新启动。
-
Workaround: (解决方法) 测试您的吞吐量,以确保您未以客户端无法处理的速率创建会话密钥。您可以通过将 HSM 添加到集群降低您的速率,或减慢会话密钥创建过程。
-
解决状态: 此问题已经在 AWS CloudHSM 客户端 1.1.2 发布版中解决。您必须升级到此客户端,才能从修复中获益。
问题:大小大于 800 字节的 HMAC 密钥的摘要操作不受支持
-
影响: 大于 800 字节的 HMAC 密钥可以在 HSM 上生成或导入。但是,如果通过 JCE 或 key_mgmt_util 在摘要操作中使用这个较大的密钥,操作将失败。请注意,如果您使用的是 PKCS11,HMAC 密钥的大小限制为 64 个字节。
-
解决方法: 如果要使用 HSM 上摘要操作的 HMAC 密钥,请确保大小小于 800 字节。
-
解决状态:此时为无。
问题:与客户端软件开发工具包 3 一起分发的 client_info 工具会删除由可选输出参数指定的路径的内容
-
影响:指定输出路径下的所有现有文件和子目录可能会永远丢失。
-
变通办法:使用该
client_info
工具时请勿使用可选参数-output
。path
-
解决状态:此问题已在客户端软件开发工具包 3.3.2 发布版中解决。您必须升级到此客户端,才能从修复中获益。
问题:在容器化环境中使用 --cluster-id
参数运行 SDK 5 配置工具时收到错误
在配置工具中使用 --cluster-id 参数时,您会收到以下错误:
No credentials in the property bag
此错误由 Instance Metadata Service 版本 2 (IMDSv2, Instance Metadata Service Version 2) 的更新引起。有关更多信息,请参阅 IMDSv2 文档。
-
影响:此问题将影响在容器化环境中在 SDK 版本 5.5.0 及更高版本上运行配置工具以及利用 EC2 实例元数据提供凭证的用户。
-
变通办法:将 PUT 响应跃点限制设置为至少两个。有关执行此操作的指导,请参阅配置实例元数据选项。
问题:您收到错误 “无法从提供的 pfx 文件创建证书/密钥。错误: NotPkcs8 英寸
-
影响:使用证书和私钥重新配置 SSL 的 SDK 5.11.0 用户如果私钥不是 PKCS8 格式,则其私钥将失败。
-
解决方法:您可以使用 openssl 命令将自定义 SSL 私钥转换为 PKCS8 格式:
openssl pkcs8 -topk8 -inform PEM -outform PEM -in
ssl_private_key
-outssl_private_key_pkcs8
-
解决状态:此问题已在客户端 SDK 5.12.0 版本中得到解决。您必须升级到此客户端版本或更高版本才能从此修复中受益。