首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C# 使用rsa证书加密,服务器拒绝访问解决思路

2012-03-25 
C# 使用rsa证书加密,服务器拒绝访问我使用的rsa证书加密算法,在本地测试,读取加密都是没有问题的额,在wind

C# 使用rsa证书加密,服务器拒绝访问
我使用的rsa证书加密算法,在本地测试,读取加密都是没有问题的额,在windows 2003上面就不行了,服务器拒绝访问,而且我把所有的权限都给了,。也是不行,

求哪位大神帮个忙。

同时咨询下,可以不可以,把证书安装到电脑里面进行调用,而不是调用本地的证书文件。

一下是我们的加密算法:
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(signMsgVal);
  X509Certificate2 cert = new X509Certificate2(HttpContext.Current.Server.MapPath("wanfrsa.pfx"), "123456", X509KeyStorageFlags.MachineKeySet);
  RSACryptoServiceProvider rsapri = (RSACryptoServiceProvider)cert.PrivateKey;
  RSAPKCS1SignatureFormatter f = new RSAPKCS1SignatureFormatter(rsapri);
  byte[] result;
  f.SetHashAlgorithm("SHA1");
  SHA1CryptoServiceProvider sha = new SHA1CryptoServiceProvider();
  result = sha.ComputeHash(bytes);
  signMsg = System.Convert.ToBase64String(f.CreateSignature(result)).ToString();

[解决办法]
看到要沉了,赶紧帮忙顶下
[解决办法]
HttpContext.Current.Server.MapPath("wanfrsa.pfx")
这个路径的权限在确定下,
[解决办法]
http://support.microsoft.com/kb/938397 把这个kb在2003上安装上。

具体解释在这:http://blogs.technet.com/b/pki/archive/2010/09/30/sha2-and-windows.aspx
主要是说windows2003没有加入SHA256,需要用补丁加进去。
[解决办法]

探讨

引用:

先看看你的wanfrsa.pfx的hash是不是wanfrsa.pfx,如果是就按照上面的补丁去做,如果是SHA1的话,就另想别的办法。

f.SetHashAlgorithm("SHA1"); 这个算法是SHA1?还是不算,证书是我自己生成的?

热点排行