По поводу рандома. Если Вы ставили TrueCrypt, Вы наверное видели, как система генерирует рандомный ключ. Там и движения мышей по окну, и ежесекундное обновление ключа, если такого движения не происходит. Может быть, подсмотреть исходный код TrueCrypt и отсыпать оттуда идей?
Я немного писал про это в тексте. Решение с взятием сообщений от окна (движение мышью, клавиатура, системные сообщения) мне не очень нравится в виду неудобств для пользователя. Меня лично необходимость елозить мышкой (если это не игра Hammerfight :) напрягает. К тому же, я мог бы потеоретизировать на тему «90% пользователей генерируют в целом схожие пассы мышкой, что вряд ли лучше хорошего PRNG по ДРУГОМУ алгоритму, поксоренному на всякие процессорные такты и прочее», если бы был профессионалом в криптографии.
Я видел Вашу ремарку об этом. Я не знаю откуда, но трукрипт берет рандомные данные НЕ ТОЛЬКО с мыши/клавиатуры. Может быть, эта та самая хрень которая нужна и Вам?
Насколько я понимаю, формирование вектора по номеру посылки заранее не слишком сложной функцией, вряд ли лучше чем вектор, собранный из двух РАЗНЫХ криптостойких PRNG, поксоренный на число тактов процессора и внутренние такты ОС со смещением. Разве нет?
Мой защищённый контейнер