Концептуальная нестойкость ГПСЧ в Linux
//Концептуальная нестойкость ГПСЧ в Linux
!!(green)http://eprint.iacr.org/2006/086
Analysis of the Linux Random Number Generator
Zvi Gutterman and Benny Pinkas and Tzachy Reinman
!!
Интересная работа, показывающая слабость дизайна генераторов псевдослучайных чисел /dev/{u}random в Linux системах. Авторы указали на безграмотность разработчиков, отсутствие просчитанной концепции и хаотичность процесса разработки. Также они отмечают, что даже грубейшие ошибки не исправлялись месяцами. Патчи принимались непродуманно от случайных людей и разработку вели люди малокомпетентные в криптографии.
Для исследования уязвимостей пришлось использовать реверс-инжиниринг плоходокументированного открытого кода для восстановления алгоритма генерации энтропии, который оказался нагромождением непродуманно выбранных компонентов. Хотя найденные уязвимости малопрактичны (уязвимость на предсказание влево за 2^64 или 2^96 шагов по времени), они показывают, что разработка open source проектов часто может вестись на плохом уровне, а грубейшие ошибки могут существовать годами у всех на глазах.
В качестве решения авторы предлагают более тщательно принимать патчи от независимых разработчиков, привлекать специалистов по криптографии для анализа кода перед включением его в ядро, более аккуратно вести документацию.
В качестве альтернативного примера авторы рассматривают ГПСЧ из ОС OpenBSD, который гораздо проще и компактнее, значительно лучше спроектирован и документирован.
Strange Attractors and TCP/IP Sequence Number Analysis