首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取存储在Windows Mobile 6智能卡上的证书

获取存储在Windows Mobile 6智能卡上的证书
EN

Stack Overflow用户
提问于 2014-07-25 01:13:46
回答 1查看 554关注 0票数 0

我为PDA开发了一个Windows Mobile6应用程序(使用Compact Framework3.5)。我的PDA有一个智能卡读卡器。当插入一张卡时,我将获得存储在里面的所有证书。我已经在一个桌面应用程序中成功地做到了这一点,但是当我在我的手机上尝试相同的代码时,我找不到证书!因此,我尝试了不同的解决方案,但都不起作用!

下面是我的代码:

代码语言:javascript
复制
X509Store test = new X509Store(StoreName.Root, StoreLocation.LocalMachine);
test.Open(OpenFlags.ReadOnly);

if (test.Certificates.Count > 0)
{
     foreach (X509Certificate2 cert in test.Certificates)
     {
          MessageBox.Show("Certificate: " + cert.ToString());
     }
}

你有主意了吗?

EN

回答 1

Stack Overflow用户

发布于 2014-07-25 20:32:53

你会得到异常吗?如果只看到空的存储区,可能是智能卡到windows证书存储区的证书传播有问题。

在桌面windows系统中,有一个证书传播 (CertPropSvc)服务,该服务

将用户证书和根证书从智能卡复制到当前用户的证书存储中,检测智能卡何时插入智能卡读卡器,并在需要时安装智能卡即插即用微型驱动程序。

我不知道Windows Mobile6或任何移动windows操作系统中是否存在这样的服务。

我建议你进行研究(我在google上花了2分钟的努力没有带来任何积极的结果)。

或者,您可以尝试使用PKCS#11库来访问和使用存储在智能卡上的证书和私钥。smartcard供应商通常分发带有智能卡驱动程序的PKCS#11库。

有一些开放源码的.NET项目可以让您与PKCS#11库(通常是用C编写的)进行通信,比如PKCS11InteropNCryptoki

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24939997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档