2007. 10. 18. B csoport

A VIK Wikiből

Ez az oldal a korábbi SCH wikiről lett áthozva.

Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor, kérlek, javíts rajta egy rövid szerkesztéssel!

Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót.


1. feladat

Mi az a Feistel struktúra? [0.4 pont] Bizonyítsa be, hogy egy Feistel struktúrájú rejtjelező mindig invertálható, még akkor is ha az F réteg-függvény nem invertelható! [0.6 pont]

Megoldás

2. feladat

Legyen P = P1|P2||...||Pn egy N blokkból álló nyíltszöveg. P-t CBC módban rejtjelezzük egy K kulccsal és egy IV kezdeti változóval. Az eredmény legyen az N blokkból álló C = C1||C2||...||Cn rejtettszöveg. Tegyük fel, hogy egy támadó megszerzi P-t és C-t, valamit megfigyel egy másik, M blokkból álló C' = C'1||C'2||...C'M rejtettszöveget, melyról azt is tudja, hogy szintén CBC módot használva ugyanazzal a K kulccsal, de különböző kezedti változóval állították elő, mint C-t. Tegyük fel továbbá, hogy Ci megegyezik C'j-vel valamely i-re és j-re, ahol 1<i≤N és 1 < j ≤ M.

  • Mutassa meg, hogy ekkor a támadó meg tudja fejteni P'j-t (azaz a C' rejtettszöveghez tartozó nyílt szöveg j. blokkját). [0.4 pont]
  • Mekkora anna a valószínűsége, hogy a támadó által megfigyelt M blokkból álló C' legalább egy blokkja megegyezik a támadó által ismert, N blokkból álló C valamely blokkjával, ha a blokkméret n bit és C minden blokkja különböző? [0.6 bit]

Megoldás

3. feladat

Felhasználók egy csoportja ugyanazt az e = 3 RSA kitevőt használja, csak az egyes felhasználók RSA modulusza különbözik. Tegyük fel, hogy valaki a csoport többi tagjának is ugyanazt az m üzenetet küldi, minden tagnak a saját nyílvános kulcsával rejtjelezve.

  • A támadó kezébe kerül ezen rejtjelezett üzenetekből kettő. Miért nem tudja a támadó ezen két rejtjelezett üzenetből hatékonyan megfejteni a nyílt üzenetet? [0.8 pont]
  • Miért nem jó ötlet az, ha nem a kitevő a közös, hanem a minden felhasználó ugyanazt a moduluszt használja (természetesen ebben az esetben különböző kitevővel)? [0.2 pont]

Megoldás

4. feladat

Tegyük fel, hogy egy h iterált hash-függvény kimenetének mérete 64 bit és így hash-függvény nem ütközés-ellenálló. Úgy próbáljuk h kimenetének méretét megnövelni, hogy kimenetként nemcsak az utolsó, hanem az utolsó két láncváltozót (chaining variable - CV) értéket használjuk. Az így nyert h' hash-függvény tehát: h'(x) = CVL-1|CVL.

Bizonyítsa be, hogy h' nem lesy ütközés-ellenálló! [1 pont]

Megoldás

5. feladat

Mi az a CBC-MAC séma? [0.2 pont] Mutasson támadást a CBC-MAC séma ellen? [0.6 pont] Hogyan lehet a támadást elkerülni? [0.2 pont]

Megoldás

6. feladat

Tekintsük az X9.17 véletlenszám-generátort. Adja meg a backtracking támadás algoritmusát (azaz hogyan lehet K, seedi+1, és outputi valamely ismert, de nem invertálható f függvénye ismeretében meghatározni outputi, és seedi értékét). [1 pont]

Megoldás