Erlang:如何使用CA证书和私钥对'CertificationSigningRequest'进行签名

问题描述 投票:2回答:1

我需要在服务器上签名来自受信任客户端的CSR,并附带我拥有的证书及其私钥。

在命令行中,我会做类似的事情

openssl x509 -req -in ClientCSR.csr -CA MyCert.crt -CAkey MyPrivateKey.key -out ClientCert.crt -days 365 -sha256 -set_serial 5

我正在努力从erlang做到这一点。

public_key:pem_entry_decode解析,CSR给了我'CertificationRequest'记录,我真的不知道该如何进一步使用。

阅读public_key.erl文档,我想我应该使用public_key:pkix_sign,但这需要'OTPTBSCertificate'记录作为输入(以及我确实拥有的私钥)。

我可以采取什么措施将我的'CertificationRequest'转换为'OTPTBSCertificate'吗?还是那不是要走的路?谢谢!

erlang x509 csr
1个回答
0
投票

作为参考,如果有人读了这个问题,我最终找到了可以做我想做的要点https://gist.github.com/emtenet/b48f948102d9a4904a78

基本上,我手动提取所需的片段(主题和私钥),创建一个TBSCertificate,对其进行签名,并由此创建一个x509证书

© www.soinside.com 2019 - 2024. All rights reserved.