¿Cuál es la base específica que le permite a una entidad conectar una cadena de certificados a una raíz confiable?

2

Digamos que quiero validar una entidad que presenta un certificado X509v3, "Hoja". Leaf es un certificado firmado por SigningCA. RootCA firmó el certificado de SigningCA, "SigningCert". El certificado de RootCA, "RootCert" se encuentra en el almacén de confianza de mi sistema.

  • Extraigo Leaf y veo que está firmado por SigningCA. Específicamente, el enlace es que en la sección "Acceso a la información de la autoridad" de Leaf, 'Emisores de CA' contiene una URL que puedo seguir para desplegar el certificado de SigningCA, SigningCert. Así que voy y lo saco hacia abajo y hago la validación. Todo está bien.

  • Pero ahora quiero comprobar que SigningCA es legítimo. Tiene su propio campo de Emisores de CA que me indica el certificado de RootCA, RootCert.

Ahora mi pregunta: para validar, ¿necesito extraer esta URL o es suficiente que RootCert esté en mi almacén de confianza y tiene alguna propiedad que permite una comparación rápida con lo que ya tengo? ?

Parece (de algunos experimentos con navegadores) que no es necesario tirar el RootCert, lo que me hace pensar que están comparando algún campo en SigningCert con algo presente en todos los certificados en el almacén de confianza y reportando el éxito si hay una coincidencia. encontró. Si es así, ¿qué es esa cosa?

    
pregunta AlwaysLearning 17.10.2018 - 05:10
fuente

2 respuestas

2
  

Parece (a partir de algunos experimentos con navegadores) que no es necesario extraer el RootCert

La idea es que finalmente (es decir, la raíz) confía solo en una CA que ya se sabe que es buena (es decir, en el almacén de confianza local) y no confíe ciegamente en ningún certificado de CA arbitrario descargado de Internet. Por lo tanto, extraer el certificado raíz de Internet no solo es "no requerido" sino que sería incorrecto hacerlo.

El proceso para determinar qué CA raíz es la correcta es esencialmente el mismo que con un certificado de CA intermedio: asegúrese de que el emisor, el Identificador de Clave de Autoridad y el emisor coincidan y validen la firma. La diferencia importante en comparación con una CA intermedia es que la CA raíz se usará como el principal anclaje de confianza y, por lo tanto, ya debe ser confiable, lo cual no es el caso de algo descargado ciegamente de algún lugar o dado por el interlocutor de comunicación (que aún no es de confianza) .

Para obtener más detalles sobre cómo se realiza la validación de certificados, consulte Marco de certificados SSL 101: ¿Cómo verifica el navegador realmente la validez de un certificado de servidor dado? .

    
respondido por el Steffen Ullrich 17.10.2018 - 06:36
fuente
1

Usted tiene razón en que el certificado de la CA raíz, que ya está presente en el almacén de confianza del cliente, no necesita ser recuperado de una ubicación externa. Hay algunas formas en que un cliente puede buscar un certificado de CA en su almacén de confianza.

  • Nombre común (CN): el campo "Emisor" del certificado proporciona el CN del firmante. Si bien los CN no tienen que ser únicos, en la práctica no debe tener CN duplicados en su almacén de confianza, por lo que verificar sus certificados de confianza para uno o más CN con ese CN, y ver si su clave pública verifica el certificado en cuestión, es Todavía lo suficientemente rápido como para ser práctico. Para los certificados X.509v1, este es el enfoque más práctico.
  • Identificador de clave de autoridad : este es un campo de extensión que presenta un identificador para la clave de firma (creo es más a menudo simplemente un hash de los bits de clave pública del firmante). Nuevamente, los duplicados son técnicamente posibles (varios certificados podrían compartir un par de claves, aunque esto significa que cada titular del certificado podría hacerse pasar por el otro; las probabilidades de que esto suceda con los certificados generados de forma independiente son astronómicamente bajas) pero no deberían ocurrir. En la práctica, puede buscar el certificado de firma de un certificado v3 buscando un certificado con un identificador de clave de sujeto que coincida con el identificador de clave de autoridad del certificado a validar.
respondido por el CBHacking 17.10.2018 - 05:56
fuente

Lea otras preguntas en las etiquetas