Что произойдет, если в вашем 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 — неблокирующий интерфейс. Данные можно читать вечно, однако после опустошения энтропийного пула пользователю подсунут не случайные, а псевдослучайные числа. Их тоже можно использовать для разных нужд, но только не для криптографии.
field_vote: 
Ваша оценка: Нет Средняя: 4.5 (8 оценки)
Главная тема: 
Дистрибутивы: 
Программное обеспечение: 

Комментарии

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

Оценка: 
Средняя: 2.3 (10 оценки)

[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.

Оценка: 
Средняя: 3.8 (8 оценки)

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

Оценка: 
Средняя: 1.4 (9 оценки)

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

Оценка: 
Средняя: 4.4 (7 оценки)

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

Оценка: 
Средняя: 5 (2 оценки)

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

Оценка: 
Средняя: 3 (2 оценки)

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

Оценка: 
Средняя: 5 (1 оценка)

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

Оценка: 
Средняя: 3.7 (3 оценки)

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

Оценка: 
Средняя: 5 (1 оценка)

Польза этого материала велика при разборе падения коннекта к Oracle из java-приложения. Когда всё падает на таймауте, то как один из вариантов - это исчерпание случайных чисел из пула энтропии.

Оценка: 
Пока без оценки

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

Оценка: 
Средняя: 5 (1 оценка)

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

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 оценки)

стану грудью на защиту виндузятника, возможно он потенциальный линуксоид с андроидом в кармане.
там энтропию никто не отменял, даже Seeder в помощь

Оценка: 
Средняя: 3.7 (3 оценки)

Комментировать

Filtered HTML

  • Use [fn]...[/fn] (or <fn>...</fn>) to insert automatically numbered footnotes.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <strike> <code> <h2> <h3> <h4> <h5> <del> <img>
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.