Public-Key-Algorithmen WS2015/2016 Lernkontrollfragen Michael Braun • Was bedeuten die kryptographischen Schutzziele Vertraulichkeit, Integrität, Nachrichtenauthentizität, Teilnehmerauthentizität, Verbindlichkeit? • Durch welche Verfahren lassen sich die einzelnen Schutzziele erreichen? • Was ist die grundlegende Idee hinter einem symmetrischen und einem asymmetrischen Ansatz? 1 / 17 • Wie ist die grundlegende Funktionsweise einer symmetrischen Verschlüsselung und eines Message-Authentication-Codes? • Wie ist die grundlegende Funktionsweise einer asymmetrischen Verschlüsselung und einer digitalen Signatur? • Wie ist die grundlegende Funktionsweise eines Challenge-Response-Verfahrens? Welche Varianten gibt es sowohl für einen symmetrischen als auch für einen asymmetrischen Ansatz? 2 / 17 • Wie ist die Funktionsweise der drei wesentlichen asymmetrischen Ansätze: RSA, Diskreter Logarithmus (DL), Elliptische Kurven (ECC)? Worauf beruht die Sicherheit der drei Verfahren? • Wie ist die Funktionsweise der RSA-Verschlüsselung (und natürlich auch Entschlüsselung!) und der RSA-Signatur? Wie werden die Schlüssel erzeugt? • Wie sind die Systemparameter und die Schlüssel bei dem herkömmlichen DL-Verfahren aufgebaut? Wie werden DL-Schlüssel erzeugt? • Wie sind die Systemparameter und die Schlüssel bei dem ECC-Verfahren aufgebaut? Wie werden ECC-Schlüssel erzeugt? 3 / 17 • Wie funktioniert das Diffie-Hellman-Protokoll in GF (p)? Was kann damit erreicht werden? Worauf basiert die Sicherheit des Protokolls? • Wie funktioniert eine ElGamal-Verschlüsselung in GF (p)? • Wie funktioniert eine Challenge-Response-Authentifizierung in GF (p)? 4 / 17 • Wie sind endliche Körper definiert? • Wie sind die beiden Typen von Körpern – Primkörper und binärer Erweiterungskörper – aufgebaut? Wie lassen sich die Körperelemente in beiden Fällen darstellen? • Was ist ein unzerlegbares (=irreduzibles) Polynom und wozu wird es benötigt bei der Konstruktion binärer Erweiterungskörper? • Wie lassen sich die Elemente eines binären Erweiterungskörpers als Vektoren darstellen? Welche algebraische Operation entspricht dann ein Links- bzw. Rechtsshift bei den Vektoren? • Wie werden die Elemente eines binären Erweiterungskörpers effizient auf einer W -Bit-Plattform repräsentiert? 5 / 17 • Wie funktionieren die grundlegenden Rechenoperationen wie Addition, Multiplikation, additive und multiplikative Inversion in Primkörpern und binären Erweiterungskörpern? • Wie funktionieren Subtraktion und additive Inversion in binären Erweiterungskörpern? Wie kann man sich dieses Verhalten erklären? 6 / 17 • Welche Algorithmen gibt es zur Multiplikation in binären Erweiterungskörpern? • Wie funktioniert der Shift-and-Add-Algorithmus zur Multiplikation in binären Erweiterungskörpern und welche Komplexität besitzt der Algorithmus? (Algorithmus soll theoretisch beschrieben und praktisch angewendet werden können) • Wie funktionieren die folgenden Algorithmen zur Multiplikation von binären Polynomen (ohne Reduktion!): R2L, L2R, L2R-Window (Algorithmen, Ansätze und Ideen müssen verstanden werden; Beschreibung der vollständigen Algorithmen wird in der Klausur nicht verlangt) • Wie funktioniert der Karatsuba-Algorithmus und was ist die Komplexität des Algorithmus? 7 / 17 • Wie multipliziert man ein binäres Polynom effizient mit sich selbst (=Quadrierung)? • Wie wird grundlegend reduziert im binären Erweiterungskörper? • Wie funktioniert eine effiziente Reduktion? • Wie funktioniert die spezielle Reduktion bei einem vorgegebenen unzerlegbaren Polynom? (Idee hinter Algorithmus muss verstanden werden; der in der Vorlesung angegebene Algorithmus für 163 muss nicht wiedergegeben werden in der Klausur) 8 / 17 • Wie funktioniert die Division mit Rest bei ganzen Zahlen? • Was ist der größte gemeinsame Teiler von zwei ganzen Zahlen? • Welche grundlegende Eigenschaften erfüllt der größte gemeinsame Teiler? • Wie funktioniert der euklidische Algorithmus zur Berechnung eines größten gemeinsamen Teilers? (rekursive und iterative Versionen sollen theoretisch beschrieben und praktisch angewendet werden können) 9 / 17 • Was besagt der Satz von Bezout? • Wie funktioniert der erweiterte euklidische Algorithmus? (Algorithmus soll verstanden werden und praktisch angewendet werden können; es wird keine theoretische Beschreibung des gesamten Algorithmus verlangt in der Klausur) • Was ist die grundlegende Idee hinter dem binären euklidischen Algorithmus? (Algorithmus soll verstanden werden; es wird keine theoretische Beschreibung des gesamten Algorithmus verlangt in der Klausur) 10 / 17 • Wie lassen sich die Fragen der letzten beiden Folien für Polynome über Primkörpern beantworten? 11 / 17 • Wie sind elliptische Kurven definiert über den reellen Zahlen? Wie sind elliptische Kurven über einem endlichen Körper (Primkörper bzw. binären Erweiterungskörper) definiert? • Wie sieht eine elliptische Kurve im Reellen aus? • Wie kann man eine elliptische Kurve über einem kleinen Primkörper zeichnen? • Wie kann man auf einer elliptische Kurve rechnen? (Anschauliche Interpretation im Reellen und Übertragung auf endliche Körper; die Formeln für Addition und Verdoppelung müssen nicht auswendig gelernt werden; falls die Formeln benötigt werden, sind sie angegeben) 12 / 17 • Was sind die Eigenschaften der Rechenregel? (additive Gruppe) • Wie sind negative Punkte definiert für elliptische Kurven über den reellen Zahlen, über Primkörpern bzw. binären Erweiterungskörpern? • Was ist der unendliche ferne Punkt? Wie sind die Rechenregeln für den unendlich fernen Punkt? 13 / 17 • Wie ist die Skalarmultiplikation auf elliptischen Kurven definiert? • Wie funktionieren Double-and-Add, Add-and-Double und die Montgomery-Leiter zur Berechnung der Skalarmultiplikation? (Alle drei Versionen der Algorithmen sollen verstanden und theoretisch beschrieben werden können; Montgomery muss nur auf High-Level-Ebene beschrieben werden können; die Herleitung der Formeln für die projektiven Koordinaten ohne y-Koordinate muss verstanden werden, wird aber nicht in der Klausur verlangt) • Was sind projektive Koordinaten und welche Vorteile ergeben sich durch die Verwendung dieser Koordinaten? 14 / 17 • Was sind die Systemparameter einer elliptischen Kurve? Was sind die einzelnen Bestandteile (Endliche Körper, Kurvenparameter, Basispunkt, Ordnung des Basispunktes, Cofaktor) • Wie ist das Diskrete-Logarithmus-Problem (DLP) auf elliptische Kurven? • Wie funktioniert der Baby-Step-Giant-Step-Angriff zur Berechnung des DLPs und welche Komplexität besitzt dieser Angriff? • Wie werden privater und öffentlicher Schlüssel eines ECC-Systems erzeugt? 15 / 17 • Wie funktioniert das Diffie-Hellman-Protokoll für elliptische Kurven? Was kann damit erreicht werden? Worauf basiert die Sicherheit des Protokolls? • Wie funktioniert eine ElGamal-Verschlüsselung auf Basis elliptischer Kurven? • Wie funktioniert eine Challenge-Response-Authentifizierung auf Basis elliptischer Kurven? • Wie funktioniert der DSA (Signaturstandard)? (Algorithmus muss verstanden werden, aber nicht vollständig beschrieben werden können in der Klausur) 16 / 17 • Es sind keine Hilfsmittel zugelassen! • Es wird 5-6 Aufgaben aus allen wichtigen Themenfeldern der Vorlesung geben (Arithmetik Zahlen/Polynome/Körper, Arithmetik Kurven, Protokolle etc.) 17 / 17
© Copyright 2025 ExpyDoc