Praktikum IT-Sicherheit

Ähnliche Dokumente
Praktikum IT-Sicherheit

Die (Un-)Sicherheit von DES

Erinnerung Blockchiffre

Die (Un-)Sicherheit von DES

Kryptografische Hashfunktionen

Bernd Borchert. Univ. Tübingen WS 13/14. Vorlesung. Kryptographie. Teil

Kryptologie. K l a u s u r WS 2006/2007, Prof. Dr. Harald Baier

Betriebssysteme und Sicherheit Sicherheit. Florian Kerschbaum TU Dresden Wintersemester 2011/12

Password: Mein Geheimnis in Händen Dritter

IT-Sicherheit: Kryptographie

Grundlagen der Verschlüsselung und Authentifizierung (1)

Konstruktion von MACs. Message Authentication Codes. Sicherheitsmodell CBC-MAC

AES und Public-Key-Kryptographie

Hashfunktionen und MACs

Praktikum IT-Sicherheit

6 Der Advanced Encryption Standard (AES)

Socrative-Fragen aus der Übung vom

Message Authentication Codes. Konstruktion von MACs. Hash-then-Encrypt. Sicherheitsmodell

AES. Jens Kubieziel 07. Dezember Friedrich-Schiller-Universität Jena Fakultät für Mathem atik und Informatik

Algorithmische Anwendungen Prof. Dr. Heinrich Klocke

Designziele in Blockchiffren

Einführung in die Kryptographie

Denn es geh t um ihr Geld: Kryptographie

Kryptographie und Komplexität

Einführung in die Kryptographie

Praktikum IT-Sicherheit

Kryptographie. Nachricht

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0

4.6.1 Mathematische Grundlagen

CrypTool im Überblick

Name:... Vorname:... Matrikel-Nr.:... Studienfach:...

2.4 Diskussion und Literaturempfehlungen Lessons Learned A ufgaben Literatur... 62

Kryptographie. Vorlesung 7: Der AES Algorithmus. Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca

Kryptologie. Bernd Borchert. Univ. Tübingen, SS Vorlesung. Doppelstunde 3

Kryptographie. ein erprobter Lehrgang. AG-Tagung Informatik, April 2011 Alfred Nussbaumer, LSR für NÖ. LSR für NÖ, 28. April 2011 Alfred Nussbaumer

Einführung in die. Kryptographie WS 2016/ Lösungsblatt

Name: Matr.-Nr.: Seite: Geben Sie drei Klassifizierungsmerkmale aus dem Kurstext für den Begriff

Das Verschlüsseln verstehen

Masterarbeit OCRA Challenge/Response - Framework. Sideris Minovgioudis

Hintergründe zur Kryptographie

Universität Tübingen SS Kryptologie. B. Borchert, D. Reichl. Klausur , (90 min)

Einführung in die Kryptographie

Projekt u23 Symmetrische Kryptografie, Betriebsmodi von Blockchiffren

Einführung in die Kryptographie

Wiederholung. Symmetrische Verschlüsselung klassische Verfahren: moderne Verfahren: DES (Feistel-Chiffre) mehrfache Wiederholung einer Kombination aus

Sicherheit in Informationsnetzwerken Protokoll. Cryptool Versuch 1 am

Vorlesung IT-Sicherheit FH Frankfurt Sommersemester 2007

VI.4 Elgamal. - vorgestellt 1985 von Taher Elgamal. - nach RSA das wichtigste Public-Key Verfahren

VI.3 RSA. - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman. - vorgestellt erstes Public-Key Verschlüsselungsverfahren

Einführung in die Kryptographie

Einführung in die Kryptographie

Lösung zur Klausur zu Krypographie Sommersemester 2005

Verlässliche Verteilte Systeme 1. Prof. Dr. Felix Gärtner. Basiswissen Kryptographie

Name:... Vorname:... Matrikel-Nr.:... Studienfach:...

SMARTentry Notification

9.5 Blockverschlüsselung

6. Lösungsblatt

Klassische Verschlüsselungsverfahren

Zusammenfassung: Kryptographie

Kryptograhie Wie funktioniert Electronic Banking? Kurt Mehlhorn Adrian Neumann Max-Planck-Institut für Informatik

Regine Schreier

Erstellen eines Zertifikats

EINIGE GRUNDLAGEN DER KRYPTOGRAPHIE

Praktikum IT-Sicherheit

10 Der Advanced Encryption Standard (AES)

Pseudozufallsfunktionen (PRF) Kapitel 3

Wiederholung: Informationssicherheit Ziele

Erinnerung Blockchiffre

Kurs 1866 Sicherheit im Internet

SMARTentry Notification

Erinnerung Blockchiffre

Algorithmische Kryptographie

OPC UA: Ein kritischer Vergleich der IT-Sicherheitsoptionen

