如何从 PKI 卡读取证书?
我尝试在互联网上寻找答案,但没有得到任何好的结果。
有什么想法如何从 PKI 卡获取证书吗?
我需要使用证书密钥签署一些表格。所有这一切都将发生在网络应用程序中。
之后...
我没有尝试太多,因为我没有起点。我刚刚了解到,当您插入卡时,Windows 会读取所有证书。这样我想我可以让他们使用X509Store. 我会尝试一下,然后会回来,但我仍然需要一些帮助。
一旦您插入智能卡,证书就会复制到您本地的个人证书存储中。您可以使用“certmgr.msc”(运行 -> 输入)来查看这些证书。
您可以使用 X509Store 访问证书以及关联的私钥。但当然,出于安全原因,您只能在计算机上本地执行此操作。想象一下每个网站都可以访问您的私钥... 如何使用 .NET 和证书进行签名和验证签名 (C#)
如果您使用 CAPICOM,您仍然需要在本地计算机上执行代码 (JavaScript)。您可以在这里找到以下声明:
[CAPICOM 是一个仅 32 位的组件,可在以下操作系统中使用:Windows Server 2008、Windows Vista、Windows XP。相反,使用 .NET Framework 来实现安全功能。有关详细信息,请参阅下面列出的替代方案。] 重要提示 CAPICOM 的替代方案都没有提供脚本解决方案。因此,您必须编写自己的ActiveX 控件。有关详细信息,请参阅 ActiveX 控件。
这表明 .Net 类并不是 CAPICOM 的“完全”替代品。所以你不能在 JavaScript 中使用“X509”类。
如果您想使用客户端私有证书来签署某些数据(假设哈希),则需要在客户端上运行代码。以下是您可以采取的一些想法:
当然,您需要在服务器端检索数据,对于最后一个解决方案,您可能需要一种 Web 服务。
结论
不要混淆证书中的私钥和公钥。在某些情况下,您需要将证书发送到服务器以进行身份验证等。但这就是你的公钥。你永远不应该发送你的私钥(当然从技术上来说这是可能的)。
| 归档时间: |
|
| 查看次数: |
2929 次 |
| 最近记录: |