TGViewer
DevOps DevOps @devopsitsec · 23.7K subscribers
Post #2289 3.03K
⚡️ Генератор случайных чисел всего из трёх XOR и сдвигов

В 2003 году Джордж Марсалья представил xorshift - один из самых простых и быстрых генераторов псевдослучайных чисел.

Классический xorshift32:


uint32_t xorshift32(void)
{
state ^= state << 13;
state ^= state >> 17;
state ^= state << 5;
return state;
}


Фактически весь алгоритм:


shift → XOR
shift → XOR
shift → XOR


При ненулевом начальном state период может достигать:


2³² - 1


Никаких умножений, делений или тяжёлой математики, поэтому подобные RNG отлично подходят для игр, симуляций и procedural generation, где важна скорость.

Но есть нюанс: xorshift нельзя использовать для криптографии. Его внутреннее состояние можно предсказать, поэтому для ключей, паролей и токенов нужны криптографически стойкие генераторы.

Иногда действительно полезный алгоритм помещается буквально в три строки.

#Programming #Algorithms #C #Random
  • 👍 6
  • ❤ 1
More from @devopsitsec
  1. Sep 20, 2026🐳 Docker-образ с 3,17 ГБ до 354 МБ - почти в 9 раз меньше Такая оптимизация обычно достиг…
  2. Sep 17, 2026⚡️ Поды здоровы, а запросы в Kubernetes случайно отваливаются? Проверьте conntrack. Linux…
  3. Sep 16, 2026✔️ OpenAI на 60% снизила цены на голосовое управление агентами Work и Codex Теперь в дескт…
  4. Sep 16, 2026Что реально стоит за требованиями в вакансиях DevOps-инженера Открываешь вакансию - а там…
  5. Sep 16, 2026🌦 Linecast - погода, карты, радар, приливы, Солнце и Луна прямо в терминале Open-source C…
  6. Sep 16, 2026Гибридная инфраструктура — новая реальность или красивое словосочетание из презентаций? 1…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →