Un certificado para la autenticación del cliente y del servidor

1

¿Hay alguna razón por la que no deba emitir un certificado de entidad final con la autenticación del servidor web TLS y la autenticación del cliente web TLS?

¿Qué debería suceder si el certificado del cliente que debe autenticarse en el servidor web también contiene la autenticación del servidor web TLS?

¿Debo emitir 2 certificados diferentes? ¿Uno solo con Autenticación de cliente web TLS y el segundo solo con Autenticación de servidor web TLS?

¿Cuál es la mejor práctica y su experiencia?

    
pregunta user1563721 25.10.2016 - 19:44
fuente

2 respuestas

5

Desde un punto de vista normativo, RFC5280 no impone ninguna restricción al tener ambos usos de clave extendida establecidos en el mismo certificado.

Desde el punto de vista de la seguridad, tampoco existe un problema de cifrado / protocolo (que yo sepa / pueda encontrar) sobre el uso del mismo certificado para la autenticación SSL que el cliente (supongo que para conectarse a otros servicios) y el servidor ( para recibir conexiones). Dado que si utiliza dos certificados, ambos también se almacenarán en el mismo servidor, si un atacante puede robar uno de los certificados, puede robar dos, no hay ganancias ni pérdidas allí.

Sin embargo, no está de más mantenerlos separados también, especialmente si por alguna razón más adelante necesita cambiar una de las características de los certificados de una manera que podría afectar la funcionalidad de uno de los usos (por ejemplo, cambiar el DN para incluya algo relevante para la autenticación del cliente que podría romper la autenticación del servidor).

Siempre, en tales situaciones, mantengo ambas separadas, y si está hablando de PKI privadas, generalmente también utilizo diferentes CA para emitir cada una de ellas.

    
respondido por el CristianTM 25.10.2016 - 20:13
fuente
0

lo primero es cómo el otro extremo comprueba si el certificado que el otro extremo otorga es cliente o servidor, por lo que sabemos que es de EXTENDED KEY USAGE

Not Critical
TLS Web Server Authentication (1.3.6.1.5.5.7.3.1)
TLS Web Client Authentication (1.3.6.1.5.5.7.3.2)

Como puede ver, no es una extensión crítica, por lo que la facilidad de uso del certificado no depende de esta extensión

Es la extensión de uso de clave de certificado que impone restricciones

Critical
Signing
Key Encipherment

No se puede usar un certificado sin el campo "Firmar" para la autenticación, por lo que nunca se puede usar como certificado de servidor

de manera similar, un certificado sin cifrado de clave no se puede utilizar para intercambiar claves, ya que también hay otros parámetros

    
respondido por el 8zero2.ops 25.10.2016 - 20:33
fuente

Lea otras preguntas en las etiquetas