我在公司登录网站需要用USB key,在浏览器上点击登录时,浏览器会弹窗提示选择证书,之后需要输入USB key的密码(或者有的地方又称PIN),然后才能成功登录。
我想用编程方式完成登录,目前用Python,但无论是requests库还是ssl库,都没有发现类似的API。我在Python的ssl库发现函数ssl.enum_certificates可以查看到我的USB key 证书,或者用pywin32的CertOpenStore之类的函数也可以找到我的USB key证书,但都没有把证书应用到ssl连接的方法。
我是不是应该自己实现ssl的握手过程?如果是,需要哪些库或者API来调用USB key进行加密和签名等操作?
或者有没有办法直接将ssl和certstore结合起来,自动完成ssl连接?比如OpenSSL的engine模块能否完成我的需求?如果是,有无可供参考的文档或者例子代码?
非常感谢!