2017-02-14 86 views
1

我使用Bouncy Castle C#来开发应用程序。目前,我可以通过X509Store类检索证书列表,并通过.NET API的RSACryptoServiceProvider类获取私钥。Can Bouncy Castle C#可以使用.NET加密技术

我想导出RSACryptoServiceProvider私钥并转换为BC对象,如ICipherParameter进行加密/解密。但是,由于证书标记为不可导出,因此不允许导出操作。

  1. 是否有任何替代解决方案通过Bouncy Castle API检索证书列表并使用带有不可导出属性的私钥?
+0

如果您可以忽略不可导出的设置,它将不会非常有用。如果要导出它们,请勿将私钥标记为不可导出。 –

+0

@JamesKPolk我认为问题是“Can BouncyCastle可以运行在CAPI PCERT_CONTEXT上吗?或者,至少是CAPI或CNG命名密钥?” (不,我知道答案) – bartonjs

+0

@bartonjs我已经更新了问题 – anguspcw

回答

3

No. Bouncy Castle是一个软件实现,尤其是涉及到C#。它不包含任何插件结构来执行硬件操作,至少在涉及到核心加密功能时。

然后它又是开源,所以应该可以更改代码。之后唯一的问题是保持您的更改代码是最新的。

+0

95%肯定这个答案,顺便说一下。如果有人发布100%肯定的答案,我会很乐意提升它。或者,100%确定地尝试Bouncy邮件列表。 –

+0

是否可以使用从.NET受保护的类(例如RSACryptoServiceProvider/RSAParameters)检索到的私钥对城堡进行支持? – anguspcw

+0

不,软件加密工作的关键需要在可访问的内存中。 –

相关问题