【发布时间】:2012-08-15 18:20:22
【问题描述】:
我一直在搜索,但似乎找不到使用 RSA 进行解密的简单方法。
我已经生成了一个公钥和私钥,它们存储在两个单独的文件中,并且是 XML 格式。我可以使用 FromXmlString 将公钥与 RSACryptoServiceProvider 对象相关联,然后加密字符串。尝试解密加密字符串时,我感到困惑。我不确定如何将私钥数据与 RSACryptoServiceProvider 相关联,以便我可以使用 Decrypt 函数。
任何帮助将不胜感激。
编辑:
公钥和私钥的格式是RSACryptoServiceProvider对象生成的XML,我只是放到了一个文件中:
<RSAKeyValue><Modulus>vS7Y5up+6kHMx7hQjKA6sKlIVASaw ... etc ...
我使用以下代码加载公钥:
StreamReader sr = new StreamReader(HttpContext.Current.Server.MapPath("public.key"));
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
rsa.FromXmlString(sr.ReadToEnd().ToString());
我目前还没有尝试使用私钥进行任何操作,因为我不确定从哪里开始。
【问题讨论】:
-
键是什么格式的?你用公钥做了什么?你用私钥试过什么?
-
出于格式原因,我编辑了上面的帖子并回答了您的问题。
标签: c# rsa private encryption