Для ядра Linux предложена реализация /dev/random, избавленная от привязки к SHA-1
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Джейсон Доненфилд (Jason A. Donenfeld), автор VPN WireGuard, предложил обновлённую реализацию генератора псевдослучайных чисел RDRAND, отвечающего за работу устройств /dev/random и /dev/urandom в ядре Linux. В конце ноября Джейсон был включён в число мэйнтейнеров драйвера random и теперь опубликовал первые результаты своей работы по его переработке.
Новая реализация примечательна переходом на использование хеш-функции BLAKE2s вместо SHA1 для операций смешивания энтропии. Изменение позволило повысить безопасность генератора псевдослучайных чисел, благодаря избавлению от проблемного алгоритма SHA1 и исключению перезаписи вектора инициализации RNG. Так как алгоритм BLAKE2s опережает SHA1 по производительности, то его применение также положительно отразилось на производительности генератора псевдослучайных чисел (тестирование на системе с процессором Intel i7-11850H показало увеличение скорости на 131%). Ещё одним плюсом перевода смешивания энтропии на BLAKE2 стала унификация используемых алгоритмов - BLAKE2 применяется в шифре ChaCha, уже применяемом для извлечения случайных последовательностей.
Кроме того, внесены улучшения в криптонадёжный генератор псевдослучайных чисел CRNG, используемый в вызове getrandom. Улучшения сводятся к ограничению вызова медленного генератора RDRAND при извлечении энтропии, что позволяет повысить производительность в 3.7 раза. Джейсон показал, что вызов RDRAND имеет смысл только в ситуации, когда CRNG ещё полностью не инициализирован, но если инициализация CRNG завершена, его значение не влияет на качество генерируемой последовательности и без обращения к RDRAND в этом случае можно обойтись.
Изменения намечены для включения в состав ядра 5.17 и уже рецензированы разработчиками Ted Ts'o (второй мэйнтейнер драйвера random), Greg Kroah-Hartman (ответственный за поддержку стабильной ветки ядра Linux) и Jean-Philippe Aumasson (автор алгоритмов BLAKE2/3).
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://news.ycombinator.com/i...)
- OpenNews: Cloudflare представил распределённый генератор случайных чисел
- OpenNews: Генератор псевдослучайных чисел на основе GPS
- OpenNews: Проект по созданию открытого аппаратного генератора случайных чисел
- OpenNews: Уязвимость в генераторе случайных чисел ядра Linux
- OpenNews: Опубликован прототип бэкдора в генераторе псевдослучайных чисел Dual_EC_DRBG, входившем в стандарт NIST
Похожие новости:
- Выпуск модуля LKRG 0.9.2 для защиты от эксплуатации уязвимостей в ядре Linux
- Третья редакция патчей для ядра Linux с поддержкой языка Rust
- Удалённая уязвимость в реализации протокола TIPC в ядре Linux
- Релиз ядра Linux 5.15
- Проект Kerla развивает Linux-совместимое ядро на языке Rust
- Выпуск Muen 1.0, открытого микроядра для создания высоконадёжных систем
- Раскрыта техника эксплуатации уязвимости в tty-подсистеме ядра Linux
- GitHub заблокировал SSH-ключи, сгенерированные при помощи библиотеки keypair
- В ядре Linux 5.14.7 выявлена проблема, приводящая к краху на системах с планировщиком BFQ
- Google перейдёт к развитию новшеств для Android в основном ядре Linux
Теги для поиска: #_rnd, #_kernel, #_blake2, #_sha1
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 12:50
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Джейсон Доненфилд (Jason A. Donenfeld), автор VPN WireGuard, предложил обновлённую реализацию генератора псевдослучайных чисел RDRAND, отвечающего за работу устройств /dev/random и /dev/urandom в ядре Linux. В конце ноября Джейсон был включён в число мэйнтейнеров драйвера random и теперь опубликовал первые результаты своей работы по его переработке. Новая реализация примечательна переходом на использование хеш-функции BLAKE2s вместо SHA1 для операций смешивания энтропии. Изменение позволило повысить безопасность генератора псевдослучайных чисел, благодаря избавлению от проблемного алгоритма SHA1 и исключению перезаписи вектора инициализации RNG. Так как алгоритм BLAKE2s опережает SHA1 по производительности, то его применение также положительно отразилось на производительности генератора псевдослучайных чисел (тестирование на системе с процессором Intel i7-11850H показало увеличение скорости на 131%). Ещё одним плюсом перевода смешивания энтропии на BLAKE2 стала унификация используемых алгоритмов - BLAKE2 применяется в шифре ChaCha, уже применяемом для извлечения случайных последовательностей. Кроме того, внесены улучшения в криптонадёжный генератор псевдослучайных чисел CRNG, используемый в вызове getrandom. Улучшения сводятся к ограничению вызова медленного генератора RDRAND при извлечении энтропии, что позволяет повысить производительность в 3.7 раза. Джейсон показал, что вызов RDRAND имеет смысл только в ситуации, когда CRNG ещё полностью не инициализирован, но если инициализация CRNG завершена, его значение не влияет на качество генерируемой последовательности и без обращения к RDRAND в этом случае можно обойтись. Изменения намечены для включения в состав ядра 5.17 и уже рецензированы разработчиками Ted Ts'o (второй мэйнтейнер драйвера random), Greg Kroah-Hartman (ответственный за поддержку стабильной ветки ядра Linux) и Jean-Philippe Aumasson (автор алгоритмов BLAKE2/3). =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 12:50
Часовой пояс: UTC + 5