¿Cómo revoca los certificados una CA fuera de línea?

3

Si una clave privada RSA de una CA raíz se almacena fuera de línea, ¿cómo revoca los certificados que firma?

Al observar la configuración de OpenSSL, la opción default_crl_days parece indicar que una CRL se debe regenerar cada x de días. Para una CA fuera de línea, esto podría significar que alguien tendría que hacer esto manualmente en este intervalo.

¿Esto es correcto o se supone que default_crl_days es un TTL para que los clientes vuelvan a verificar la CRL? ¿Hay alguna forma de evitar la regeneración de la CRL si nada ha cambiado?

    
pregunta Luke 30.04.2013 - 21:11
fuente

1 respuesta

5

Una CA debe publicar CRL con regularidad, y si la CA está fuera de línea, entonces se necesita la intervención humana. Cada CRL tiene una fecha de emisión ( thisUpdate ) y una fecha provisional de la próxima publicación ( nextUpdate ) que todos usan como fecha de final de validez de la CRL. La próxima CRL debe ser publicada antes de llegar a la fecha nextUpdate de la CRL actual; de lo contrario, los verificadores comenzarán a rechazar los certificados.

La práctica común es tener una CA raíz fuera de línea que emita un CRL de larga duración (por ejemplo, un CRL cada tres meses, con un nextUpdate establecido en el tiempo actual + 4 meses). Esa CA raíz se usa para emitir un solo certificado, para una CA intermedia , que está en línea, y hace la mayor parte de la emisión de certificados (y esa CA intermedia publica CRL mucho más regularmente). La CA raíz fuera de línea se mantiene como un "último recurso": si la CA intermedia está comprometida, entonces la raíz puede revocarla, por lo que hay un "período malo" para sufrir (hasta el final de la validez de la CRL raíz actual, en la mayoría), pero la distribución de la clave raíz no se debe rehacer cuando se construye y se inicia la nueva CA (intermedia).

Un método más inteligente es tener una CA raíz semi-fuera de línea: la CA raíz está vinculada con el mundo exterior a través de un canal físicamente unidireccional (lo he hecho con un cable de audio: el El conector "line out" en el servidor es intrínsecamente unidireccional, por lo que no hay riesgo de intrusión en ese cable). Esto permite que la raíz publique CRL a menudo (por ejemplo, una por semana, incluso una por día) sin necesidad de intervención humana. La revocación real todavía necesitaría intervención física, por lo que una CA intermedia como se describe anteriormente aún sería altamente recomendada.

Tenga en cuenta que una CA sin conexión o semi-fuera de línea no puede sincronizarse con fuentes de tiempo de red , por lo que el reloj de la CA raíz puede deriva. Dado que las CRL tienen un período de validez, esto requiere cierta supervisión (puede tolerar una desviación de unos pocos minutos, por lo que no es una dificultad, pero es mejor que lo vigile de todos modos).

    
respondido por el Thomas Pornin 30.04.2013 - 21:25
fuente

Lea otras preguntas en las etiquetas