5

我正在构建一个 python 应用程序来从网站中提取数据。应用程序必须使用 CAC 卡和 pin 进行身份验证(HTTPS/SSL)才能发出请求。

我的假设是否正确,即您无法从 CAC 卡中检索私钥,因此无法使用 PKCS #11 Wrapper(如PyKCS)

有什么提示或资源可以解决这个问题吗?

4

3 回答 3

4

身份验证和签名密钥通常在卡上生成并且不可提取,这与可以/应该在某处托管的加密密钥不同。

有关使用 M2Crypto 的示例,请参阅需要使用 M2Crypto.Engine 访问 USB 令牌的帮助,该示例解释了如何通过 PKCS#11 使用智能卡在 python 中访问网站。

于 2010-03-03T06:21:00.520 回答
0

你是对的。这就是智能卡保护私钥安全的全部目的。如果您的应用程序在 Windows 中运行,您可以尝试使用 WININET.DLL 进行连接,安装正确的中间件后,它应该会自动处理对启用 CAC 的站点的身份验证。

于 2010-03-02T23:30:03.760 回答
0

我会尝试找出 ECA 证书是否是合适的替代品。例如,有些网站接受 CAC 和 ECA 证书。欲了解更多信息:http: //iase.disa.mil/pki/eca/certificate.html

于 2010-04-27T19:31:53.133 回答