Informativo | Sistemas operativos

¿Por qué Linux tiene DOS generadores de números aleatorios?

¿Por qué Linux tiene DOS generadores de números aleatorios?

En Linux existen dos archivos que generan numeros aleatorios. y usar el incorrecto podía romper tu seguridad

¿Que son?

/dev/random y /dev/urandom son interfaces del kernel para generar bytes aleatorios, usados en criptografía: llaves SSH, certificados, tokens, etc

Diferencias

La diferencia nace de la entropía: el ruido físico real que junta el sistema, como movimientos del mouse o timing del disco.

/dev/random, en su diseño clásico, se bloqueaba, o sea, te hacía esperar si creía que se había quedado sin suficiente entropía ‘fresca’.

/dev/urandom nunca se bloquea: usa un generador pseudoaleatorio (CSPRNG) sembrado con esa entropía, y sigue produciendo bytes sin parar.

Utilidad actual

Actualmente, en Linux moderno (Desde la versión de Linux 5.6), esa distinción realmente no importa. Una vez que el CSPRNG tiene suficiente entropía inicial dípicamente al arrancar el sistema es criptográficamente seguro para siempre.

Aunque la recomendación estándar, incluso de los propios devs del kernel, es: usar /dev/urandom, o mejor aún, si se está trabajando con C, la syscall getrandom().

Conclusión

/dev/random podia colgarse esperando entropía sin necesidad real. /dev/urandom es rápido, seguro, y es lo que usan librerías como OpenSSL por debajo.

linux


Avatar

ItsZariep

Youtuber y programador, usando Linux desde 2015

Acerca de mi

© 2026 ItsZariep

Powered by Tessera for Hugo