使用来自文件的privateKey解密C#或.NET中的p7m文件

时间:2011-12-09 18:04:40

标签: c# .net encryption private-key pkcs#7

希望有人可以帮助我使用代码,因为我正在努力工作3个月而没有任何成功。我几乎尝试过互联网上的任何东西但没有任何作用。

问题:我有加密文件p7m(大小158KB)(它是加密文本)。我在文件pfx中有证书,密码为“a”。在此证书中是解密p7m文件所需的公钥。

我需要读取xyyv.p7m文件的内容,用公钥解密,并将其保存为XYZ.xyz

我不会在这里放任何代码,不要混淆你。感谢

1 个答案:

答案 0 :(得分:0)

PKCS#7结构可能非常凌乱(对于大多数ASN.1结构而言,这实际上是正确的)。如果我们不知道用于生成此文件的内容,则没有太多具体的建议。

一般来说,有一些代码可以在System.Security.Cryptography.Pkcs中读取它们,但是很容易创建无法正确处理的文件(有效或无效)。如果使用不同的工具生成它们,甚至更多。

Mono提供了Mono.Security内的类来阅读它们。它们是非常低级的API(带有一些助手)所以,理论上,它们应该能够读取任何内容......只要您不介意编码处理格式本身。

其他库,BouncyCastle浮现在脑海中,将提供类似的(低级或高级)API来处理PKCS#7文件。