El cuerpo es base64 estándar (no base64url) de los bytes DER, por convención en líneas de 64 caracteres. Entre las etiquetas del RFC 7468 están CERTIFICATE, X509 CRL, CERTIFICATE REQUEST, PKCS7, CMS, PRIVATE KEY (PKCS #8), ENCRYPTED PRIVATE KEY y PUBLIC KEY (SPKI). Los formatos tradicionales de OpenSSL añaden RSA PRIVATE KEY, EC PRIVATE KEY y RSA PUBLIC KEY, y las claves cifradas antiguas llevan los encabezados Proc-Type: 4,ENCRYPTED y DEK-Info, heredados del estándar Privacy-Enhanced Mail (correo con privacidad mejorada) de 1993.
Un archivo PEM puede contener varios objetos: una cadena de certificados (primero el certificado hoja) o una clave seguida de su certificado. Se admite texto antes de los bloques o entre ellos, y por eso la salida de openssl x509 -text puede ir junto al base64.
Los errores habituales vienen de la etiqueta, no del base64: no start line (etiqueta incorrecta o un archivo DER pasado como PEM), expecting: ANY PRIVATE KEY (una clave pública donde se esperaba una clave privada), daños por CRLF o espacios en blanco, y la falta del salto de línea final en los analizadores estrictos. La conversión no pierde información: openssl x509 -outform DER y viceversa.