Sur les systèmes Linux, on peut vérifier l' entropie disponible (utile pour savoir si vous /dev/random
tapez à des fins PRNG) avec
cat /proc/sys/kernel/random/entropy_avail
Cependant, il n'y a pas d'équivalent de /proc
sur un Mac (AFAIK). Comment puis-je vérifier l'entropie système disponible sur un Mac? J'utilise OS X 10.7.3 (Lion)
Pour mettre à jour certains de mes commentaires sous la réponse de Kyle - L'une des raisons pour lesquelles les Mac n'affichaient pas ces informations est qu'elles ne sont pas nécessaires (dans la plupart des cas). Les systèmes Linux bloqueront les appels /dev/random
s'il n'y a pas assez d'entropie dans le pool. Sur Mac, il continue périodiquement d'ajouter au pool d'entropie à l'aide du SecurityServer
démon.
Cependant, il note également que si le démon échoue pour une raison quelconque, la qualité de sortie diminuera sans aucune indication d'échec :
La qualité de sa sortie dépend cependant de l'ajout régulier d'une entropie appropriée. Si le
SecurityServer
démon système échoue pour une raison quelconque, la qualité de la sortie en souffrira au fil du temps sans indication explicite du périphérique aléatoire lui-même.
Ainsi, même si la quantité d'entropie n'est pas facilement disponible, cela ne signifie pas qu'elle n'est pas là et il peut y avoir des cas où ses connaissances peuvent être utiles.
random
directement avant d'obtenir nombres aléatoires importants. "Réponses:
Ce n'est pas une solution, mais une clarification de la façon dont l'entropie est collectée et utilisée sous Linux.
Linux a en fait deux pools d'entropie différents:
/dev/random
et/dev/urandom
.Le premier est un véritable pool aléatoire, alimenté par des sources d'entropie système.
Ce dernier est plus un PRNG comme ceux que l'on trouve sur les BSD et OS X.
Cependant, même urandom nécessite une graine d'entropie aléatoire «réelle» afin de produire des données pseudo-aléatoires de qualité. Sur les noyaux récents, un manque complet d'entropie dans / dev / random ne bloquera toujours pas urandom, mais urandom réutilisera la dernière graine valide jusqu'à ce que plus d'entropie soit disponible. Parce que urandom n'est pas bloquant, la plupart des services qui nécessitent un flux constant d'entropie l'utilisent plutôt que de s'appuyer sur / dev / random.
Cependant, il existe encore certains services, tels que diverses suites SSL, qui ne peuvent pas se contenter d'une entropie pseudo-aléatoire, mais nécessitent une source d'entropie vraiment imprévisible. Dans ce cas, urandom (ou tout autre PRNG) ne peut pas être utilisé et / dev / random entre en jeu.
la source
Mac OS X utilise simplement Yarrow . Même FreeBSD est allé plus loin et est passé à sa version améliorée appelée "Fortuna".
Dans l'ensemble, c'est un autre rappel que les priorités d'Apple ne comprennent pas la sécurité / robustesse ou quelque chose comme ça.
la source
Mac OS X, comme FreeBSD, ne dépend pas de sources externes d'entropie. Au lieu de cela, il utilise un générateur de nombres pseudo-aléatoires basé sur l' algorithme Yarrow . Parce qu'il utilise un algorithme et non un pool d'entropie, il n'est pas nécessaire de s'assurer qu'il y a "suffisamment" d'entropie - vous pourrez toujours lire à partir de / dev / random sans bloquer .
Donc, pour répondre à votre question, sauf si vous êtes "paranoïaque" et devez baser votre entropie sur des sources externes (frappes / mouvements de souris / etc), auquel cas vous devez le faire vous-même, la quantité d'entropie disponible pour / dev / l'utilisation aléatoire est toujours infinie.
la source