2011-05-08 9 views
8

Existen varias razones para revocar un certificado, el más popular es el compromiso de la clave privada.¿Cómo se maneja la revocación de un certificado raíz?

Mi pregunta es:
¿Qué sucede si es necesario revocar el certificado de una autoridad de certificación?

¿Significa esto que todos los certificados que ha firmado deben considerarse revocados?
Esto parece razonable, ya que a la CA se le emitirá un nuevo certificado, por lo tanto, un nuevo par de claves.

Por otro lado, ¿cuál sería el proceso para revocar y volver a emitir posiblemente cientos de certificados que la CA específica ya ha emitido hasta el momento?

Estoy confundido sobre las consecuencias de revocar un certificado de CA.
¿Podría alguien dar más detalles sobre esto?

Respuesta

0

No. Si se revoca el certificado de CA, sus certificados emitidos ya no se deben considerar 'firmados'.

+0

Entonces, en una implementación donde la CA comprometida ha emitido cientos de certificados, ¿cuál sería el proceso para renovarlos? ¿Existe un enfoque estándar? – Cratylus

8

No puede revocar un certificado de confianza (por ejemplo, una CA raíz), ya que cuenta con la firma automática de la CA y, por lo tanto, no existe un mecanismo confiable para verificar una CRL. Si una CA raíz está comprometida, es muy mala :-). Debe eliminar manualmente la CA de su tienda (o esto puede suceder mediante actualizaciones de navegador o sistema operativo si esos certificados de raíz fueron parte de esas distribuciones).

Revocar una CA cuyo certificado haya sido emitido por una de las CA raíz significa que todos los certificados emitidos por CA ya no son válidos. Esto ocurre durante el procesamiento del camino, comenzamos en el certificado que estamos tratando de verificar y luego construimos un camino hasta una raíz de confianza. Cada certificado en esa ruta debe tener sus diversas restricciones de ruta verificadas, y se debe usar una CRL (u otro mecanismo) para determinar si se han revocado. Si algún certificado falla, entonces toda la ruta se considera inválida.

Así que la respuesta corta es sí. Si se revoca el certificado de CA, todos los certificados emitidos (y así sucesivamente en la ruta) se deben considerar no válidos.

+0

Entonces, en la construcción del camino, la ruta se construye desde el certificado de destino hasta el delimitador de confianza. Entonces, la verificación de revocación se hace al revés. Desde la parte superior (excluyendo el ancla de confianza) al certificado de destino? – Cratylus

+0

¿Cuál sería el proceso (prácticamente) para volver a emitir todos los certificados emitidos por CA? – Cratylus

+0

No se realiza el procesamiento de CRL desde el certificado de objetivo/entidad final hasta la raíz a medida que se procesa la ruta. La única forma práctica de volver a emitir todos los certificados es revocar la CA, crear un nuevo certificado de CA y emitir nuevos certificados para cada entidad. Es una falla catastrófica, y por esta razón, los CA's deberían tratar de no revocar sus certs :-). –

5

Revocar un certificado significa lo siguiente: "aunque el contenido de ese certificado se vea bien, el certificado no se debe utilizar". Es una forma de "cancelar" la firma criptográfica en el certificado.

Antes de usar un certificado (es decir, utilizando la clave pública contenida en el certificado, por ejemplo, como parte de una conexión SSL), el certificado debe validarse, lo que significa que la firma en el certificado debe verificarse en relación con el público clave contenida en un certificado de CA. Esto implica utilizando el certificado CA, por lo que la firma en ese certificado también debe verificarse, y así sucesivamente, hasta una "CA raíz", también conocida como "ancla confianza", que se supone que siempre se verifica (está codificado en cualquier software que esté haciendo la verificación).

Si se revoca un certificado de CA, no se puede usar (ese es el punto de revocar un certificado: para que ya no se use). En particular, la validación de certificados ya no debería poder usar ese certificado de CA.Los certificados que emitió esa CA son no revocados: posiblemente, pueden ser verificables con otro certificado de CA que contiene la misma clave: un certificado de CA es como cualquier otro certificado, vincula un nombre con una clave pública; nada impide la existencia de varios certificados distintos que afirman que vinculante, y esta es una situación normal en el caso de "puente CA" (utilizado principalmente para que algunos certificados se puedan verificar con respecto a varios anclajes de confianza). Por supuesto, si se revoca el certificado de CA porque la clave privada de la CA fue robado, entonces el curso de acción razonable ha de revocar todos certificados emitidos a que CA y los certificados emitidos por que CA será ya no es verificable por nadie.

Por lo tanto, para resumir, revocar un certificado de CA no revoca todos los certificados emitidos por esa CA, pero impide verificar esos certificados a través de esa CA.

+0

1) ¿Entonces el resultado es que la ruta de validación se rompe, y entonces el certificado emitido será "inútil"? 2) No sabía que hubiera un caso en el que pudiéramos tener la misma clave pública con varios certificados. En este caso, la clave pública es la misma pero supongo que el sujeto dn es diferente. – Cratylus

+0

@ user384706: 1) Sí. 2) ¡Ojalá que no! El certificado vincula una clave a un nombre que debe ser _el_ propietario de la clave. Lo que podría tener es la misma clave y el mismo DN de sujeto, pero DN de emisor distinto (esto significa que dos CA afirman "esta es la clave pública de Bob" para el mismo Bob y la misma clave). –

+0

En este caso, hay varias rutas de validación, ¿no? En una pregunta simplificada, por ejemplo, si se ha revocado un certificado X y se utiliza el certificado X y su certificado de firma Y solo en la ruta de validación, ¿Hay algún caso en que un certificado más alto en la cadena pueda ser revocado, pero obtenemos, por ejemplo, desde el respondedor OCSP que el certificado X todavía está bien? – Cratylus

Cuestiones relacionadas