我可以从 Windows 系统证书存储中获取私钥吗?

问题描述

我想使用 Windows 系统证书存储中的证书和私钥作为 Node.js(或通常的任何基于 OpenSSL 的环境)中的客户端 TLS 凭据。我知道我可以很容易地使用 Windows API 找到相关的 PCERT_CONTEXT 对象。但是,我显然也需要相应的私钥。

我的理解是 CryptAcquireCertificatePrivateKey() 会给我一个私钥的句柄(作为 HCRYPTPROVNCRYPT_KEY_HANDLE?我不完全清楚我是否可以控制什么我得到了,如果是这样,我应该使用它,但这似乎有点无关紧要),但 Windows API 中的任何内容都没有给我私钥数据本身。 CryptExportKey()NCryptExportKey() 函数允许我以加密形式获取数据:

  • 我可以将它们与虚拟目标键一起使用吗?
  • 这会被视为不好的做法吗?
  • 总体而言,这能作为一种策略吗?
  • 有更好的选择吗?

先谢谢你!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)