我把.Net的签名验证程序做成了COM组件供asp调用,在调试这个组件的时候没有任何问题,可以被asp调用的时候老出现"无法获取加密服务提供程序 (CSP) (The cryptographic service provider (CSP) cannot be acquired.)"的提示,上网上查了...
我把.Net的签名验证程序做成了COM组件供asp调用,在调试这个组件的时候没有任何问题,可以被asp调用的时候老出现"无法获取加密服务提供程序 (CSP) (The cryptographic service provider (CSP) cannot be acquired.)"的提示,上网上查了一晚上终于得到了解决办法,原来iis的系统帐户没有交互权限不能访问Document and settings的一些目录,所以在RSACryptoServiceProvider 会抛出 CryptographicException 。
解决办法如下,在 RSACryptoServiceProvider 构造函数中增加 CspParameters。类似下面的代码
CspParameters cspParam = new CspParameters();
cspParam.Flags = CspProviderFlags.UseMachineKeyStore;
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(cspParam);
你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=360287
|
- 评论人:梁威
2006-09-22 20:15:26
|
|||
点批一二后缀 |
||||
|
- 评论人:梁威
2006-09-22 20:14:45
|
|||
点12 |
||||
|
- 评论人:梁威
2006-09-22 20:14:11
|
|||
不好意思是添加12为后缀的证书时出现的问题 |
||||
|
- 评论人:梁威
2006-09-22 20:13:06
|
|||
那么请问如果在添加12证书时遇到错误您正在导入的私钥需要一个加密服务提供程序而您的系统并未安装该提供程序请问这个问题应该如何解决谢谢先 |
||||