做一个与建行接口的网上银行的小项目,遇到这样一个问题,关于用RSA解密的数字签名的问题,我的源代码如下,恳请做过这方面项目的大虾们
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
string path=Server.MapPath("jiemi.xml"); //放公钥的文件jiemi.xml
StreamReader reader=new StreamReader(path);
string sKey=reader.ReadToEnd();
reader.Close();
string sStr=Page.Request["SIGN"].ToString(); //数字签名
rsa.FromXmlString(sKey); //重新构造xmlstring
byte[] done1 = rsa.Decrypt(Convert.FromBase64String(sStr),false);
string returnStr=Encoding.GetEncoding("gb2312").GetString(done1);
关于私钥和公钥的用法只是明白一点点,因为暂时无法进行调试,不知道自己写的用私钥解密的程序是否正确。
恳请做过这方面的项目的大虾们相助!或者提供其他的方法。
注:是与建行的网上银行的接口!!!
分不够再加!解决后高分相送。