【问题标题】:CAC Client Application Authentication in PythonPython 中的 CAC 客户端应用程序身份验证
【发布时间】:2011-01-22 22:10:51
【问题描述】:

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

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

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

【问题讨论】:

    标签: python smartcard pkcs#11 cac


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      有关 M2Crypto 的示例,请参阅 Need help using M2Crypto.Engine to access USB Token,该示例解释了如何通过 PKCS#11 使用智能卡在 python 中访问网站。

      【讨论】:

        【解决方案3】:

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-11-03
          • 2011-04-30
          • 1970-01-01
          • 2022-06-13
          • 2013-11-05
          • 1970-01-01
          • 2012-12-07
          相关资源
          最近更新 更多