Übungen zur Vorlesung Systemsicherheit

Sichere Programmierung

BIT IT Cloudio. Konfigurationsanleitung

Inhaltsverzeichnis. Wolfgang Ertel. Angewandte Kryptographie. ISBN (Buch): ISBN (E-Book):

Sicherheit: Fragen und Lösungsansätze

6.3 Authentizität. Geheimhaltung: nur der Empfänger kann die Nachricht lesen. die Nachricht erreicht den Empfänger so, wie sie abgeschickt wurde

Transkript:

IT-Sicherheit Praktikum IT-Sicherheit - Versuchshandbuch - Aufgaben Kryptografie II In diesem zweiten Versuch zur Kryptografie gehen wir etwas genauer auf die Art und Weise der Verschlüsselung mit der Blockchiffre AES und auf die Verwendung verschiedener Hashfunktionen in dem Message Authentication Code HMAC ein. Weiterhin erfahren Sie, dass die Kompromittierung eines AES-Schlüssels auch dann kaum möglich ist, wenn Teile des Schlüssels in die Hände eines Angreifers gelangen sollten. B.Sc. AI, M.Sc. AI M.Sc. EB

Einleitung Kryptografische Verfahren werden in rechnerbasierten Kommunikationsnetzen nicht nur zur Gewährleistung von Vertraulichkeit eingesetzt, sondern auch zum Schutz vor Datenmanipulation, nicht autorisierter Dienstnutzung und Abstreitbarkeit durchgeführter Aktivitäten. Mit Hilfe von CrypTool werden Einblicke in aktuelle Verschlüsselungsverfahren gewährt, Möglichkeiten der Kryptoanalyse und die Verwendung von Hashverfahren vorgestellt. Nachfolgend führen Sie exemplarisch einzelne Rundenoperationen (ShiftRow, SubByte, MixColumn, Roundkey) des im AES implementierten Rijndael-Verschlüsselungsalgorithmus durch und verwenden den HMAC- Algorithmus zur Berechnung verschiedener Hashwerte. Zugangsdaten System: Windows XP Benutzer: Administrator Passwort: seclab Netzwerkplan 2

Aufgabe 1: AES Verschlüsselungsverfahren a) Gegeben ist ein Klartextblock der zu verschlüsselnden Nachricht m und der dazugehörige geheime Schlüssel Ks. Führen Sie die initiale Verknüpfung mit dem geheimen Schlüssel vor dem Rundenstart durch und tragen Sie das Ergebnis in die dazugehörige Zustandsmatrix 1 ein. Klartext Schlüssel Zustandsmatrix 1 b) Für die Operation SubByte ist nun eine S-Box der Grösse 16 x 16 mit Werten in hexadezimaler Form gegeben. Mittels der S-Box ist nun die Operation auf obige Zustandsmatrix 1 anzuwenden. Im Ergebnis ensteht die Zustandsmatrix 2. Zustandsmatrix 2 3

c) Führen Sie nun die ShiftRow Operation durch. Dabei wird in Abhängigkeit der Blocklänge b eine Verschiebung des Inhalts der Zeilen durchgeführt. Für die Blocklänge von 32 Byte tragen Sie das Resultat in die Zustandsmatrix 3 ein. Zustandsmatrix 3 d) Für die Operation MixColumn benötigen wir die abgebildete Konstantenmatrix A. Bestimmen Sie für die leer stehenden Felder der Zustandsmatrix 4 die entsprechenden Elemente und geben Sie die Lösungsschritte an. Hinweis : Die Elemente der Zustandsmatrix 4 ergeben sich durch Multiplikation der Zeilenvektoren der Konstantenmatrix A mit den entsprechenden Spaltenvektoren der Zustandsmatrix 3. Schauen Sie sich ggf. die Ausführungen im Vorbereitungsblatt zu diesem Versuch an. Konstantenmatrix Zustandsmatrix 4 4

e) Um den gesamten Ablauf visuell nachverfolgen zu können, stehen in CrypTool 1.4 ausführliche Animationen zur Verfügung. Einzelverfahren Visualisierung von Algorithmen AES Rijndael Animation f) Desweiteren bietet CrypTool die Möglichkeit, Ihre Lösung aus Aufgabenteil d selbst zu überprüfen. Gehen sie obigen Weg, wählen Sie aber Rijndael Inspector aus. Tragen Sie den Klartextblock sowie den Schlüssel aus Aufgabenteil a ein und drücken Sie den Play Button. Die Richtigkeit ihrer Lösung können Sie in der Zeile Runde 1 kontrollieren. 5

