Вам нужно использовать /dev/urandom
или «разблокирующий» случайный источник.
/dev/random
использует своего рода пул энтропии для увеличения случайности источника битов. Этот метод будет возвращать только столько случайных битов / байтов, сколько может быть возвращено в зависимости от состояния энтропийного пула в данный момент, поэтому, если используется аппаратный генератор случайных чисел, это иногда может быть константой. Из справочной страницы Linux :
Генератор также сохраняет оценку количества битов шума в пуле энтропии. Из этого энтропийного пула создаются случайные числа.
/dev/urandom
Файл сохраняет повторно использовать внутренний бассейн как есть , чтобы генерировать номер до тех пор , как вам нужно. Побочным эффектом этого является: не использовать /dev/urandom
в криптографических целях , так как оно менее случайно, чем биты, создаваемые /dev/random
. Смотрите ссылку на страницу руководства выше для деталей.