Как сохранить открытый ключ из сертификата.формат pem

Я использую приведенную ниже команду openssl для хранения моего открытого ключа в a .файл pem.

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

но когда я пытаюсь использовать эту команду, она хранит всю информацию о сертификате в mypubkey.файл pem.

Я видел, что могу сохранить свой открытый ключ с помощью

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

но это бросает ошибку. Я не могу использовать оператор">".

2 ответов


есть несколько способов сделать это.

во-первых, вместо перехода в режим командной строки openssl, просто введите все в одной командной строке из командной строки Windows:

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

Если по какой-то причине вам нужно использовать командную строку openssl, просто введите все до ">". Затем OpenSSL распечатает информацию об открытом ключе на экране. Затем вы можете скопировать его и вставить в файл под названием pubkey.УГР.

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

вывод будет выглядеть что-то вроде этого:--4-->

-----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-----

если это ключ RSA

openssl rsa  -pubout -in my_rsa_key.pem

Если вам это нужно в формате openssh, пожалуйста, смотрите использовать закрытый ключ RSA для создания открытого ключа?

обратите внимание, что открытый ключ создается из закрытого ключа, а ssh использует файл идентификатора (файл закрытого ключа) для создания и отправки открытого ключа на сервер и отмены шифрования зашифрованного токена с сервера через закрытый ключ в файле идентификатора.