基于具有 x509v3 扩展的现有证书生成证书签名请求

Mik*_*sel 5 ssl tls

通过 openssl,我尝试使用包含 X509v3 扩展(特别是 SAN)的现有证书生成 CSR。我可以通过运行创建新的 CSR

openssl x509 -x509toreq -in certificate.crt -out CSR.csr -signkey privateKey.key
Run Code Online (Sandbox Code Playgroud)

然而,当我跑步时

openssl req -text -noout -verify -in CSR.csr
Run Code Online (Sandbox Code Playgroud)

我没有看到证书中包含任何 X509v3 扩展。这可能吗?

gar*_*Red 1

man x509

错误

证书中的扩展不会传输到证书请求,反之亦然。

这表明这是不可能的。

  • 我相信这个错误现在已经得到解决,在 openssl 3.0.0 中,您可以使用“copy_extensions”选项来保留备用名称。[ https://www.openssl.org/docs/manmaster/man1/openssl-x509.html#copy_extensions-arg ] 示例:openssl x509 -x509toreq -copy_extensions copyall -inform DER -in myapp_cert.cer -signkey my_private.key -出 myapp-new.csr (3认同)