MCRYPT DEV СЛУЧАЙНЫМ образом зависает, но MCRYPT DEV URANDOM работает


Я пытаюсь создать IV с помощью функции:

mcrypt_create_iv(32, MCRYPT_DEV_RANDOM)

Это приводит к тому, что время ожидания сценария истекает более чем через 60 секунд. (может быть, больше?) но когда я использую URANDOM, он работает нормально почти мгновенно. Из того, что я прочитал, это должно занять около 4 секунд с MCRYPT_DEV_RANDOM, но это определенно занимает слишком много времени. В журнале ошибок ничего нет.

Я установил его с apache2 и php5 на сервере ubuntu 12.04.

Я запустил точно такой же код на своем сервере centos без вопросы.

 7
Author: hakre, 2012-06-24

2 answers

Как СЛУЧАЙНЫЙ, так и разблокированный - СЛУЧАЙНЫЙ (URANDOM) предоставит вам случайные данные, но в то время как СЛУЧАЙНЫЙ блокируется, если "колодец энтропии" высохнет из-за чрезмерного использования, и перезапустится, когда он будет пополнен, URANDOM не будет.

Pro: URANDOM не будет блокировать. Кон: УРАНДОМ, если его оставить без энтропии, будет кормить вас не совсем случайными данными.

Для криптографических целей, если вы действительно не параноик, я думаю, что УРАНДОМА должно быть достаточно.

Смотрите эту страницу Ubuntu: http://manpages.ubuntu.com/manpages/jaunty/man4/random.4.html

Я (ошибочно) думал, что СЛУЧАЙНЫЕ источники управляются пользователем, но, похоже, это не так. По-видимому, на этом компьютере ничего особенного не происходит, так что генератор энтропии ядра не находит ничего, что можно было бы измельчить.

С положительной стороны, генератор УРАНДОМА, как говорят, очень хорош и рекомендуется практически для всего.

(Я редактирую некоторые свои предыдущие предложения, которые не сработали бы для вас, так как они потребовали бы, по крайней мере, перекомпиляции PHP).

 15
Author: LSerni, 2012-06-23 23:43:31

На самом деле и /dev/random, и /dev/urandom дают вам одинаковую случайность и безопасность. Существует длинная история о том, как возник миф о /dev/случайных блоках и почему вы должны его использовать. Ищите "миф о случайном/урандоме"

 1
Author: tommy bustass, 2015-05-18 22:26:01