如何从给定的密钥和十六进制格式的证书链创建证书文件?

问题描述

我需要在 Windows 凭据管理器中获取模块(C++ 类)的证书(这是一项要求)。 到目前为止,证书在源代码(十六进制代码)中存储为字节数组。 不,我得到了将证书放入 Windows 凭据管理器的任务。 因此,我需要获取所有数据并创建一个文件“ofAnyMagicKind”,以便我可以将证书安装到 Windows 凭据管理器中。

有多种文件格式,即 cer 或 pem 文件,但我不知道如何创建它们 - 手动从头开始。我试图在 notepad++ 的帮助下将数据放入 pem 文件格式。我已经复制并粘贴了十六进制字符串。将十六进制字符串转换为 ASCII,然后将其编码为 base64。但是,我似乎无法将文件导入/安装到 Windows 凭据管理器中。

更准确地说,对于一个模块证书(源代码),我将以下项目放入一个或多个证书文件中。

  • 公钥作为十六进制字符串
  • 私钥作为十六进制字符串
  • 设备证书(模块的)作为十六进制字符串 然后是证书颁发机构链
  • 根 CA 作为十六进制字符串
  • 工厂 CA 作为十六进制字符串
  • 设备 CA 作为十六进制字符串

我在 microsoft docs 上阅读了有关 X.509 格式的信息: https://docs.microsoft.com/en-us/windows/win32/seccrypto/encoding-and-decoding-a-certificate-context 关于微软的 CryptAPI。

也许我应该使用 MS CryptAPI 将证书放入证书存储区(这可能是凭证管理器)。使用 CryptAPI,我可以创建一个证书并管理它们,但我需要将现有数据合二为一。这可能是要走的路吗?

非常感谢任何帮助!

最好的问候, 托比亚斯

解决方法

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

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

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...