SKS 2022 prednaska 2
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Prednáška je odbočkou o generovaní náhodných čísel v kryptografii, motivovanou potrebou náhodných kľúčov a noncov na zabezpečenie čerstvosti v autentizačných protokoloch. Na funkcii rand v C ukazuje, že bežný pseudonáhodný generátor je úplne deterministický a predikovateľný: pri pevnom seede vždy vytvorí rovnakú postupnosť a z jednej hodnoty možno dopočítať všetky ďalšie, preto je nevhodný napríklad na generovanie AES kľúča. Ako riešenie predstavuje pravé generátory náhodných čísel (TRNG) založené na fyzikálnych procesoch, ktoré sú však pomalé. V praxi sa preto používajú kryptograficky bezpečné generátory (CSPRNG) podľa štandardov FIPS, ANSI a NIST, inicializované seedom z TRNG a postavené na hešovacích funkciách alebo blokových šifrách. Na konci prednáška prechádza ku kapitole 1 v knihe.
- - Kryptografické protokoly potrebujú náhodné čísla pre kľúče a noncy, ktoré zaisťujú čerstvosť správ.
- - Funkcia rand v C je lineárny kongruentný generátor: S(i+1) = (konštanta · S(i) + konštanta) mod 2^31.
- - Pseudonáhodné generátory (PRNG) sú deterministické a predikovateľné, preto sa nesmú používať v kryptografii.
- - TRNG využíva náhodné fyzikálne procesy, napríklad rádioaktívny rozpad alebo termálny šum, ale je pomalý.
- - CSPRNG je deterministický, no nepredikovateľný, ak zostane seed tajný; využíva hešovacie funkcie alebo blokové šifry (napr. AES v CBC móde).
- - Seed pre CSPRNG sa berie z TRNG a výstup môže byť oveľa dlhší ako seed.
- - Na generovanie kľúčov a noncov treba použiť presne algoritmy z uznávaných štandardov (FIPS, ANSI, NIST), nie vlastné konštrukcie.
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky