【问题标题】:How is an openssl public key created?如何创建 openssl 公钥?
【发布时间】:2018-10-16 18:40:53
【问题描述】:

我正在按照以下步骤使用openssl生成一个证书和一个pkcs12文件:

//Create key
openssl genrsa -aes256 -out mykey.key 2048

//Create csr
openssl req -config openssl.cnf -key mykey.key -new -sha256 -out mycsr.csr

//Create cert
openssl ca -config openssl.cnf -extensions usr_cert -days 375 -notext -md sha256 -in mycsr.csr -out mycert.pem

//Create pkcs12 file
openssl pkcs12 -export -in mycert.pem -inkey mykey.key -out myp12.p12 -name NAME -CAfile ca.pem -caname MYCA

虽然我能够使用我生成的证书连接到我的服务器,但我对实际创建的内容感到困惑。我假设公钥/私钥对由证书本身和私钥表示,但我最近读到需要创建私钥才能创建 csr。所以我的问题是:

1:在csr创建过程中是否隐式创建了公钥?

2:如果创建了公钥,为什么我的 pkcs12 文件不需要它?还是我最初假设证书是公钥是正确的?

我提出这个问题的主要重点是避免潜在地暴露我的私钥。感谢您提前提供任何答案。

【问题讨论】:

    标签: openssl pkcs#12


    【解决方案1】:

    似乎您可以在此线程上找到有关您的第一个 questino 的所有答案

    Use RSA private key to generate public key?

    关于第二个问题... X509 证书不是公钥本身,而是 X509 证书将公钥绑定到身份(证书的主体)。 因此,当您创建 pkcs#12 文件时,您将放入证书和私钥,然后您还使用您的命令放入 Certificate Autority 证书。

    希望对你有帮助。

    塞巴

    【讨论】:

      猜你喜欢
      • 2017-11-12
      • 2019-06-18
      • 1970-01-01
      • 1970-01-01
      • 2014-03-11
      • 2011-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多