/dev/random
não é padronizado. O POSIX não fornece nenhuma maneira de gerar dados aleatórios criptograficamente seguros e não possui qualquer noção de entropia.
O cálculo de entropia do kernel do Linux corresponde a um modelo teórico de informações de entropia que não é relevante para o uso prático. O único caso em que isso é relevante é em um novo dispositivo que nunca teve tempo de acumular entropia (isso inclui distribuições ativas; os sistemas instalados salvam sua entropia de uma inicialização para a próxima). Além dessa situação, sempre há entropia suficiente, porque a entropia não se esgota. Como o /dev/random
do Linux bloqueia quando acha que não tem entropia suficiente, use /dev/urandom
, que nunca bloqueia. Usando /dev/urandom
é bom para tudo, incluindo a geração de chaves criptográficas (exceto, como mencionado acima, em um dispositivo recém-criado).
Em resumo:
- Não, isso não é padrão.
- Você não se importa.
-
Use
/dev/urandom
.
Muitos, mas nem todos os sistemas unix possuem /dev/urandom
e /dev/random
. Veja a página da Wikipedia para uma discussão mais detalhada.