Courrier à confidentialité renforcée (PEM) est un format d'encodage en texte clair destiné aux objets cryptographiques – certificats X.509, clés privées, demandes de signature de certificat et chaînes de certificats – qui encapsule des données encodées en Base64 entre -----BEGIN X----- et -----END X----- lignes de délimitation. Bien qu'il ait vu le jour dans les années 1990 dans le domaine de la sécurité des e-mails, le format PEM est aujourd'hui le format de conteneur quasi universel pour les certificats et les clés TLS.
Points clés à retenir
- PEM encadre les données de certificat ou de clé encodées en Base64 entre les lignes BEGIN et END.
- Ce nom fait référence à une norme de chiffrement des e-mails des années 1990, aujourd'hui presque exclusivement utilisée pour les certificats.
- Le format texte brut facilite la copie, le collage et la gestion des versions des fichiers PEM.
- Versa Le gestionnaire et le VMS nécessitent des certificats CA et des clés au format PEM.
- Le format PEM encode les mêmes données X.509 que celles stockées sous forme d'octets dans le format binaire DER.
Sur cette page : Pourquoi est-ce important ?Comment ça marcheTypesPEM et VersaFAQ
Pourquoi le PEM est-il important ?
Les certificats et les clés sont des données binaires, mais les systèmes qui les transmettent – pièces jointes aux e-mails (cas d'utilisation initial du format PEM), fichiers de configuration, copier-coller dans une console – ne sont pas toujours adaptés au contenu binaire. Le format PEM recode cette structure sous forme de texte Base64 délimité par des lignes de séparation lisibles, ce qui permet à un certificat ou à une clé de rester intact lors de son transfert via des canaux de transmission de texte uniquement.
Cette portabilité a fait du format PEM le format d’échange par défaut dans l’écosystème TLS et PKI, même si son objectif initial – le chiffrement des e-mails conformément à la norme IETF de 1993 – ne s’est jamais imposé. OpenSSL, les serveurs web, les navigateurs et les équipements réseau lisent et écrivent tous au format PEM par défaut. C’est le format attendu lors du téléchargement d’un certificat d’autorité de certification (CA) sur un pare-feu ou lors de la configuration du protocole TLS mutuel entre des périphériques, notamment les nœuds Versa Director, VMS et VOS.
Qu'est-ce que le PEM ?
Un fichier PEM est un texte ASCII brut : une ligne d'en-tête, un corps encodé en Base64 avec un délimiteur de ligne à 64 caractères, et un pied de page correspondant – par exemple -----BEGIN CERTIFICATE----- … -----END CERTIFICATE-----. Le bloc Base64 correspond au codage binaire DER de l'objet, tel que défini par le schéma ASN.1, quel que soit ce qu'il représente : un certificat, une clé, une demande de signature ou une liste de révocation.
Ce nom provient de « Privacy Enhanced Mail », une norme de l'IETF publiée sous les numéros RFC 1421 à RFC 1424 en 1993, destinée au chiffrement et à la signature des e-mails sur Internet. Cette norme a été remplacée par S/MIME et PGP, mais son encodage de texte lui a survécu : la RFC 7468 a par la suite officialisé le même schéma « Base64 avec délimiteurs » comme encodage standard pour les structures X.509, PKCS et CMS – ce à quoi « PEM » fait désormais référence.
Types de fichiers PEM
A .pem Une extension peut correspondre à plusieurs types d'objets, qui se distinguent par le texte du délimiteur et non par le nom du fichier.
Certificats utilisation -----BEGIN CERTIFICATE-----; un fichier peut contenir un seul certificat ou une chaîne de certificats de niveau inférieur, intermédiaires et racines. Clés privées utilisation -----BEGIN RSA PRIVATE KEY----- (PKCS#1) ou -----BEGIN PRIVATE KEY----- (PKCS#8), et peut être chiffré. RSE utilisation -----BEGIN CERTIFICATE REQUEST----- et transmettre l'identité et la clé publique envoyées à une autorité de certification (CA) en vue de leur signature. CRL utilisation -----BEGIN X509 CRL----- et répertorier les certificats révoqués par une autorité de certification.
Il ne faut pas confondre PEM avec PKCS#12 (.pfx/.p12), un fichier binaire protégé par mot de passe – le format PEM conserve le texte en clair et sépare les certificats des clés.
PEM & Versa
Versa Ces systèmes nécessitent, à plusieurs étapes, des certificats et des clés au format PEM. Installation et configuration de VMS génère un ensemble complet de certificats – autorité de certification racine, autorité de certification intermédiaire, serveur et client – sous la forme de .pem fichiers ; root-ca-cert.pem est téléchargé dans le répertoire « Fichiers et dossiers » d’un nœud Director afin que les appareils VOS reconnaissent le service de messagerie « Versa » (VMS), tandis que server-cert.pem est téléchargé dans Director lors de la configuration du connecteur VMS pour TLS, qui nécessite le format PEM. Le Guide de déploiement du VMS basé sur HA traite de la génération et de la validation de cette même chaîne pour un cluster VMS à haute disponibilité.
Le format PEM est également utilisé lors des opérations de maintenance : la mise à niveau des nœuds Versa vers Ubuntu 18.04 nécessite que tout certificat d'interface utilisateur de remplacement soit au format PEM, et l'accès aux nœuds du cloud public s'effectue via SSH à l'aide d'un fichier de clé au format PEM.
Questions fréquentes
Que signifie l'acronyme PEM ?
PEM est l'acronyme de « Privacy-Enhanced Mail », une norme de l'IETF datant de 1993 (RFC 1421–1424) relative au chiffrement et à la signature des e-mails sur Internet. Cette norme n'a pas été largement adoptée, mais son encodage Base64 avec délimiteurs a été réutilisé pour les certificats et les clés, et c'est à cela que le terme « PEM » fait désormais couramment référence.
En quoi un fichier PEM diffère-t-il d'un fichier DER ?
Les deux formats encodent les mêmes données sous-jacentes – généralement un certificat ou une clé –, mais le format DER est un format binaire brut, tandis que le format PEM correspond à ces mêmes données encodées en Base64 et placées entre -----BEGIN-----/-----END----- lignes. Le format PEM est compatible avec le texte ; le format DER est plus compact, mais ne peut pas être ouvert sous forme de texte.
Un fichier PEM peut-il contenir plusieurs certificats ?
Oui. Un fichier PEM permet de concaténer plusieurs -----BEGIN CERTIFICATE-----/-----END CERTIFICATE----- des blocs enchaînés pour former une chaîne de certificats complète – généralement le certificat de niveau inférieur du serveur, suivi d’un ou plusieurs certificats intermédiaires, et parfois également du certificat de l’autorité de certification racine.
Une clé privée PEM est-elle toujours chiffrée ?
Non. Une clé privée PEM peut être stockée en clair, lisible par toute personne ouvrant le fichier, ou chiffrée à l'aide d'un mot de passe en utilisant des en-têtes tels que Proc-Type: 4,ENCRYPTED ou le -----BEGIN ENCRYPTED PRIVATE KEY----- format. Les clés non chiffrées doivent être associées à des droits d'accès restrictifs.
Quelles sont les extensions de fichier utilisées pour les fichiers encodés au format PEM ?
.pem est le plus courant, mais .crt, .cer (certificats), .key (clés privées), et .csr (les demandes de signature) sont elles aussi souvent encodées au format PEM. L'extension n'est qu'une convention de nommage : il suffit d'ouvrir le fichier et de vérifier si -----BEGIN-----/-----END----- Les délimiteurs constituent le moyen le plus fiable de vérifier l'encodage.
En savoir plus sur le PEM
Si vous souhaitez en savoir plus, voici des sources auxquelles nous faisons confiance.
| RFC 7468 : Codages textuels des structures PKIX, PKCS et CMS | RFC 1421 : Renforcement de la confidentialité du courrier électronique sur Internet |
|---|---|
| La norme IETF actuelle définissant les balises BEGIN/END et le codage Base64 utilisés pour les certificats, les clés et d'autres structures PKIX et PKCS. | La norme de 1993 qui a introduit l'encodage Base64 BEGIN/END, dans le cadre d'un système de chiffrement des e-mails qui a par la suite été abandonné dans la pratique. |
Termes associés
Si vous vous intéressez au PEM, voici quelques liens qui pourraient vous intéresser.
| Nom alternatif du sujet | SD-WAN | Réseau étendu |
|---|---|---|
| Une extension de certificat répertoriant les noms d'hôte ou les adresses IP pour lesquels un certificat est valide – champ que les clients TLS vérifient à la place du nom commun. | Une approche réseau qui met en place des réseaux superposés chiffrés sur des liaisons WAN – réseaux superposés dont la sécurité est assurée par des certificats et des clés codés au format PEM. | Les liaisons haut débit, MPLS ou sans fil qu'un appareil VOS utilise pour se connecter à Internet ou à des sites distants, souvent sécurisées par des certificats PEM. |