Могу ли я сделать этоМодифицированный SHA256 для ПСЧ высева
1. Copy SHA hash constants to eight 32bit work variables.
2. Expand message.
3. Mix work variables (SHA inner loop).
4. Output work variables to PRNG state.
вместо обычной процедуры (один блок сообщений)
1. Pad message block.
2. Copy SHA hash constants to hash.
3. Read hash into eight 32bit work variables.
4. Expand message.
5. Mix work variables (SHA inner loop).
6. Add work variables to hash.
7. Output hash to PRNG state.
, если я только хочу хороший бит смешивание некоторого входного энтропии для посева некриптографический PRNG? Безопасность совершенно не имеет значения. Все, что мне нужно, - создать хорошее состояние PRNG из метки времени в сочетании с некоторыми аппаратными битами (8-байтовая метка времени, 56 байт от аппаратного обеспечения).
Если вам просто нужно некоторое перемешивание, то как насчет функции ядра Salsa20? Это не криптографически сильный хэш, а трюк и быстрее, чем SHA256. –
Спасибо, но скорость не очень важна, потому что это только для посева. Обычно это делается только один раз. Объем данных, который должен быть хэширован, также очень мал. Я просто хочу удалить какой-то потенциально ненужный код. – Thorham