>Шарящие в криптографии, видимо плохо шарили в программинге, если в качестве источника
>энтропии использовали неинициализированный блок памяти. Насколько случайные там окажутся данные -
>не знает никто. Мэйнтэйнер пофиксил использование неинициализированного массива, отсюда и были
>проблемы. Если бы программисты использовали в качестве источника энтропии /dev/urandom, этого
>бы не произошло. Вот оно! Именно этого комментария я и искал!
И действительно, за самочинное исправление неинициализированной переменной в незнакомом коде, где нужна дешевая энтропия, мантайнера-дебиановца надлежит наказать не столько за само самоуправство, сколько за то, что не просигналил девелоперам.
Потому как тут ящик с тройным дном может оказаться.
Из каких соображений авторы openssh предпочли просто не проинициализировать тот массив, а не написать туда что-то на манер текущая_секунда по модулю текущая_минута (насчет доступности /dev/urandom -- а оно, кстати, есть ли на всех системах?) Ведь так же просто, издержки минимальные, и gcc ругаться не будет.
С другой стороны, непроинициализированные переменные ловятся компиляторами с доисторических времен, и уж автор определенно знал о том массиве. Знал, но таки ж оставил!
Нет, я все никак не могу вкурить и поверить, что такой сурьезный прожект -- и вот так по-школьному решает добывать энтропию.
Кто действительно шарит и потрудился посмотреть в код и в дебиановский патч -- растолкуйте, действительно ли все так просто и самонадеянно там?