¿La autenticación del certificado de cliente exige más entropía del lado del servidor?

2

Tenemos un servicio web seguro que ejecuta Apache que requiere certificados de cliente para el acceso. Este servicio tiene un problema con quedarse sin entropía. Tenemos varios otros sitios que utilizan TLS que obtienen cantidades similares de tráfico, pero nunca han tenido ningún problema con la falta de entropía.

Me pregunto si requerir un certificado de cliente requiere más entropía. En cuanto a la especificación TLS, no veo dónde el cliente que proporciona un certificado presenta más demanda en la fuente de entropía del lado del servidor. Quizás nuestro problema no tenga nada que ver con los certificados de cliente, pero me gustaría eliminarlo como una fuente de problemas.

    
pregunta rlandster 06.02.2012 - 19:24
fuente

1 respuesta

4

Si "te quedas sin entropía", entonces estás usando /dev/random , y no deberías. Deberías usar /dev/urandom . Todo el concepto de "quedarse sin entropía" se basa en una metáfora defectuosa en la que la aleatoriedad se ve como un tipo de gasolina. Eso está mal. Versiones recientes de la página de manual de /dev/random (en Linux) son menos terribles de lo que solían ser, y ahora recomiendan lo correcto, que es usar /dev/urandom .

(Cuando digo "tú" podría ser "el software que usas". En cualquier caso, alguien está haciendo una estupidez, y esa estupidez probablemente involucra a /dev/random .)

En cualquier caso, la validación de certificados implica verificar firmas digitales, y no hay necesidad de ningún tipo de aleatoriedad para eso (al menos con algoritmos de firma "normales" como RSA, DSA o ECDSA).

Editar: en realidad, mientras que la validación básica del certificado no utiliza ninguna aleatoriedad, las comprobaciones del estado de revocación conllevan el contacto con los servidores externos para descargar las respuestas de CRL o OCSP, por lo que el tráfico de la red puede detenerse y mostrar síntomas similares a una lectura bloqueada en /dev/random . Y el protocolo para obtener una respuesta OCSP puede incluir un nonce aleatorio incluido por el solicitante (aquí, el servidor), por lo que es posible que una lectura en /dev/random todavía se esconda en ese código. Eso es un poco exagerado.

    
respondido por el Tom Leek 06.02.2012 - 19:33
fuente

Lea otras preguntas en las etiquetas