Lista de revocación de certificados

5

Hay muchos campos en una lista de revocación de certificados (CRL) como Algoritmo, Parámetros, Nombre del Emisor, Esta fecha de actualización, Fecha de la próxima actualización, Número de serie del certificado del usuario, etc. Aunque entiendo el propósito de la mayoría de los campos, ¿para qué sirve el campo "fecha de la próxima actualización en una lista de revocación de certificados?

    
pregunta 14.04.2014 - 21:17
fuente

1 respuesta

8

Oooh, eso es complicado.

Teóricamente , el campo nextUpdate debe ser una fecha (futura) en la cual una versión nueva y actualizada de la CRL debería estar disponible. La idea es que si tiene una CRL en caché, no tiene sentido intentar descargar una nueva antes de esa fecha.

En "X.509 verdadero", cada parte que confía (una "parte que confía" es "algún sistema que intenta validar un certificado") se supone que tiene su propia política con respecto a la antigüedad de una CRL antes de convertirse en " demasiado viejo". Sin embargo, un RP no puede adivinar cuándo estará disponible una nueva CRL para todas las CA posibles; Utilizamos certificados precisamente porque un RP no conoce de antemano todas las CA posibles. Por lo tanto, el campo nextUpdate que transmite información sobre la política de actualización de CA.

En la práctica , sin embargo, todos tomaron nextUpdate como fecha de caducidad de CRL. Entonces, el campo nextUpdate significa "no se moleste en descargar una nueva CRL antes de la fecha T ", todas las implementaciones de la validación del certificado X.509 consideran que significa "no usar esta CRL más allá de la fecha < em> T ". Ese no es el mismo concepto. "True X.509" no controla la caducidad de la CRL en absoluto, ya que se supone que cada RP aplica su propia política, pero eso no funciona en el mundo real: la CA existente, tanto la raíz como la no raíz, no tiene coherencia suficientes políticas de actualización de CRL para hacer que una política RP-local sea viable. P.ej. algunas CA actualizarán la CRL solo una vez por semana, o incluso menos que eso, especialmente para las CA sin conexión; mientras que otros publican nuevas CRL cada hora.

Dado que todos usan nextUpdate como fecha de caducidad de CRL, la CA ha adaptado y también rellena ese campo con esta semántica. Microsoft también ha definido una extensión llamada "Próxima publicación de CRL" (1.3.6.1.4.1.311.21.4) para transmitir la información sobre la próxima fecha de publicación programada de CRL, es decir, la función histórica de nextUpdate (esta es una especificación de Microsoft). extensión, dudo que alguien más lo use).

Una estrategia común para CA es usar un poco de superposición: por ejemplo, publican una CRL cada 24 horas, y el campo nextUpdate se establece en thisUpdate + 36 horas. De esa manera, la nueva CRL está disponible 12 horas antes de que la anterior "caduque". La mayoría de los clientes se molestarán en descargar una nueva CRL solo si la que tienen en su caché tiene su nextUpdate "en el pasado". Algunos clientes (especialmente Windows) descargarán la nueva CRL en algún momento antes del nextUpdate si tienen alguna buena indicación de que hay una nueva CRL disponible, lo que hace que la pre-búsqueda valga la pena el esfuerzo (por ejemplo, porque hay una extensión "Siguiente publicación de CRL")

    
respondido por el Thomas Pornin 14.04.2014 - 22:00
fuente

Lea otras preguntas en las etiquetas