| Linux Security HOWTO: Una guía básica v0.9.11, 1 May 1998 | ||
|---|---|---|
| <<< Previous | Next >>> | |
Hay algunos dispositivos de bloque y carácter disponibles en Linux que también ayudarán con la seguridad.
Los dos dispositivos /dev/random y /dev/urandom los proporciona el núcleo para recuperarar datos aleatorios en cualquier instante.
Ambos, /dev/random y /dev/urandom deberían ser suficientemente seguros como para generar claves PGP, SSH y otras aplicaciones donde son un equisito números aleatorios seguros. Los atacantes no podrían ser capaces de determinar el siguiente número dada cualquier secuencia de números con este origen. Se han puesto muchos esfuerzos para asegurar que los números que obtiene de esta fuente son aleatorios en todos los sentidos de la palabra aleatorio.
La única diferencia es que /dev/random suministra bytes aleatorios y le hace esperar para que se acumulen más. Observe que en algunos sistemas puede bloquear durante un rato a la espera de que se genere una nueva entrada de usuario al sistema. Por tanto debe tener cuidado al usar /dev/random. (Quizás lo mejor que puede hacer es usarlo cuando esté generando información sensible de claves e indicarle al usuario que pulse una tecla repetidas veces hasta que indique por la pantalla "OK, es suficiente").
/dev/random tiene gran calidad e entropía, midiendo tiempos entre interrupciones etc. Bloquea hasta que hay dispoibles suficientes bits de datos aleatorios.
/dev/urandom es parecido, no es tan seguro, pero suficiente para la mayoría de las aplicaciones.
Puede leer los dispositivos usando algo parecido a lo siguiente:
root# head -c 6 /dev/urandom | uuencode - |
Esto imprimirá seis caracteres aleatorios en la consola, válidos para la generación de una clave. Vea /usr/src/linux/drivers/char/random.c para obtener una descripción del algoritmo.
Gracias a Theodore Y. Ts'o, Jon Lewis, y otros del Linux-kernel por ayudarme (Dave) con esto.
| <<< Previous | Home | Next >>> |
| 6.1 Opciones de Compilación del Núcleo | 7. Seguridad de Red |