[devel] rngd vs haveged vs crng (khwrngd)
Paul Wolneykien
manowar на altlinux.org
Вт Сен 3 01:25:00 MSK 2019
03.09.2019 00:31, Leonid Krivoshein пишет:
>>> И здесь речь о случайных числах для запуска
>>> самого systemd, который может стартануть и быстрее, чем через
>>> три секунды.
Мне тоже стало интересно, о чём вы тут спорите.
31.08.2019 18:42, Alexey V. Vissarionov пишет:
>> Он при всем желании не может стартануть раньше, чем ядро скажет
>> run_init_process("/sbin/init");
Означает ли это, что в ядре есть код, который сперва ждёт накопления N
байт хорошей энтропии, и только после этого выполняет
run_init_process("/sbin/init") ?
03.09.2019 00:31, Leonid Krivoshein пишет:
> Процессы инициализации ядра и запуска /sbin/init асинхронны.
31.08.2019 18:42, Alexey V. Vissarionov пишет:
>> 2. к моменту начала использования недоверенного RNG пул должен
>> быть заполнен данными из других источников.
Когда читаешь "должен быть заполнен" как отдельное условие, то
кажется, что тут есть элемент желательности. Мол, должен быть заполнен,
если всё идёт по плану. А если не заполнен, то значит вы это не
обеспечили, должным образом не настроили и т.д.
Если это так, то мне стало интересно, почему это сделано так сложно,
что изначально содержит в себе потенциальную возможность race и
deadlock? По описываемым симптомам, проблема явно в том, что PID 1
стартует раньше, чем заполнен пул энтропии (необходимым и достаточным её
количеством). Но поскольку за запуск PID 1 и за энтропию отвечает одно и
то же ядро, то непонятно, почему нельзя сначала накопить энтропию
(послушать диски, сеть и т.п.), и только потом уже запустить PID 1?
Подробная информация о списке рассылки Devel