Obter bytes aleatórios
Se você precisar de um determinado número de bytes aleatórios, leia esse número de bytes em /dev/urandom
.
É um "arquivo especial" que é feito para ser como um arquivo para ler números aleatórios.
Usar cat
para ler a partir de /dev/urandom
é uma má ideia, porque ele tentará ler /dev/urandom
até o final - mas não termina.
Você pode usar head
. Mas tenha cuidado para ler byte, não por linha - porque as linhas seriam aleatoriamente separadas por bytes de nova linha aleatórios.
Portanto, para ler 30 bytes aleatórios em um arquivo random.bytes
, use:
head -c 30 /dev/urandom > random.bytes
Você pode ler a partir dele como um usuário normal.
Deixar sozinho / dev / random
Normalmente, você deseja usar /dev/urandom
, não /dev/random
.
O problema é que /dev/random
é difícil de usar da maneira correta - e fácil de usar de maneira errada. Usá-lo errado funciona primeiro, mas cria problemas de desempenho estranhos - até aleatórios - mais tarde. Às vezes.
Quando você usa /dev/urandom
, ele usa /dev/random
internamente, cuidando das partes complicadas.