Ottenere il file .cer dal file .pem


13

Ho generato la chiave privata RSA usando il comando seguente:

openssl genrsa -out privkey.pem 2048

E creato un certificato autofirmato usando il comando seguente:

openssl req -new -x509 -key privkey.pem -out cacert.pem -days 3650

Ora sto cercando di convertire il file .pem cacert in certificato .cer

Qualche idea?


1
Secondo support.ssl.com/Knowledgebase/Article/View/19/0/… .pem è una codifica ed .cerè un'estensione. In breve: un .cerfile può contenere sia una PEMche una DERcodifica. Di cosa hai bisogno esattamente? (Il link dovrebbe aiutarti.)
Fabian,

Ho trovato il comando per creare un certificato autofirmato da questo link: openssl.org/docs/HOWTO/certificates.txt Ecco il testo completo: Se non si desidera trattare con un'altra autorità di certificazione o si desidera semplicemente creare un certificato di prova per te. Ciò è simile alla creazione di una richiesta di certificato, ma crea un certificato anziché una richiesta di certificato.
Devarshi,

Questo in realtà non risponde a ciò di cui hai bisogno: qual è lo scopo del certificato che generi? Forse un server HTTPS? O autenticazione personale per alcune applicazioni? Ma penso che tu abbia già abbastanza buone risposte di seguito per quello che hai chiesto.
Fabian,

Lo scenario è: stiamo creando una coppia di chiavi pubblica-privata sull'app per Android e dobbiamo condividere la chiave pubblica con un'app per iOS, l'unico modo che ho trovato per condividerla è tramite un certificato autofirmato. Le API di iOS estraggono la chiave pubblica dal certificato con questa estensione (un esempio): some_certificate.cer. Per ora sto cercando di generare some_certificate.cer attraverso il terminale e convalidare se è in grado di estrarre la chiave pubblica da esso ed eseguire la crittografia usando lo stesso.
Devarshi,

Non posso aiutarti con cose iOS. Ma la mia comprensione è che l'estensione .cer è utilizzata solo da Microsoft. Se le risposte di seguito non ti aiutano, potresti chiedere in un posto relativo alla programmazione iOS.
Fabian,

Risposte:


37

Puoi usare il seguente comando:

openssl x509 -inform PEM -in cacert.pem -outform DER -out certificate.cer

2

.cer è un tipo di file per la codifica DER o Base64, se ricordo bene.

openssl x509 -in cacert.pem -out cacert.cer -inform pem -outform der per il formato DER.


1

L'estensione effettiva non ha importanza per i certificati. Di solito i file .pem hanno un certificato x509 in forma codificata base64. I file .cer possono essere codificati in base64 o DER (entrambi riconosceranno Windows). A seconda dell'applicazione, dovrai scoprire quale formato di certificato richiede l'applicazione.

Per convertire tra base64 (PEM) e codifica DER:

openssl x509 -in cert.pem -outform pem -outform der -out cert.cer
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.