Генерация случайных чисел


Подскажите пожалуйста способ генегации случайного числа для создания сессионного ключа(256 бит) используемого при симметричном шифрования. Генерация будет производится на сервере без клавиатуры и мышки, так что использование этих устройств будет невозможным. Так же не представляется возможным использовать аппаратные генераторы случайных чисел. И ещё: генерация болжна происходить быстро, т.е. ключ должен генерироваться за ~ 1сек.


Комментарии
— RElf (21/03/2006 22:04)   
Воспользуйтесь любым из генераторов перечисленных в статье ГПСЧ[link1] в википедии (в разделе "ГПСЧ с внешним источником случайности или ГСЧ").
По юниксами все проще – там стандартный /dev/random сам собирает энтропию.
— platerx (21/03/2006 23:58)   
Спасибо за ссылку.
Я думаю сипользовать для этих целей счётчик тактов процессора.
Как это лучьше реализовать.
Может банальным считывание младших бит этого счётчика и пропуском через хеш функцию?
— RElf (22/03/2006 01:07)   
Ну, например, взять исходные тексты Шнайеровского Yarrow[link2] и приделать к нему сбор млаших битов TSC в качестве "внешней" энтропии.

Ссылки
[link1] http://ru.wikipedia.org/wiki/ГПСЧ

[link2] http://www.schneier.com/yarrow.html