Acabo de darme cuenta de que, al usar openssl req - new -key foo.key -out newcert.csr, puedes tener un valor de CN vacío.
¿Cuál es el valor de eso?
Acabo de darme cuenta de que, al usar openssl req - new -key foo.key -out newcert.csr, puedes tener un valor de CN vacío.
¿Cuál es el valor de eso?
Porque es solo 'informativo' y solo tiene un significado en el caso de intercambios basados en sesiones.
Se puede usar un par de claves en un certificado para cifrar datos sin una sesión.
Ejemplo:
Cifras un archivo con tu clave privada y le das tu clave pública a algunas personas. El CN tiene un valor bajo para identificar la fuente, la clave pública en sí misma es suficiente para descifrar el archivo si está seguro de que proviene de una fuente confiable.
Esto permite la transferencia de archivos en protocolos de texto sin cifrar con un punto final de cifrado / descifrado. La CN tiene un valor bajo en este caso, ya que la clave debe coincidir.
De la RFC 5280 :
El nombre del sujeto PUEDE llevarse en el campo del sujeto y / o el Sujeto a la extensión del nombre de archivo.
No es obligatorio. De hecho, no siempre es necesario un campo de nombre común. Si crea una cadena de confianza privada, por ejemplo, para un certificado de clave previamente compartida, tiene en uso para este campo.
Lea otras preguntas en las etiquetas tls certificates