首页 文章

如何以.pem格式保存证书中的公钥

提问于
浏览
45

我使用下面的openssl命令将我的公钥存储到.pem文件中 .

openssl> x509 -in E:/mycert.pem -pubkey  -out E:/mypubkey.pem

但是当我尝试使用此命令时,它将整个证书信息存储在mypubkey.pem文件中 .

我已经看到我可以使用保存我的公钥

openssl> x509 -pubkey -noout -in cert.pem > pubkey.pem

但这是一个错误 . 我不能使用“>”运算符 .

2 回答

  • 4

    有几种方法可以做到这一点 .

    首先,不要进入openssl命令提示符模式,只需在Windows提示符下的一个命令行中输入所有内容:

    E:\> openssl x509 -pubkey -noout -in cert.pem  > pubkey.pem
    

    如果由于某种原因,您必须使用openssl命令提示符,只需输入“>”之前的所有内容 . 然后OpenSSL将公钥信息打印到屏幕上 . 然后,您可以将其复制并粘贴到名为pubkey.pem的文件中 .

    openssl> x509 -pubkey -noout -in cert.pem
    

    输出看起来像这样:

    -----BEGIN PUBLIC KEY-----
    MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAryQICCl6NZ5gDKrnSztO
    3Hy8PEUcuyvg/ikC+VcIo2SFFSf18a3IMYldIugqqqZCs4/4uVW3sbdLs/6PfgdX
    7O9D22ZiFWHPYA2k2N744MNiCD1UE+tJyllUhSblK48bn+v1oZHCM0nYQ2NqUkvS
    j+hwUU3RiWl7x3D2s9wSdNt7XUtW05a/FXehsPSiJfKvHJJnGOX0BgTvkLnkAOTd
    OrUZ/wK69Dzu4IvrN4vs9Nes8vbwPa/ddZEzGR0cQMt0JBkhk9kU/qwqUseP1QRJ
    5I1jR4g8aYPL/ke9K35PxZWuDp3U0UPAZ3PjFAh+5T+fc7gzCs9dPzSHloruU+gl
    FQIDAQAB
    -----END PUBLIC KEY-----
    
  • 107

    如果是RSA密钥

    openssl rsa  -pubout -in my_rsa_key.pem
    

    如果您需要openssh格式,请参阅Use RSA private key to generate public key?

    请注意,公钥是从私钥生成的,ssh使用身份文件(私钥文件)生成公钥并将公钥发送给服务器,并通过身份文件中的私钥从服务器取消加密加密的令牌 .

相关问题