繁体   English   中英

CSP未检测到智能卡微型驱动程序C#

[英]CSP not detecting smart card minidriver C#

我正在使用智能卡编写一个用于加密目的的小程序,但是我的微型驱动程序有问题。 当我启动程序时,我可以看到卡(出现用于选择智能卡的弹出对话框),但是在以下情况下我无法使用它:

A smart card was detected but is not the one required for the current operation. The smart card you are using may be missing required driver software or a required certificate. 

我使用的C#代码非常简单,它像这样:

CspParameters csp = new CspParameters(
        1,
        "Microsoft Base Smart Card Crypto Provider",
        "my_container"
);
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(csp);

只是要注意,我还有另一个可以识别此微型驱动程序的应用程序(金雅拓微型驱动程序管理器),因此问题不存在。

提前致谢

更新

为了使CSP识别智能卡,您需要告诉它使用默认密钥容器。 在创建RSACryptoServiceProvider之前只需添加下一行:

csp.Flags = CspProviderFlags.UseDefaultKeyContainer;

检查微型驱动程序是否同时以32位和64位模式安装。 在64位上,必须同时在32位和64位模式下设置minidriver及其配置(在calais数据库中)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM