mercoledì 15 novembre 2006

Estrarre chiavi e certificati in formato "pem" da un file PKCS#12

Ancora una cosa facile facile ma che ogni volta mi costringe a navigare sul sito di openssl (che consiglio comunque di visitare!) .
Ipotizziamo di avere un file PKCS#12 protetto con password, e di voler esportare la chiave privata ed il certificato utente in file in formato "pem" (il formato, per intenderci, utilizzato da Apache).

Con openssl:
> openssl pkcs12 -in pkcs12.p12 -nocerts -out key.pem

dove pkcs12.p12 è il nome del file PKCS#12 di origine, ed il file key.pem è quello destinato a contenere la chiave privata. Verrà richiesta una password per decifrare il PKCS#12 ed una nuova per cifrare il file key.pem.

Esportiamo adesso il certificato utente:
>openssl pkcs12 -in pkcs12.p12 -clcerts -nokeys -out cert.pem

dove pkcs12.p12 è il nome del file PKCS#12 di origine, ed il file cert.pem è quello destinato a contenere il solo certificato utente. Verrà richiesta una password per decifrare il PKCS#12.

Talvolta, i file PKCS#12 contengono, oltre ai certificati utente, anche quelli della CA che li ha emessi. Esportiamo quindi anche questo certificato:
>openssl pkcs12 -in pkcs12.p12 -cacerts -nokeys -out cacert.pem

dove pkcs12.p12 è il nome del file PKCS#12 di origine, ed il file cacert.pem è quello destinato a contenere il certificato della CA. Verrà richiesta una password per decifrare il PKCS#12.

Alla prossima!

Eventi a cui partecipo