Netzwerksicherheit – Übung 2
Transcription
Netzwerksicherheit – Übung 2
Besprechung der Hausaufgabe RSA Betriebsmodi Netzwerksicherheit – Übung 2 Tobias Limmer, Christoph Sommer, David Eckhoff Computer Networks and Communication Systems Dept. of Computer Science, University of Erlangen-Nuremberg, Germany 15. – 19.11.2010 Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 1 / 10 Besprechung der Hausaufgabe RSA Betriebsmodi Besprechung der Hausaufgabe Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 2 / 10 Besprechung der Hausaufgabe RSA Betriebsmodi Besprechung der Hausaufgabe Originalnachricht UKW: B W/0: B241 Stecker: ATBLDFGJHMNWOPQYRZVX Rings: AAAV Message key: VJNA vonvonjlooksjhffttteinseinsdreizwoyyqnnsneuninhalt xxbeiangriffunterwassergedruecktywabosxletztergegn erstandnulachtdreinuluhrmarquantonjotaneunachtseyh sdreiyzwozwonulgradyachtsmystossenachxeknsviermbfa elltynnnnnnooovierysichteinsnull Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 3 / 10 Besprechung der Hausaufgabe RSA Betriebsmodi Besprechung der Hausaufgabe Interpretation Von Looks: Funktelegramm 1132/19 Inhalt: Bei Angriff unter Wasser gedrueckt, Wasserbomben. Letzter Gegnerstandort 08:30 Uhr, Marqu AJ 9863, 220 Grad, 8 Seemeilen, stosse nach. 14 Millibar faellt, NNO 4, Sicht 10. Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 4 / 10 Besprechung der Hausaufgabe RSA Betriebsmodi RSA 1 Wähle zwei Primzahlen q, p mit q 6= p 2 Berechne n = p · q Berechne ϕ(n) = (p − 1) · (q − 1) 3 Weil ϕ(a · b) = ϕ(a) · ϕ(b) · (d/ϕ(d)) mit d = gcd(a, b) ϕ(x) berechnet die Anzahl der Zahlen relativ prim zu x. Falls x prim, so ist dies x − 1. 4 Wähle e relativ prim zu ϕ(n) mit 1 < e < ϕ(n) 5 Berechne d mit eea, so dass e · d mod ϕ(n) = 1 6 Public Key: K + = {e, n}, Private Key: K − = {d, n}. 7 En/Decryption: M e mod n = C C d mod n = M Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 5 / 10 Besprechung der Hausaufgabe RSA Betriebsmodi RSA Erweiterter Euklidischer Algorithmus: d = gcd(a, b) = m × a + n × b Algorithmus: (int d, m, n) = ExtendedEuclid(int a, b) { if (b=0) return (a, 1, 0); (d’, m’, n’) = ExtendedEuclid(b, a mod b); (d, m, n) = (d’, n’, m’-RoundDown(a/b)*n’); return (d, m, n); } Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 6 / 10 Besprechung der Hausaufgabe RSA Betriebsmodi Betriebsmodus ECB (Electronic Code Book) ECB Encrypt K Time = 1 Time = 2 P1 P2 Encrypt C1 K Encrypt C2 Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 Time = n ... Pn ... K Encrypt Cn 7 / 10 Besprechung der Hausaufgabe RSA Betriebsmodi Betriebsmodus CBC (Cipher Block Chaining) Symmetric Block Ciphers - Modes of Encryption - CBC CBC Encrypt Decrypt Time = 1 Time = 2 P1 P2 IV + + K Encrypt K Encrypt Time = n ... Pn Cn-1 ... K + Encrypt C1 C2 Cn C1 C2 Cn K Decrypt K IV + + P1 P2 Decrypt Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 ... K Cn-1 Decrypt + Pn 8 / 10 Besprechung der Hausaufgabe RSA Betriebsmodi Betriebsmodus CFB (Ciphertext Feedback) CFB Time = 1 Time = 2 Shift‐Reg. b ‐j | j b Encrypt K K K Select Discard j | b‐j j j | b‐j j j | b‐j j C1 j P2 j + K Encrypt j C2 j Pm + j Cm‐1 Shift‐Reg. b‐j | j b j Encrypt b b Select Discard Select Discard Select Discard j | b‐j j j | b‐j j j | b‐j j + j C1 P2 j + Cm Shift‐Reg. b‐j | j b ... K Encrypt b P1 b Select Discard Shift‐Reg. b‐j | j b Decrypt Encrypt b Select Discard + j Shift‐Reg. b‐j | j b ... K Encrypt b P1 Cm‐1 Shift‐Reg. b‐j | j b Encrypt Time = m ... j C2 Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 Pm j + j Cm 9 / 10 Besprechung der Hausaufgabe RSA Betriebsmodi Betriebsmodus OFB (Output Feedback) OFB Shift‐Reg. b‐j | j b Encrypt K K Encrypt Select Discard Select Discard j | b‐j j | b‐j j j | b‐j j + K C1 j P2 + j K Encrypt Pm + j S(j, EK(Rm‐1)) b Select Discard j | b‐j Select Discard j | b‐j j | b‐j j + j C1 P2 j Cm Encrypt b j j Shift‐Reg. b‐j | j b ... K Encrypt Select Discard j C2 j Shift‐Reg. b‐j | j b b P1 b Select Discard Shift‐Reg. b‐j | j b Decrypt Encrypt b j j Shift‐Reg. b‐j | j b ... K Encrypt b P1 S(j, EK(Rm‐1)) Shift‐Reg. b‐j | j b j + j C2 Tobias Limmer, Christoph Sommer, David Eckhoff: Netzwerksicherheit – Übung 2 Pm j + j Cm 10 / 10