3. CryptoProtocols - Control Questions Flashcards
How are modern ciphers classified? (types of ciphers?)
Hogyan vannak a modern rejtjelezők titkosítva? (rejtjelezők fajtái?
- Folyamatos rejtjelező (stream cipher) /4. oldal/
generálunk ál-random bájtokat egy random kulcsból (K) és XOR-ozzuk őket a nyílt szöveghez (nem rejtjelezett) - Blokk alapú rejtjelező (block cipher) /5. oldal/
• a blokk alapú rejtjelezők bit blokkokkal dolgoznak (egy blokk általában n=128 bit)
• állapotmentesek (nem úgy, mint a folyamatos rejtjelezők)
• nem lehet őket hatékonyan megkülönböztetni egy random permutációtól - Asszimetrikus rejtjelező (publikus kulcs)
• lassabb, mint a szimmetrikus titkosítás és hosszabb kulcsot igényel (pl. 2048 bit) hasonló biztonsághoz
• a lassúság megoldható a hibrid titkosítással:
What are the block size and the key size of AES?
a blokk szigorúan: 128 bit
kulcs: 128, 192 vagy 256 bit
How does the CBC block encryption mode work?
each block of plaintext is XORed with the previous ciphertext block before being encrypted. This way, each ciphertext block depends on all plaintext blocks processed up to that point. To make each message unique, an initialization vector must be used in the first block.
Why do we use a hybrid approach for encrypting large messages instead of pure public key encryption?
Mert a publikus kulcs alapú titkosítás lassabb, mint a szimmetrikus titkosítás és hosszabb kulcsot is igényel (pl. 2048 bit) hasonló biztonsághoz.
What is a cryptographic hash function? (Kriptográfiai hash függvények) /14. oldal/
a hash függvény egy olyan függvény, ami egy tetszőleges hosszú üzeneteket egy fix hosszú kimenetre (n bit) képez.
x : (bemenet) üzenet /(input) message /
y = H(x) : hash érték /hash value, message digest, fingerprint/
What are the desired security properties of hash functions? /15. oldal/
gyenge ütközés ellenállás (weak collision resistance)
o adott x bemenetre, számításilag lehetetlen a második x’ bemenet megtalálása, hogy H(x’) = H(x)
o adott bemenethez nehéz egy második, különböző bemenetet találni, úgy, hogy a lenyomataik megegyezzenek
erős ütközés ellenállás
o számításilag lehetetlen találni 2 különböző x és x’ bemenetet, amire H(x) = H(x’)
o nehéz két különböző bemenetet találni, melyek lenyomata megegyezik
egyirányúság (second pre-image resistance)
o a hash-értéknek bármely bemenetre könnyen kiszámíthatónak kell lennie, míg adott lenyomatot eredményező bemenet megtalálása nehéz (hatékonyan lehetetlen) feladat
What services do MAC functions provide and how? /16. oldal/
A MAC függvény egy olyan függvény egy tetszőleges hosszú üzenetet és egy kulcsot (k bits) képez egy adott hosszú kimenetre (n bit)
- hash függvényként is lehet rá tekinteni, egy plusz kulccsal
Szolgáltatásai:
üzenet hitelesítés és integrció védelem:
a MAC érték sikeres hitelesítése után, a fogadó biztosítva van, hogy az üzenet a küldő által volt generálva és szállítás közben nem lett módosítva
Példák:
HMAC, CBC-MAC schemes
What services do digital signature schemes provide and how? /17. oldal/
Digitális aláírás
hasonló, mint a MAC, de
• unforgeable by the receiver (?????)
• harmadik résztvevő által igazolható
Szolgáltatásai:
• üzenet hitelesítés és integráció védelem
o az üzenet sikeres hitelesítése után , a fogadó biztosítva van, hogy az a küldő által volt generálva és nem volt megváltoztatva
• non-repudiation of origin
o a fogadó ezt be tudja bizonyítani egy harmadik résztvevőnek
Példák:
RSA, DSA, ECDSA
What is the hash-and-sign paradigm? /18. oldal/
Lenyomat aláírása (hash-and-sign paradigm)
• publikus és privát kulcsú műveletek lassúak
• hatékonyság növelése az üzenet hash-ének aláírásával, az üzenet aláírása helyett
• elengedhetetlen, hogy a hash függvény ütközés ellenálló
What are the design objectives of key exchange protocols? /28. és 35. oldal/
Mi a kitűzött célja a kulcs cserélő protokolloknak?
- mikor a protokoll végrehajtódik 2 fél által, másnak nem szabad megtudnia a kulcsot (K)
- a K kulcs, ami a 2 fél között létrehozódott, újnak kell lennie
How can we ensure key freshness?
Időbélyeggel:
• Tx a jelenlegi idő X óráján
• a K kulcsot csak akkor fogadja el Y, ha Tx egy (kicsi) ablakon belül van a jelenlegi időnek Y óráján ?????
• újrajátszás csak egy kis időn belül lehetséges
• újrajátszás detektálható, ha minden kapott üzenetre emlékezünk abban a rövid időablak
• FONTOS: az óráknak szinkronizálva kell lenniük
What is a public key certificate? How do we verify it? /42. oldal/
Mi a publikus kulcs tanúsítvány? Hogyan hitelesítjük?
- egy név és egy publikus kulcs össze van linkelve a Certification Authority (CA) digitális aláírásával
- ahhoz, hogy hitelesítsük a tanúsítványt, kell egy hiteles másolat a CA publikus kulcsáról
- előnye: csak a CA publikus kulcsát kell közvetíteni out-of-band (sávon kívüli) csatornákon (jobban skálázódik)
What are the functions of a Certificate Authority?
Mik a Certificate Authority (CA) funkciói?
A CA hardverek, szoftverek és alkalmazottak gyűjteménye.
Funkciói:
• tanusítványokat ad ki felhasználóknak és más CA-knak
• karbantartja a tanusítvány visszavonás infomációkat
• publikál jelenleg érvényes tanusítványokat és tanusítvány visszavonás listákat (certificate revocation lists – CRL)
• karbantart archívumokat
How does a hierarchical PKI look like? /44. oldal/
• CA-k általában hierarchiába vannak rendezve, ahol az alárendelt CA kulcsa egy magasabban lévő CA által van érvényesítve
• faként lehet modellezni
o pontok: a CA-k
o élek: tanusítványok
What is a certificate chain? /45. oldal/
• minden végfelhasználónak kell lennie egy hiteles másolatnak a gyökér CA kulcsáról
• minden végfelhasználói tanúsítvány hitelesíthető a tanúsítványokból álló lánc hitelesítésével
o a gyökér CA saját maga által aláírt tanúsítvánnyal kezdődik
o a végfelhasználó tanúsítványával végződik
o tartalmazza a köztes CA-k tanúsítványait a gyökér CA-tól a végfelhasználóig