Sto cercando di utilizzare la riga di comando di OpenSSL per generare una chiave pubblica ECDH che soddisfi le seguenti specifiche:
Use a Base64 encoded X.509 SubjectPublicKeyInfo structure containing a ECDH public key for group P256
I seguenti comandi mi forniscono una chiave:
openssl ecparam -name prime256v1 -out prime256v1.pem
openssl ecparam -in prime256v1.pem -genkey -noout -out prime256v1-key.pem
openssl ec -in prime256v1-key.pem -pubout -out pubkey.pem
Key: MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE85KGK3YiX7tC7mFm+Te1xRYOeDq23h80MPPt1nMZ/ZRpwjRGPEUr6vaoOCB8QC3uHmaPKOAgQ0Kk9Sc4M1QUmA==
Tuttavia questa chiave non viene accettata dall'API a cui sto accedendo.
Un esempio di chiave che funziona è:
MDkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDIgACKoJz0lSBocGMsdl8TiMasRsBOxpMywCqzAoOLwZfUl0=
Questa chiave di esempio è 44 byte (Base64) più corti e ha una firma SubjectPublickKeyInfo
leggermente diversa.
La mia domanda è quale sia la differenza tra queste due chiavi e come potrei usare gli strumenti della riga di comando di OpenSSL per generare una tale coppia di chiavi.