Aufgabe 2: Kompromittierung des AES-Schlüssels a) Starten Sie CrypTool 2 und öffnen Sie den Versuch AES_Kryptoanalyse der sich auf dem Desktop befindet. Eine Einführung in die Oberfläche von CrypTool 2 finden sie im Vorbereitungsteil dieses Versuches. Führen Sie die nachfolgenden Schritte durch : Tragen Sie im Fenster Klartext eine beliebige Nachricht ein. Geben Sie einen 128 Bit Schlüssel in hexadezimaler Form an. Im AES Objekt wählen Sie Verschlüsselung mit Schlüssel- und Blockgrösse 128 Bit sowie CBC Modus. Tragen Sie einen 128 bit Initial Vector ein Der Schlüsselsucher erhält den Ciphertext des AES Objekts. Legen Sie in den Optionen des Schlüsselsuchers die notwendigen Einstellungen für die Entschlüsselung fest. Wählen Sie unter CostFunction den Funktionstyp Entropie. Unter Keysearcher können Sie den Schlüssel komplett oder nur teilweise angeben, wobei ** sogenannte Wildcards sind, also unbekannte Schlüsselteile. Beachten Sie dabei, dass der Schlüssel im Schlüsselsucher in der schreibweise (A1-E5- **-**-...) angegeben werden muss. Gehen Sie nun wie folgt vor : Schätzen Sie die Zeit, die nötig ist, um den Ks zu finden, wenn im jeweiligen Fall 104 Bit, 96 Bit und 40 Bit Ihres gewählten Schlüssels bekannt sind. Geben Sie nun im Schlüsselsucher jeweils obige Bits des Schlüssels bekannt und verwenden Sie für unbekannte Anteile Wildcards und starten Sie die Bruteforce-Suche über den Starten Button. b) Wie beurteilen Sie die Sicherheit eines AES 128 Bit Schlüssels unter der Prämisse, dass ein Teil des Ks bekannt ist? c) Geben Sie nun einen 256 Bit AES Schlüssel an und wiederholen Sie die Kryptoanalyse. Beurteilen Sie Ihr Ergebnis. 6

d) Angenommen es ist Ihnen gelungen den Ciphertext sowie den dazugehörigen Plaintext zu erlangen. Wie schätzen Sie ihre Erfolgschancen ein daraus den geheimen Schlüssel Ks zu errechnen? Öffnen Sie den Versuch AES_knownPlaintext und führen sie folgende Schritte durch : Fügen Sie in die Ciphertextbox den Inhalt der Datei Ciphertext.txt ein Wählen Sie im Schlüsselsucher unter Kostenfunktion reguläre Ausdrücke und fügen Sie im Feld regulärer Ausdruck den Klartext aus der Datei Plaintext.txt ein Geben Sie keinen Teilschlüssel an, kopieren Sie dazu das Wildcard Pattern aus der Datei Schlüssel.txt in das Feld Schlüsselsucher->Schlüssel und starten Sie den Versuch Zu welchem Ergebnis kommen Sie? a) Tauschen Sie nun die Wildcards mit dem Teilschlüssel (11-11-11-11-11-11-11-11-11-**-**- **-**-**-**-**) aus der Datei Schlüssel.txt und starten Sie den Versuch erneut. Besteht nun die Möglichkeit den Ks in endlicher Zeit zu erhalten? 7

Aufgabe 3: HMAC a) Erzeugen Sie mit Hilfe von CrypTool 2 einen HMAC unter Verwendung von MD5. Ein Teil des Versuchsaufbaus ist vorgegeben, die fehlenden Komponenten müssen von Ihnen ergänzt werden. Eine Einführung für CrypTool 2 finden Sie im Vorbereitungsblatt zu diesem Versuch. Öffnen Sie den Versuch HMAC auf dem Desktop Geben Sie eine beliebige Nachricht und einen 64 Byte langen Schlüssel in die entsprechenden Textboxen ein. Ergänzen Sie die notwendigen Funktionen zur Generierung des Hashwerts und verbinden Sie die Komponenten, ignorieren Sie die Warnungen bezüglich der Typkonversion bei Verbinden von Komponenten. Hinweis : Das Ergebnis der XOR Operation muss vom jeweiligen Konvertierer verarbeitet werden vor dem nächsten Schritt. Die bereits auf der Arbeitsfläche vorhandene HMAC Komponente dient dazu Ihr Ergebnis zu überprüfen. Starten Sie den Versuch und überprüfen Sie ihr Ergebnis. b) Welche Länge hat der berechnete Hashwert? Verlängern Sie die Nachricht und berechnen Sie den Hashwert erneut. Ändert sich die Länge des resultierenden Hashwerts? Warum erhalten Sie einen anderen Hashwert? a) Tauschen Sie die MD5 Komponente gegen eine SHA-256 Komponente aus und passen Sie die erforderliche Schlüssellänge an. Wie lang ist der errechnete Hashwert und wieso ist dies der Fall? b) Wann liegt eine starke Hashfunktion vor? 8