¿Cómo puedo verificar la entropía disponible?

13

En los sistemas Linux, uno puede buscar entropy disponible (útil para saber si está haciendo tapping) /dev/random para cualquier propósito de PRNG) con

cat /proc/sys/kernel/random/entropy_avail

Sin embargo, no hay un equivalente de /proc en una Mac (AFAIK). ¿Cómo puedo verificar la entropía del sistema disponible en una Mac? Estoy ejecutando OS X 10.7.3 (Lion)

Para actualizar con algunos de mis comentarios bajo la respuesta de Kyle: uno de los motivos por los que las Mac no muestran esta información es que no es necesaria (en la mayoría de los casos). Los sistemas Linux bloquearán las llamadas a /dev/random si no hay suficiente entropía en el grupo. En Macs, se agrega periódicamente a la grupo de entropía utilizando el daemon SecurityServer .

Sin embargo, también observa que si el demonio falla por alguna razón, la calidad de salida disminuirá sin ninguna indicación de falla :

  

La calidad de        Sin embargo, su salida depende de la adición regular de entropía apropiada. Si el daemon del sistema SecurityServer falla por alguna razón, la calidad de salida sufrirá con el tiempo sin ninguna indicación explícita        desde el propio dispositivo aleatorio.

Por lo tanto, aunque la cantidad de entropía no esté disponible fácilmente, no significa que no esté allí y puede haber casos en que su conocimiento pueda ser útil.

    
pregunta rm -rf 20.03.2012 - 22:47

3 respuestas

6

Esto no es una solución, sino una aclaración de cómo se recopila y utiliza la entropía en Linux.

Linux en realidad tiene dos grupos de entropía diferentes:

/dev/random y /dev/urandom .

El primero es un verdadero conjunto aleatorio, alimentado por fuentes de entropía del sistema.
Este último es más un PRNG como los que se encuentran en los BSD y OS X.

Sin embargo, incluso urandom requiere una semilla de entropía aleatoria "real" para producir datos pseudoaleatorios de calidad. En los núcleos recientes, una falta completa de entropía en / dev / random todavía no bloqueará urandom, pero urandom reutilizará la última semilla válida hasta que haya más entropía disponible. Debido a que urandom no tiene bloqueo, la mayoría de los servicios que requieren un flujo constante de entropía lo utilizan en lugar de confiar en / dev / random.

Sin embargo, todavía hay algunos servicios, como varias suites SSL, que no se conforman con la entropía seudoaleatoria, pero requieren una fuente de entropía realmente impredecible. En este caso, no se puede usar urandom (o cualquier otro PRNG), y / dev / random entra en juego.

    
respondido por el Chris 07.10.2012 - 07:17
2

Mac OS X simplemente usa Yarrow . Incluso FreeBSD fue más allá y cambió a su versión mejorada llamada "Fortuna".

  

La fuerza de la milenrama está limitada por el tamaño de la tecla. Por ejemplo, Yarrow-160 tiene un tamaño de clave efectivo de 160 bits. Si la seguridad requiere 256 bits, Yarrow-160 no es capaz de hacer el trabajo.

Todo esto es otro recordatorio Las prioridades de Apple no incluyen la seguridad / robustez ni nada por el estilo.

    
respondido por el poige 07.08.2017 - 13:20
1

Mac OS X, como FreeBSD, no se basa en fuentes externas de entropía. En su lugar, utiliza un generador de números pseudoaleatorios basado en el algoritmo de milenrama . Debido a que utiliza un algoritmo y no un grupo de entropía, no es necesario asegurarse de que haya "suficiente" entropía - siempre podrás leer desde / dev / random sin bloquear .

Entonces, para responder a su pregunta, a menos que esté "paranoico" y necesite basar su entropía en fuentes externas (pulsaciones de teclas / movimientos del mouse / etc), en cuyo caso debe hacerlo usted mismo, la cantidad de entropía disponible para / dev / el uso aleatorio siempre es infinito.

    
respondido por el Kyle Cronin 02.04.2012 - 21:56

Lea otras preguntas en las etiquetas