使用量子后公钥算法在C中创建X509证书



我正在尝试实现使用后Quantum(PQ(公共密钥算法作为公共密钥算法的Self Signed X509证书。我查看了C中的OpenSSL库,以及使用RSA完成的方式。我本质上是在尝试复制相同的格式。从我在OpenSSL库中看到的内容,RSA和其他几个受支持的算法都集成在加密EVP层中(键存储为EVP_PKEY(。我要使用的OPENSL库中的功能是X509_req_set_pubkey(X509_REQ *X,EVP_PKEY *PKEY(,还有一些具有非常相似输入的功能。有没有办法将PQ算法集成到EVP层中?如果没有,是否有任何方法可以使用可以实现相同目标的EVP层?

我尝试查看OpenSSL库中的EVP源代码。看来它仅支持某些算法,例如RSA,EC ...我不确定是否可以将PQ算法合并到EVP层中。我在此链接中遵循示例:( https://www.codepool.biz/how-to-use-use-openssl-to-generate-x-509-certificate-request.html(生成证书。我只是插入PQ算法密钥,而不是RSA键。到目前为止,当我创建证书时,它总是以错误的格式输出。

我正在使用此命令:openssl x509 -in x509Req.pem -text -noout读取证书生成。它总是显示错误消息

unable to load certificate n 140688586052032:error:0906D06C:PEM routines:
PEM_read_bio:no start line:../crypto/pem/pem_lib.c:691:Expecting: TRUSTED CERTIFICATE

EVP API使用"引擎",以实现所有对称算法(密码(,消化和非对称算法(公共密钥算法(。可以添加/更换发动机模块。请参阅openssl引擎命令。

我认为这是您想看的领域。我认为该区域周围没有很多文档(我可以找到(,但是您可以研究一些样品引擎。

如果您下载了openssl源,则可以在引擎文件夹中查找样品引擎,可以用来开始实现自定义算法(S(。

祝你好运!

最新更新