Socrative-Fragen Übung 01
Transcription
Socrative-Fragen Übung 01
Institut für Theoretische Informatik Prof. Dr. J. Müller-Quade Übungsleiter: Björn Kaidel, Alexander Koch Stammvorlesung Sicherheit im Sommersemester 2016 Socrative-Fragen aus der Übung vom 28.04.2016 1 Quiz 1: Vigenère 1. Um Vigenère zu brechen, geht man folgendermaßen vor: (A) Man verwendet Brute-Force (B) Man bestimmt die Schlüssellänge und wendet dann sukzessive Frequenzanalysen an (C) Das Vigenère-Verfahren kann nur gebrochen werden, wenn Teile des Klartexts bekannt sind (Known Plaintext Attack) Korrekte Antwort: (A) Erklärung: Das Vorgehen von (A) wurde in der ersten Aufgabe des ersten Übungsblatts genau besprochen. Natürlich könnte man das Verfahren auch durch Brute-Force brechen, dies hätte aber exponentielle Laufzeit. Eine Known-Plaintext-Attack auf das VigenèreVerfahren ist auch zwar möglich (kennt man ein Chiffrat und seine Verschlüsselung, lässt sich daraus einfach der Schlüssel rekonstruieren), ein Klartext-Chiffrat-Paar ist aber nicht notwendig, um das Verfahren zu brechen. 2. Der gesuchte Schlüssel ist... (A) NSA (B) GCHQ (C) BSI (D) DGSE Korrekte Antwort: (A) Erklärung: siehe Lösung von Aufgabe 1 des ersten Übungsblatts. 3. Der verschlüsselte Klartext ist... (A) ... ein Auszug aus dem Buch The Hitchhiker’s Guide to the Galaxy“ ” (B) ... ein Zitat von Edward Snowden 1 (C) ... eine technische Beschreibung eines Krypto-Algorithmus (D) ... ein Rezept für leckere Kekse Korrekte Antwort: (B) Erklärung: siehe Lösung von Aufgabe 1 des ersten Übungsblatts. 2 Quiz 2: Blockchiffren 1. Blockchiffren sind symmetrische Verfahren, d.h. es gibt nur einen geheimen Schlüssel zum Ver- und Entschlüsseln. (A) Wahr (B) Falsch Korrekte Antwort: Wahr 2. Blockchiffren verarbeiten nur einen Block. Um ganze Nachrichten zu verschlüsseln verwendet man sie in einem Betriebsmodus, der vorgibt, wie mehrere Blöcke verarbeitet werden. (A) Wahr (B) Falsch Korrekte Antwort: Wahr 3. Welcher Betriebsmodus wurde hier vermutlich zur Verschlüsselung verwendet? (A) (B) (C) (D) CBC CTR ECB GCM Korrekte Antwort: (C) Erklärung: Der ECB-Modus ist vollkommen deterministisch (alle anderen Modi sind – korrekt angewendet – nicht deterministisch). Somit wird ein Klartext beim Verschlüsseln immer auf das gleiche Chiffrat abgebildet. Dieser Effekt ist gut im obigen Bild erkennbar, große gleichfarbige Flächen aus dem ursprünglichen Bild sind auch im Chiffrat leicht zu erkennen. 2 4. Die Betriebsmodi CBC und CTR schützen vor Manipulation des Klartexts durch einen aktiven Angreifer. (A) Wahr (B) Falsch Korrekte Antwort: Falsch Erklärung: Beide Modi sind für Manipulationen anfällig. Beim CBCModus wird ein Block Mi verschlüsselt, indem Ci := E(K, Mi ⊕Ci−1 ) berechnet wird. Somit wirken sich Veränderung auf den vorherigen Chiffratblock Ci−1 auf die Entschlüsselung aus. Kennt man beispielsweise Mi , so kann man das Chiffrat folgendermaßen ändern: Man wählt selbst eine beliebige Nachricht M und verändert Ci−1 so, dass Ci−1 = Mi ⊕ M . Bei der Entschlüsselung von Ci erhält man nun als Klartext M statt Mi (der Chiffratblock Ci−1 ist aber zerstört“, ” d.h. das Ergebnis der Entschlüsselung von Ci−1 ist unklar). Dies wurde in der ersten Übung anhand einer Demo vorgeführt (die Skripte dafür befinden sich auf der Vorlesungswebsite). Beim CTR-Modus gilt Ci = E(K, IV + i) ⊕ Mi . Somit kann der Klartext von jedem Chiffratblock durch einfache XOR-Operationen manipuliert werden. 5. Die Verschlüsselung im CBC-Betriebsmodus ist parallelisierbar. (A) Wahr (B) Falsch Korrekte Antwort: Falsch Erklärung: Um den Nachrichtenblock Mi zu verschlüsseln, muss Ci := E(K, Mi ⊕ Ci−1 ) berechnet werden. Wir benötigen also das Ergebnis der Verschlüsselung Ci−1 des vorherigen Blocks Mi−1 . 3 Quiz 3: IND-CPA, One-Time-Pad 1. Damit ein Verschlüsselungsverfahren IND-CPA sicher sein kann, darf der Verschlüsselungsalgorithmus nicht deterministisch sein. (A) Wahr (B) Falsch Korrekte Antwort: Wahr Erklärung: Ist der Verschlüsselungsalgorithmus deterministisch, so könnte sich ein Angreifer einfach zwei beliebige gleichlange Nachrichten M1 , M2 von seinem Verschlüsselungsorakel verschlüsseln lassen und diese Nachrichten als Challenge ausgeben. Das Challengechiffrat C ∗ muss er jetzt nur noch mit den ihm schon bekannten Chiffraten vergleichen. Da das Verfahren deterministisch ist, gewinnt er das IND-CPA-Spiel so immer. 2. Wann gewinnt der Angreifer das IND-CPA-Spiel? 3 (A) Wenn seine Erfolgswahrscheinlichkeit nicht klein“ ist. ” (B) Wenn seine Erfolgswahrscheinlichkeit minus 1/2 nicht klein“ ist. ” (C) Wenn der Angreifer erraten hat, welche seiner zwei selbstgewählten Nachrichten im Challengechiffrat verschlüsselt wurde. Korrekte Antwort: (C) Erklärung: Der Angreifer gewinnt, wenn er richtig entscheidet – die anderen Antworten beziehen sich eher auf die Frage, wann ein Verschlüsselungsverfahren IND-CPA-sicher ist (siehe nächste Frage). 3. Wann ist ein Verschlüsselungsverfahren IND-CPA-sicher? (A) Wenn für einen PPT-Algorithmus A die Wahrscheinlichkeit Pr[A gewinnt] klein“ ist. ” (B) Wenn für alle Algorithmen A gilt, dass Pr[A gewinnt] klein“ ist. ” (C) Wenn für alle PPT-Algorithmen A gilt, dass Pr[A gewinnt] − 1/2 klein“ ist. ” (D) Wenn das Verfahren nicht von einem CPA-Algorithmus unterscheibar ist. Korrekte Antwort: (C) Erklärung: Wir wollen Sicherheit gegen alle PPT-Angreifer. Somit ist (A) falsch, da es sich nur auf einen Angreifer bezieht. Antwort (B) ist falsch, da sie über alle Angreifer redet – also auch solche, die exponentielle Laufzeit haben. Die IND-CPA-Sicherheit deckt aber nur effiziente Angreifer, also solche mit polynomieller Laufzeit, ab. Zusätzlich fehlt bei beiden Fragen bei der Wahrscheinlichkeit das −1/2“. Bei ” IND-CPA hat jeder Angreifer sowieso Gewinnwahrscheinlichkeit 1/2, indem er einfach rät. Wir interessieren uns daher nur für Angreifer mit Erfolgswahrscheinlichkeiten, die sich wesentlich von 1/2 unterscheiden und ziehen daher 1/2 bei der Betrachtung ihrer Erfolgswahrscheinlichkeit ab. Antwort (D) ist eine Nonsense-Antwort und verwendet Begriffe falsch. 4. Was passiert, wenn man beim One-Time Pad den Schlüssel mehrmals verwendet? (A) Nichts, man kann den Schlüssel beliebig oft verwenden. (B) Man kann den Schlüssel ohne Sicherheitseinbuße polynomiell oft wiederverwenden. (C) Doktor Meta übernimmt mit Hilfe von Velociraptoren die Weltherrschaft. (D) Verschlüsselt man zwei Klartexte mit dem selben Schlüssel, wird das Verfahren unsicher. Korrekte Antwort: (D) 4 Erklärung: Seien C1 , C2 zwei One-Time-Pad-Chiffrate, die mit dem selben Schlüssel K erstellt wurden. Dann gilt C1 = M1 ⊕ K und C2 = M2 ⊕ K. Wir können nun C1 ⊕ C2 = M1 ⊕ K ⊕ M2 ⊕ K = M1 ⊕ M2 berechnen. Hier kann man nun mithilfe von statistischen Methoden Informationen über M1 und M2 gewinnen. Sind M1 und M2 etwa natürlichsprachige Texte, lassen sich beispielsweise Teile der Klartexte rekonstruieren. Inwiefern das Verfahren unsicher“ wird, hängt ” also von der Anwendung ab. Ein anschauliches Beispiel dafür findet sich in Aufgabe 4 des ersten Übungsblatts. 5