Что произойдет, если в вашем Linux закончится энтропия

Ядро Linux предоставляет прикладным программам энтропийный пул, из которого программы могут извлекать случайные числа. Что произойдет, если случайные данные в этом пуле закончатся?

Низкая энтропия ядра Linux

Произойдет достаточно неприятная вещь: вместо случайных чисел будут генерироваться псевдослучайные числа. А это значит, что сгенерированные пароли, сертификаты, криптографические ключи и т.п. могут быть ослаблены. Так как же посмотреть, как обстоят дела с накоплением энтропии именно в вашей системе?

Работа с энтропийным пулом

# cat /proc/sys/kernel/random/poolsize

Команда покажет размер энтропийного пула в битах. Значение по умолчанию — 4096 бит.

#cat /proc/sys/kernel/random/entropy_avail

Покажет накопленную энтропию в битах. Если ноль, то пора предпринимать дополнительные шаги. Кстати, существуют трояны и руткиты, которые специально опорожняют энтропийный буфер, чтобы повлиять на генерацию паролей и ослабить защиту. Если entropy_avail показывает ноль — это повод напрячь булки.

Дополнительные шаги

Установите демон haveged. Он постоянно висит в памяти и пополняет энтропийный пул, собирая случайные аппаратные события и обрабатывая их по алгоритму Hardware Volatile Entropy Gathering and Expansion.

После установки пакета не забудьте сделать службу haveged активной по умолчанию:

systemctl enable haveged
systemctl start haveged

Интерфейс ядра Linux для получения случайных и псевдослучайных чисел

  • /dev/random — блокирующий интерфейс. Если случайные числа закончились, чтение из этого файла будет приостановлено до тех пор, пока энтропийный пул не пополнится.
  • /dev/urandom — неблокирующий интерфейс. Данные можно читать вечно, однако после опустошения энтропийного пула пользователю подсунут не случайные, а псевдослучайные числа. Их тоже можно использовать для разных нужд, но только не для криптографии.
Ваша оценка: Нет Средняя оценка: 5 (5 votes)

В чём заключается практическая польза от информации полученной в данной статье?

Ваша оценка: Нет Средняя оценка: 1.7 (6 votes)
pomodor

[03/Feb/2018:20:27:23 +0200] "GET / HTTP/1.1" 200 13990 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299" "-"

Для виндузятника — никакой. Это про Linux.

Ваша оценка: Нет Средняя оценка: 4.3 (6 votes)
MRTN

В треде задетекчены любители понюхать чужие трусы. =))

Ваша оценка: Нет Средняя оценка: 1.7 (6 votes)
pomodor

Бан за офтоп и словоблудие.

Ваша оценка: Нет Средняя оценка: 4.3 (6 votes)
delpher

:) похоже на банный геноцид анонимных виндузятников

Ваша оценка: Нет Средняя оценка: 5 (1 vote)
pomodor

Вовсе нет. Никто не банит за выбор ОС, что было бы очень глупо. Школьник забанен за нарушение пунктов 3 и 6 статьи 2 правил Либератума.

Ваша оценка: Нет Средняя оценка: 3 (2 votes)
gundenaf

СЗОТ, а зачем вы решили использовать вики-движок для глоссария сайта? Рейтинг и experds сами писали неплохо же.

Ваша оценка: Нет Средняя оценка: 5 (1 vote)
pomodor

Благодарю! :) Хотелось просто создать документопомойку без значительных затрат времени. Решил не изобретать велосипед.

Ваша оценка: Нет Средняя оценка: 3.7 (3 votes)
pomodor

Ну и идея в том, чтобы дать возможность пользователям (в том числе и анонимным) дописывать некоторые статьи. Например, о дистрибутивах. Если делать на фреймворке, то много времени уйдет на проверку полномочий, систему версионирования и т.п. Это скучно.

Ваша оценка: Нет Средняя оценка: 5 (1 vote)

Оно сбрасывается при рестарте?

Ваша оценка: Нет Средняя оценка: 5 (1 vote)
pomodor

Сбрасывается на диск и используется после перезагрузки. Энтропия — это слишком ценный материал, чтобы им разбрасываться.

Most systems with persistent storage will load an RNG seed from disk (I'll use “disk” as an abbreviation for any kind of persistent storage) when they boot, and overwrite the seed with some fresh pseudo-random data generated from that seed, or if available with random data generated from that seed plus another entropy source. This way, even if entropy is not available after a reboot, the entropy from a previous session is reused.

Ваша оценка: Нет Средняя оценка: 5 (2 votes)
Отправить комментарий
КАПЧА
Вы человек? Подсказка: зарегистрируйтесь, чтобы этот вопрос больше никогда не возникал. Кстати, анонимные ссылки запрещены.
CAPTCHA на основе изображений
Enter the characters shown in the image.
Счетчики
  • Самый популярный сайт о Linux и Windows 10
  • Индекс цитирования