软件安全模块/工具包取代HSM以开发加密功能

Raj*_*Raj 8 security encryption cryptography hsm

我工作并完成了一个PKI项目,该项目使用HSM生成 - 存储密钥和执行加密功能.我使用PKCS#11与我们的sigining/verifying和加密/解密应用程序连接.我们的平台是windows.

现在,我们希望通过用软件安全模块替换HSM来提供低成本的替代解决方案.我必须在此注意,我知道不使用HSM的缺点.它是安全与成本之间的权衡.

我发现Microsoft提供了下一代CryptoAPI(CNG),密钥存储和证书服务.我的高级管理层不倾向于使用开源软件.我还发现了RSA和cryptomathic提供工具包来执行基于软件的解决方案.

有没有人遇到任何商业软件安全模块工具包来执行密钥生成,密钥存储和加密功能?

编程语言 - c/c ++

谢谢

拉吉

Jac*_*oyd 9

您可以使用SoftHSM,这是一个纯软件PKCS#11实现.OpenDNSSEC项目正在使用它,以便在没有真正的HSM的情况下进行交换,因此它也可能对您有用.但是,它是BSD许可的,所以我猜你的管理层可能不喜欢它.

如果你正在寻找低成本但又商业化的(我不确定你是专门寻找专有的,CryptoAPI是什么,或商业支持的东西,CryptoAPI不是,除非你有合同微软),重写您的应用程序以使用Win32 CryptoAPI似乎是我唯一可行的选择.根据我的经验,RSA的工具包并不便宜.

  • 谢谢杰克。你是对的。如果是情况 2,我计划使用 CNG,因为 MS 正在逐步淘汰 cryptoAPI。Mozilla NSS 也有 PKCS#11 实现的虚拟令牌。 (2认同)

Ras*_*ber 2

您最好的选择应该是找到软件 PKCS#11 库。市场上应该有几种实现方式 - 我知道我工作的公司出售一种。这样,您仍然能够切换回符合 PKCS#11 的 HSM,并且对应用程序的必要修改应该最少。

您的其他选择是 Microsoft 的 CryptoAPI 或 CNG 或 RSA、Cryptomathic 或其他供应商的工具包。这可能需要更多的工作来重写应用程序 - 除了 CryptoAPI 和 CNG 是免费的之外,我真的看不出这个选项有任何优势。