lol im so random!
summary
Covers where Math.random() and other language PRNGs get their bits, shows that PRNGs are seeded state machines and that Mersenne Twister has an astronomic period yet is not cryptographically secure, points out V8’s generator weakness and its December fix, compares Diehard and TestU01 test suites, explains CSPRNGs like Yarrow and kernel dev/random entropy pools, and demos concrete artifacts: bash lookbusy, rolling dice from /dev, music from dev random, and the 10 PRINT pattern generator.
AI-written summary · about
chapters (8)
- 0:00Start
- 3:36Pseudorandom Number Generator (PRNG)
- 5:25"Functional code is characterized by one thing: the absence of side effects. It doesn't rely on data outside the current function, and it doesn't change data that exists outside the current function." Mary Rose Cook
- 10:23The Mersenne Twister ... is completely unsuitable for cryptographic purposes.
- 10:35Mersenne Twister is not cryptographically secure.
- 11:23Cryptographically Secure Pseudorandom Number Generator (CSPRNG)
- 11:40Yarrow Bruce Schneier and John Kelsey
- 12:00The Entropy Device
related talks
01h 30mRandom
41mCybersecurity and random number generators
51mCybersecurity and Random Number Generators
19mRNG and Me: A Peek Behind The Random Number Generator Curtain
28mRandomness in Python: Controlled Chaos in an Ordered Machine
45mInside the Linux Kernel Random Number Generator
41mPredicting Math.random()
50mHow random is Random? Pitfalls of Random in .NET 6
