【发布时间】:2019-03-07 11:06:06
【问题描述】:
我们需要执行一些加密操作,我想知道哪些加密库可以满足我的需要。
以下是上下文:
鉴于我们有:
- 存储在 HSM 中的 EC 私钥
- EC 公钥(公共点)
- 加密的 AES 密钥
- 使用 EC 公钥 ECDH 计算的 MAC
我们需要执行以下操作:
- 使用 EC 私钥和 EC 公钥中的 ECKA-DH 算法计算一个共享点(K~X~,K~Y~)。 (参见 BSI TR 03111)
- 导出 K~ENC~ 和 K~MAC~ 使用带有 SHA-256 的 KDF2(x, l)。 K~ENC~ 是输出的前 8 个字节。 K~MAC~ 是输出的最后 8 个字节。 (参见 ISO/IEC 18033-2)
- 根据 MAC ==> MAC = AES-CMAC(加密的 AES 密钥 || ValueA || ValueB, K~MAC~)验证通过加密的 AES 密钥的 MAC。
- 解密加密的 AES 密钥 ==> AES 密钥 = AES-CBC(加密的 AES 密钥,K~ENC~)。
哪些加密库将帮助计算基于的共享点 私钥存储在 HSM 中的事实?
Bouncy Castle 能否与 IAIK PKCS#11 包装器一起使用?
IAIK 的商业产品 IAIK-JCE 能否对此有所帮助?
感谢您的帮助。
最好的问候。
【问题讨论】: