crypto Flashcards
Hva er Kerckhoffs prinsipp?
Unngå security through obscurity.
Det eneste en angriper ikke har tilgang til i et kryptosystem, er de private nøklene
Hva er perfekt sikkerhet?
Gitt c, så er det umulig å ekskludere noen enkelt klartekst p.
Altså, for hver p finnes en k som krypterer til c. Antall nøkler er da >= antall klartekster
Hvilket shiffer er det eneste som gir perfekt sikkerhet?
One-time-pad
Hvordan fungerer one-time-pad?
lengde(nøkkel) = lengde(klartekst)
nøkkel og klartekst er binære strenger
Bruker XOR til å kryptere og dekryptere
Hva er et problem med one-time-pad?
Krever veldig lange nøkler. Nøkler kan heller ikke gjenbrukes.
Hva er beregningsmessig sikkerhet?
Gitt en c, så tar det lang tid å ekskludere en enkelt klartekst p
Nevn 3 problemer som (vi tror) er vanskelige å løse i praksis
Faktorisering av store tall
Å invertere AES-blokkchifferprimitivet
Å finne diskrete logaritmer på en elliptisk kurve
Hvilket beregningsmessig vanskelig problem utnyttes i RSA?
At det er vanskelig å faktorisere store tall
Hvilket beregningsmessig vanskelig problem brukes i AES?
At AES-blokkchifferprimitivet er vanskelig å invertere
Hvilket beregningsmessig vanskelig problem brukes i ECDH?
At det er vanskelig å finne dikrete logaritmer på en elliptisk kurve
Hvordan definerer vi “lang tid” når vi snakker om beregningsmessig sikkerhet?
At tidsbruk på et problem vokser tilnærmet-eksponentielt med nøkkelstørrelse
I praksis, hva går de vanligste angrepene innen kryptografi ut på?
Sårbarheter i programvare oppstår på grunn av feil bruk av kryptografiske algoritmer
Gi 3 eksempler på feil bruk av kryptografiske algoritmer
Nøkler postes på Git
Signaturer valideres ikke, eller bare delvis valideres
Nonces genereres basert på klientkontrollerte verdier
Hva er et monoalfabetisk substitusjonschiffer?
Hver bokstav i klartekst-alfabetet mappes til én bokstav i chiffertekst alfabetet
Hva er noen problemer med monoalfabetisk substitusjonschiffer?
Språkstrukturer bevares slik at frekvensanalyse kan benyttes i cryptanalysis
Hva er et blokkchiffer?
Et blokkchiffer opererer på blokker, ikke individuelle tegn
Hva er et blokkchifferprimitiv?
Hvordan én blokk krypteres individuelt
Krypteringsfunksjonen E i primitivet har som output en ny blokk. Ingen to blokker gjøres om til samme blokk
Hva er et blokkchiffermodus?
Hvordan en lengre tekst krypteres ved å bruke blokkchifferprimitivet flere ganger
Hva er en permutasjon i blokkchiffre?
En funksjon som stokker om på mengden mulige blokker
Hvilken sikkerhetsantagelse gjør vi om primitiver (for eksempel AES)?
At det gir beregningsmessig sikkerhet. Altså er E(k, b) pseudorandom
Nevn en egenskap AES trolig har
Pseudorandomness
Hva er pseudorandomness?
Dersom man har én kryptert blokk og én blokk med tilfeldig data, skal man ikke kunne gjette hvilken blokk som er kryptert og hvilken som er tilfeldig mer enn 50% av gangene
Hva er IND-CPA?
Indistinguishability under Chosen Plaintext Attack
Beskriv ECB mode
Primitivet blir brukt på hver blokk
Plaintext_blokk_1 -> E(key, -) -> ciphertext_blokk_1