Inés Carvajal Gallardo
Salts Nonces Sessie-keys Random priemgetallen “The generation of random numbers is too important to be left to chance”
Uniform gedistribueerd Statistisch onafhankelijk Voor de waarnemer
Deterministisch Periodiek Onveilig Efficiënt Mersenne Twister Linear Shift Feedback Register
Periode gelijk aan m als: m, a: relatief priem (k-1) deelbaar door alle priemfactoren van m Als 4 | m, dan 4 | (k -1) Dus: m groot kiezen!
Onveilig in cryptografie LCG op zichzelf niet sterk Sterk maken door goede a, k, m Gebruikt de kloktijd als seed-value 2 instanties op hetzelfde moment gemaakt: dezelfde random numbers
Random numbers Geen patronen, compleet veilig Niet-deterministisch Iets anders dan een formule…
Fysische processen Radioactief verval, toetsaanslagen ▪ Let op betrouwbaarheid Niet-fysische processen Dobbelsteen, loten trekken
Atmospheric noise Meten met radio Variaties digitaliseren random.org PHP rand() on Windows
Efficiëntie Minder bits per seconde Andere mogelijkheid als seed-values voor PRNG’s Meetapparatuur Vrij ingewikkeld voor goede resultaten
Veilige PRNG Extra eisen aan veiligheid Gebruik van entropie Maat van onwillekeurigheid
Theoretisch en empirisch Chi-squared Test Seriële Test SRNG moet voldoen aan de next-bit test “Gegeven k bits, k+1ste bit niet in polynomiale tijd te berekenen met meer dan 50% kans op slaging.”
Cryptographically secure RNG Onderliggende PRNG Interne staat willekeurig houden Entropie Veel gebruikt: SHA1PRNG, gebaseerd op het SHA1 message digest algoritme
OS verzamelt constant entropie Entropy pool Entropie kan ook van buiten komen Bijvoorbeeld random.org SecureRandom kan bij de entropie Entropie vermindert
Windows: CryptoAPI CryptGenRandom() call Thread-id Proces-id Performance-data van CPU Counter-data Tick-count sinds de laatste boot
Linux dev/random en dev/urandom Muisactiviteit Toetsenbord Data van I/O-operaties Data van Interrupts
Gebruik voor cryptografie geen PRNG Dus niet Random! Gebruik een SRNG of zelfs TRNG Dus wel SecureRandom! TRNG erg langzaam SRNG’s voldoen aan veiligheidseisen