PEM significa Correo con privacidad mejorada , pero el formato de archivo ha superado el acrónimo. El formato "PEM" es un método para codificar datos binarios en texto, de modo que los datos puedan sobrevivir al transporte a través de un medio que está basado en texto y no es muy cuidadoso con los datos (generalmente correos electrónicos).
Básicamente, PEM comienza con un encabezado:
-----BEGIN FOOBAR-----
seguido de la codificación Base64 de los datos binarios, y una línea de pie de página que marca el final del elemento:
-----END FOOBAR-----
Por lo tanto, el formato PEM es bastante genérico, y hay que mirar el encabezado para saber lo que realmente tiene en el archivo.
En su caso, debe hacer una distinción entre el certificado y la clave privada . El certificado es la parte pública; es algo que el cliente y el servidor SSL se envían entre sí durante el protocolo de enlace inicial. Los certificados pueden viajar por correo electrónico; Ya que contienen solo datos públicos y además están firmados, no necesitan ninguna protección adicional.
Las claves privadas son otro negocio. En el protocolo de enlace SSL, el cliente envía al servidor una copia del certificado (para que el servidor pueda conocer cuál es la clave pública del cliente), y luego el cliente demuestra su dominio de la clave privada correspondiente (internamente, se calcula una firma). sobre un desafío desde el servidor). La clave privada es lo que hace que el cliente sea "especial": el atacante no lo sabe. Si el atacante conocía la clave privada, entonces podría hacerse pasar por el cliente, y eso es exactamente lo que quiere evitar.
Por lo tanto, el envío de una clave privada "tal cual" por correo electrónico no debería ocurrir realmente .
Sin embargo, en su situación, desea que el cliente ("el desarrollador en otro estado") obtenga el certificado y la clave privada. Por lo tanto, necesita una forma de transmitir tanto el certificado como la clave privada a ese cliente. El método habitual utiliza el formato PKCS # 12 , que permite el cifrado basado en contraseña:
- Envuelva el certificado y su clave privada en un archivo PKCS # 12 protegido con una contraseña enorme, grande y muy aleatoria.
- Envíe el archivo resultante (llamado convencionalmente ".p12" o ".pfx") al destinatario.
- Llame al destinatario para darle la contraseña, para que pueda descifrar el paquete y así obtener el certificado y la clave privada.
Si no hay nadie disponible en su organización, quién sabe qué es un certificado o una clave privada, entonces tiene un problema. Es decir, que está utilizando la criptografía sin entenderlo. En algún momento tenías un "experto en seguridad": recupéralo. La seguridad no tolera bien la improvisación.