convertir_un_certificat_der_en_pem
Convertir un certificat TLS de DER en PEM
On oublie trop souvent que c'est le contenu d'un fichier qui porte l'encodage utilisé dans ce fichier et non l'extension du nom de fichier ;)
Le cas d'utilisation est celui où l'on dispose d'un certificat encodé en DER alors qu'on souhaite disposer du même certificat encodé en PEM. Pour compliquer les choses, le fichier de départ utilise l'extension “.crt” qui ne rien de l'encodage
OpenSSL permet d'effectuer la conversion :
$ openssl x509 -inform DER -in my_cert.crt -outform PEM -out my_cert.pem -text
- -inform DER est indispensable pour que openssl décode le certificat1)
- -outform PEM est optionnel dans cet exemple car openssl se basera sur l'extension du fichier de sortie, mais ce paramètre devient indispensable si vous souhaitez choisir une autre extension qui vous convient mieux
- -text est purement optionnel; si l'option est présente, on récupère toutes les informations contenues dans le certificat ; si elle est absente, le fichier de sortie ne contiendra que le certificat.
Un moyen rapide de savoir si votre certificat est encodé en DER est :
- en ligne de commande : file my_cert.crt renverra “data” si c'est du DER et “ASCII TEXT” si c'est du PEM
- en mode graphique, ouvrir le fichier avec un éditeur de texte et constater si le contenu est intégralement lisible.
En savoir plus
- PEM, DER, CRT, and CER: X.509 Encodings and Conversions (en) (ssl.com)
- How to convert a certificate into the appropriate format (en) (digicert.com)
1)
Un message d'erreur pour indiquera qu'openssl n'arrive pas à lire le certificat si vous avez oublié cette option.
convertir_un_certificat_der_en_pem.txt · Dernière modification : 2021/01/22 14:07 de 127.0.0.1