Le corps est le base64 standard (et non base64url) des octets DER, par convention en lignes de 64 caractères. Les étiquettes de la RFC 7468 comprennent CERTIFICATE, X509 CRL, CERTIFICATE REQUEST, PKCS7, CMS, PRIVATE KEY (PKCS #8), ENCRYPTED PRIVATE KEY et PUBLIC KEY (SPKI). Les formats traditionnels d’OpenSSL ajoutent RSA PRIVATE KEY, EC PRIVATE KEY et RSA PUBLIC KEY, et les anciennes clés chiffrées portent les en-têtes Proc-Type: 4,ENCRYPTED et DEK-Info, hérités de Privacy-Enhanced Mail, la messagerie à confidentialité renforcée de 1993.
Un fichier PEM peut contenir plusieurs objets : une chaîne de certificats (feuille en premier) ou une clé suivie de son certificat. Du texte avant les blocs ou entre eux est autorisé, ce qui permet à la sortie de openssl x509 -text de figurer à côté du base64.
Les erreurs courantes viennent de l’étiquette, pas du base64 : no start line (mauvaise étiquette ou fichier DER passé comme PEM), expecting: ANY PRIVATE KEY (une clé publique là où une clé privée était attendue), des CRLF ou des blancs parasites, et un saut de ligne final manquant pour les parseurs stricts. La conversion se fait sans perte : openssl x509 -outform DER, et inversement.