As chaves privadas Ed25519 podem ser geradas fazendo openssl genpkey -algorithm ed25519 -outform PEM -out private.pem
. Minha pergunta é... usando o OpenSSL existe uma maneira de obter a chave pública da chave privada?
Com as chaves privadas RSA você pode fazer openssl rsa -in private.pem -pubout
. Isso fornece uma chave que corresponde a SubjectPublicKeyInfo em RFC5280 (pelo menos para mim).
Mas como eu poderia obter uma chave pública semelhante para as chaves Ed25519? Acho que poderia gerar um CSR com a chave privada e obtê-lo do CSR, mas isso parece muito trabalhoso. Certamente é muito mais trabalho do que executar um único comando ...
A formatação é idêntica ao comando RSA, mas usa o comando pkey:
Você também pode fazer isso para visualizar o algoritmo que foi detectado no arquivo de chave privada, bem como os bytes brutos das chaves: