1. Функция должна возвращать результат фиксированной разрядности, зависящий параметра заранее не известного размера (от нуль-терминальной строки, от массива с базовым типом uint, размер которого передаётся в отдельном параметра типа size_t...).
2. Каждый бит результата должен зависеть от всех битов параметра.
3. От каждого бита параметра должны зависеть все биты результата.
4. При случайном значении параметра информационная энтропия результата должна превышать информационную энтропию в числа, имеющего в два раза меньшую разрядность, каждый бит которого отражает исход истинно не зависимого от остальных истинно случайного события.