如何在Windows平台通过编程调用USB key完成SSL连接?

我在公司登录网站需要用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模块能否完成我的需求?如果是,有无可供参考的文档或者例子代码?
非常感谢!


SSL使用USBKey证书的需求分析(转)_xiliang_pan的博客-CSDN博客 背景很多系统,如炒股软件采用客户端/服务器结构,用户安装客户端炒股软件在本地计算机,并与证券公司的服务器系统连接,以完成股票的买卖等操作。客户端与服务器端采用SSL安全通道连接,以防止第三方窃听和篡改通信的内容。但连接时不使用双向认证或者只使用文件证书来进行双向认证。这样做会存在一些风险。1、 任何人获取了本地主机的访问权限就可以连接到服务器端。2、 文件证书保存在本地计算机的磁盘 https://blog.csdn.net/xiliang_pan/article/details/9045185