The most efficient SHA-1 attacks Seminar: Selected Topics in Mobile Security

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "The most efficient SHA-1 attacks Seminar: Selected Topics in Mobile Security"

Transkript

1 RWTH Aachen University Research Group IT-Security The most efficient SHA-1 attacks Seminar: Selected Topics in Mobile Security Johannes Gilger, Betreut von Georg Neugebauer 17. März 2010

2 Inhaltsverzeichnis 1 Einleitung Definition Schwachstellen von Hashfunktionen Praktischer Nutzen von Kollisionen Auswirkungen auf die Einsatzgebiete SHA-0 und SHA Geschichte Funktionsweise Beispiel-Hash Kryptanalyse Angriffe auf SHA SHA-0 Kollisionen nach Chabaud / Joux Verbesserungen von Biham/Chen (2004), Wang (2005) und Naito (2006) Angriffe auf SHA SHA-1 Kollisionen nach Wang (2005) Die Zukunft der SHA-Familie Angriffe auf SHA Der nächste Standard - SHA Fazit 3-15

3 1 EINLEITUNG 3 SHA-1 attacks 1 Einleitung Hashfunktionen, auch Message Digest genannt, sind aus der heutigen Telekommunikation und Kryptographie nicht mehr wegzudenken. Aus ihrer Eigenschaft, selbst minimale Änderungen an Datenblöcken zu erkennen, ergeben sich zwei wichtige Anwendungsbereiche die sich in die bewusste Manipulation von Daten und technische Übertragungsfehler unterteilen lassen. Auf die Verwendung von Hashfunktionen zur Addressierung wird hier nicht näher eingangen. In dieser Ausarbeitung beschäftige ich mich mit der momentan am weitesten verbreiteten kryptografisch sicheren Hashfunktion, SHA-1 [12]. Ich möchte zunächst die Anwendungsgebiete und Angriffsmöglichkeiten von Hashfunktionen aufzeigen. Danach wird die Funktionsweise von SHA-0 und SHA-1 erklärt, um mit diesem Wissen eine Einleitung in die bisherigen Angriffe auf den SHA-1 (die auf den SHA-0-Angriffen aufbauen) zu ermöglichen. Das Fazit der bisherigen Angriffe verdeutlicht warum inzwischen vor dem weiteren Neueinsatz von SHA-1 abgeraten wird. Obwohl auch das ältere MD5 noch häufig auftaucht, hat es seinen Status als kryptografisch sichere Hashfunktion schon lange verloren und gilt im praktischen Sinne als gebrochen. Es wird in dieser Ausarbeitung nicht behandelt. 1.1 Definition Eine Hashfunktion ist eine Funktion h : D B die gewöhnlicherweise einen Definitionsbereich D hat der mächtiger ist als der Bildbereich B. Eine allgemeingültige Anforderung an Hashfunktionen ist, dass sie sich schnell berechnen lassen und effizient in Hard- und Software implementiert werden können. Kryptografisch sichere Hashfunktionen sind Einwegsfunktionen, auch Falltürfunktion genannt, da sich das Urbild eines Hashwerts nicht berechnen lässt. Kryptografisch sichere Hashfunktionen haben zusätzliche Sicherheitsanforderungen die hier vorgestellt werden. Preimage resistance: Für den Ausgabewert einer Hashfunktion y = h(x) sollte es praktisch unmöglich sein einen Eingabewert x zu finden. Second preimage resistance: Für einen gegebenen Eingabewert x 1 und h(x 1 ) ist es schwer einen zweiten Wert x 2 x 1 zu finden, so dass h(x 1 ) = h(x 2 ) gilt. Collision resistance: Es sollte schwer sein zwei Werte x 1 x 2 zu finden, so dass h(x 1 ) = h(x 2 ) gilt. Diese Anforderungen ziehen einen Angreifer in Betracht der gewillt ist Sicherheitsverfahren zu brechen die auf solchen Hashfunktionen basieren. Die Anforderungen unterscheiden kryptografisch sichere Hashfunktionen von den gewöhnlichen Hashfunktionen, die zur Adressierung oder zur Fehlerkontrolle verwendet werden, welche entsprechend weniger anspruchsvoll ausfallen. 1.2 Schwachstellen von Hashfunktionen Wie bei der Verschlüsselung von Daten mit symmetrischen Schlüsseln, muss bei Hashfunktionen zwischen zwei unterschiedlichen Arten von Schwachstellen unterschieden werden. Die erste, und offensichtlichste, Schwachstelle ergibt sich aus der Schlüssellänge, bzw. der Länge der Ausgabe bei Hashes. Kleinere Wertebereiche bedeuten dass die Wahrscheinlichkeit steigt durch einfaches Ausprobieren zwei Eingabewerte mit dem gleichen Hashwert zu finden. Für den Hashalgorithmus MD5 ist durch steigende Rechenkapazitäten und geringe Speicherkosten inzwischen der Ansatz über Rainbow-Tables stark verbreitet. Rainbow-Tables sind vorberechnete Datenstrukturen die einen Kompromiss zwischen Speicher- und Rechenaufwand eingehen, indem sie Paare (x, y) aus Eingabewerten x und Hashes y speichern zwischen denen mehrere Schritte von abwechselnder Hashanwendung h und Reduktion r liegen. Die Hashfunktion h wird auf den Eingabewert angewendet, und die 3-3

4 1.3 Praktischer Nutzen von Kollisionen 3 SHA-1 attacks Reduktionsfunktion r wird auf h(x) angewendet, um aus h(x) jeweils wieder einen neuen Eingabewert für die nächste Iteration zu generieren. Sucht man den Eingabewert für einen Hash h(a) so führt man auf diesem Wert die Schritte r und h solange aus bis der Ausgabewert einer der gespeicherten Ausgabewerte y 1 {(x i, y i )} entspricht. Man führt die Schritt h und r auf dem zugehörigen Eingabewert x 1 aus bis man wieder bei h(a) angelegt ist, wobei der Wert a an der vorigen Position steht (siehe Abb. 1). geheim H 0x52342 R secret H 0xk4hvd R sensitive H 0xc3r2d x 1 a h(a) y 1 Abbildung 1: Eine Rainbow-Table mit 3 Iterationen Dieses Verfahren Kollisionen zu finden ist besonders da interessant, wo der Eingabewert von keinem Interesse ist, also z.b. bei Passwortauthentifikation in Computersystemen. Um sich gegen Rainbow-Tables zu schützen hilft der Einsatz eines sog. Salts, also eines Werts der vor der Anwendung der Hashfunktion dem Eingabewert hinzugefügt wird. Dieser kann systemweit oder auch zufallsgeneriert pro Benutzer generiert werden und hat zur Folge, dass die Berechnung einer Rainbow-Table für jeden Benutzer einzeln durchgeführt werden muss. Der zweite, und interessantere, Angriffsvektor sind algebraische Schwachstellen in der Konstruktion von Hashfunktionen. Hierbei versucht man durch Kryptanalyse der Verfahren einen Weg zu finden mit dem Kollisionen effizienter auffindbar sind als durch sequentielles Ausprobieren aller möglichen Eingabewerte. Während man, durch das Geburtstagsparadoxon, davon ausgehen kann bei SHA-1 mit einer Ausgabelänge von 160 Bits nach 2 80 Rechenschritten ein Kollisionspaar zu finden, gibt es inzwischen Ansätze die weit unter diesem theoretischen Maximum liegen. Im den folgenden Abschnitten wird gezeigt wie man solche Verfahren findet und welche Auswirkungen auf den praktischen Einsatz von SHA-1 sie zum jetzigen Zeitpunkt haben. 1.3 Praktischer Nutzen von Kollisionen Inwieweit kryptanalytische Ergebnisse relevant für praktische Angriffe auf Hashfunktionen sind hängt wiederum stark vom Einsatzgebiet ab. Betrachtet man nur die letzten beiden Eigenschaften kryptografischer Hashfunktionen, so ist es einleuchtend, dass mit dem Brechen der Second Preimage-Resistance auch die Collision-Resistance gebrochen ist. Glücklicherweise liegen diese beiden Eigenschaften komplexitätstheoretisch gesehen weit auseinander (mittels Brute Force braucht man theoretisch Hashoperationen um ein zweites Dokument mit dem gleichen Hashwert für ein bereits bestehendes Dokument zu finden), und alle bisherigen Angriffe auf Funktionen der SHA-Familie beziehen sich nur auf die leichter zu berechnende Aufgabenstellung überhaupt zwei kollidierende Eingabewerte zu finden. Ein Szenario ist das Signieren von Zertifikaten (z.b. für SSL-gesicherte Webseiten). Um eine Kollision auszunutzen muss ein Angreifer zwei kollidierende Zertifikate finden (die beide Sinn ergeben) und das erste, harmlos erscheinende, an die Certificate Authority (CA) zum unterschreiben (signieren) senden. Nur wenn die CA dieses erste Zertifikat unverändert unterschreibt kann der Angreifer dem Opfer dann sein zweites, falsche Zertifikat unterjubeln, auf das die Signatur ebenfalls zutrifft. Dies funktioniert da die Signaturen in Public-Key Kryptosystemen aus Effizienzgründen nur auf einen Digest, also den Hash, der Nachricht angewendet werden. Praktisch sind Angriffe dieser Art inzwischen für MD5 bekannt geworden. So wurde von Forschern anlässlich des 25. Chaos Communication Congress eine Attacke präsentiert bei der, mittels der Chosen-Prefix-Methode, sogar eine Rogue CA erstellt wurde [15]. Das bedeutet dass die Angreifer in der Lage waren eine legitim aussehende Certificate Authority zu erzeugen, die wiederum von einer CA signiert war, deren Root-Certificat in allen populären Webbrowsern vorinstalliert ist. Die Erzeugung der CA war möglich obwohl die Signatur sich auf ein Webseiten-Zertifikat und nicht auf ein CA-Zerfikat bezog. Mit dieser falschen Certificate Authority können beliebige gefälschte Zertifikate ausgestellt werden ohne dass einem Benutzer die Täuschung auffällt, da die Zertifikatskette von seinem Webbrowser einwandfrei verifiziert wird. Als Reaktion auf diese Ergebnisse wurde der Ausgabestop von MD5-signierten Zertifikaten in kürzester Zeit von den betroffenen Providern umgesetzt. 3-4

5 1.4 Auswirkungen auf die Einsatzgebiete 3 SHA-1 attacks Angriffe basierend auf mangelnder Collision Resistance können einfach unwirksam oder zumindest schwieriger gemacht werden: Als signierende Stelle sollte man in keinem Fall ein Zertifikat unverändert unterschreiben sondern stattdessen eine kleine Änderung, die für den Inhalt irrelevant ist, am Dokument vornehmen. Der Angreifer müsste dann in der Lage sein die Second preimage resistance zu brechen um einen Angriffsvektor zu haben. Im Fall der o.g. MD5-Kollision gab es zwar auch einen variablen Teil der gehashed wurde, jedoch konnten die Angreifer durch Beobachtung und wiederholtes Ausprobieren schliesslich diesen Teil abpassen. Glücklicherweise gilt, dass neue und effizientere Ergebnisse bei der Suche nach Kollisionen (zum Brechen der Collision-Resistance) keine Auswirkungen auf bereits signierte Daten haben. Bereits signierte Zertifikate sind erst dann in Gefahr gefälscht zu werden, wenn die Second Preimage-Resistance einer verwendeten Hashfunktion nicht mehr sichergestellt ist. Um das Schadenspotential von neuen Veröffentlichungen einzuschätzen ist es notwendig die angegebenen Komplexitätsabschätzungen für Kollisionen genau zu betrachten. Hier können schnell Fehler beim Vergleich der Wahrscheinlichkeiten unterlaufen. So beziehen sich bei manchen Ergebnissen die Komplexitätsangaben von O n nicht auf einzelne Hashoperationen sondern auf Paare von Eingabewerten die jeweils gehashed werden. Das ist insofern erklärbar als dass durch geschickte Abbruchbedingungen der ansonsten unterschlagene Faktor 2 wieder ausgeglichen wird und die Komplexität hier, wie in vielen Angriffen, verglichen zur vollen Version des SHA-1 angegeben wird. Allerdings sollte man sich bewusst machen dass unterschiedliche Hashalgorithmen sich teilweise stark in der Laufzeit unterscheiden. Das Gleiche gilt natürlich auch für die anvisierte Größe des zu kollidierenden Dokuments, wenn man ein konkretes Szenario betrachtet und nicht nur allgemein Kollisionen sucht. Laufzeitkomplexitäten für Kollisionsmethoden auf rundenreduzierte Hashverfahren beziehen sich eben auf diese Rundenzahl, so dass die Berechnung oft um den Faktor 2 schneller ist als der volle Algorithmus. Da alle Komplexitäten nur Abschätzungen sind (und im Fall von SHA-1 bisher nicht überprüft werden können) können den Kryptanalysen Fehler passieren die u.u. erst später auftauchen, nachdem die Ankündigung einer neuen Untergrenze zur Kollisionsfindung schon weite Verbreitung in nichtwissenschaftlichen Kreisen erfahren hat [8]. 1.4 Auswirkungen auf die Einsatzgebiete Öffentliche Behörden, private Firmen und Forscher verfolgen die Entwicklungen bei der Kryptanalyse von verbreiteten Hashfunktionen, da diese ein lohnender Angriffsvektor sind mit dessen praktisch erfolgreicher Kryptanalyse automatisch eine Reihe wichtiger Systeme unsicher würde. Wie auch bei symmetrischen Verschlüsselungsverfahren wie DES ist eine Umstellung spätestens dann anzuraten, wenn die zuständigen US-Behörden vom weiteren Neueinsatz der Verfahren abraten. In diesem Zusammenhang hört man oft den Merksatz: Attacks never get worse, they only get better. Während die Nutzung einer neuen Hashfunktion bei informellen Protokollen und eigener Software vergleichsweise einfach ist (z.b. beim manuellen Verifizieren von SSH und PGP-Fingerprints oder bei der Integritätskontrolle von Softwarepaketen bei Linux-Distributionen) und der Übergang fliessend gestaltet werden kann, gibt es leider viele Einsatzbereiche in denen eine Umstellung kompliziert und teuer ist, da Erweiterungen, oder teilweise sogar komplette Neuentwicklungen bereits standartisierter Kommunikationsprotokolle nötig sind. Selbst nichtstandardisierte Projekte stehen vor einem Problem, wenn sie in großen Teilen ihrer Codebasis SHA-1 fest einprogrammiert haben, oder zumindest von einem Hash der Länge 160 Bit ausgehen. Die Mängel an bestehenden Protokollen und Standards (z.b. TLS oder S/MIME) wurden im Fall von SHA- 1 früh genug erkannt und sind zum Zeitpunkt des Schreibens schon durch Revisionen an den Standards behoben [1]. Um auch in Zukunft einfach die verwendete Hashfunktion austauschen zu können ist eine Möglichkeit dabei die Hashlänge variabel zu lassen um für neuere Hashfunktionen mit längerer Ausgabe kompatibel zu sein. Zusätzlich wird häufig die verwendete Hashfunktion direkt mit der Signatur gespeichert, so dass an dieser Stelle keine Uneindeutigkeiten enstehen. Der weitere Einsatz von gebrochenen Hashfunktionen in HMACs (Hash-based Message Authentication Code) stellt kein Problem da, solange die Sicherheit des symmetrischen Schlüssels vor einem Angreifer garantiert werden kann. 3-5

6 2 SHA-0 UND SHA-1 3 SHA-1 attacks 2 SHA-0 und SHA Geschichte Der erste SHA-Algorithmus ( Secure Hash Algorithm ) wurde vom NIST (National Institute of Standards and Technology) in Zusammenarbeit mit der NSA (National Security Agency) im Jahr 1993 veröffentlicht ([10]). Kurz darauf wurde diese, als SHA-0 standardisierte Hashfunktion von der NSA aufgrund nicht näher begründeter Sicherheitsbedenken revidiert und durch eine minimal veränderte Version ersetzt [11], heute als SHA-1 bekannt. Später wurde mit [12] der SHA-1 Algorithmus standardisiert und zusätzlich die Algorithmen SHA-224, SHA-256, SHA-384, und SHA-512 der SHA-2-Familie eingeführt. Auf dem letzten Stand befindet sich [13]. Im aktuellsten Standard ist ein Verweis auf [6] enthalten, welches aktuelle kryptanalytische Ergebnisse in Betracht zieht und von der Benutzung von SHA-1 in neuen Systemen abrät. 2.2 Funktionsweise SHA-0 und SHA-1 sind Hashfunktionen die auf einer Eingabe von max Bit arbeiten und einen 160 Bit grossen Hashwert generieren. Der Algorithmus bereitet die Ausgangswerte vor, indem zunächst eine Paddingfunktion auf die Eingabe angewendet wird. Diese bringt die Eingabelänge auf ein Vielfaches von 512 Bit, die Größe der Blöcke mit denen SHA-1 arbeitet. Um die Funktionen zu beschreiben müssen noch ein paar Konventionen zur Notation getroffen werden: Bitweise Operatoren:,, und. Addition modulo 2 32 : x + y = (x + y) mod 2 32 Zyklische Linksrotation um n Stellen: ROT L n (x) Konkatenation: 1. Padding und Aufteilung: Sei M der Eingabewert mit Länge l Bit. Dann wird zunächst eine 1 und k 0-Bits an die Nachricht angehängt so dass für die neue Länge gilt: l k 488 mod 512. Die letzten 64 Bit sind die Binärdarstellung der Nachrichtenlänge l. Die gepaddete Nachricht kann nun in Blöcke der Größe 512 Bit aufgeteilt werden, wobei hier allgemein von sechzehn 32-Bit Worten M (i) 0 M (i) 15 die Rede ist. Beispiel für die ASCII-Nachricht SHA (ohne terminierendes Null-Byte oder Newline): } {{ } S } {{ } H } {{ } A Bit { }} { Bit { }} { } {{ } l=24 2. Initiale Hashwerte: Da die SHA-Funktion blockweise arbeitet und die 160 Bit Ausgabe des vorherigen Blocks als Eingabeparameter für den aktuellen Block benutzt braucht man festgelegte Anfangswerte um den ersten Block zu berechnen. Diese werden im Standard als folgende 32-Bit Worte spezifiert (in hexadezimaler Darstellung): H (0) 0 = 0x H (0) 1 = 0xefcdab89 H (0) 2 = 0x98badcfe H (0) 3 = 0x H (0) 4 = 0xc3d2e1f0 3-6

7 2.2 Funktionsweise 3 SHA-1 attacks Nun beginnt die blockweise Berechnung der Eingabe, auch Merkle-Damgård Konstruktion genannt. Jeder Block M (i), i = 1... n wird folgendermaßen bearbeitet: 1. Expansion: Jeder Block (512 Bit) wird in einen Wert W, auch Message Schedule, expandiert (2560 Bit) so dass W aus Bit Worten besteht: { M t 0 t 15 W t = ROT L 1 (W t 3 W t 8 W t 14 W t 16 ) 16 t 79 Unterschied: Die Linksrotation für die Schritte 16 t 79 der Expansion ist das einzige Merkmal welches SHA-1 im Gegensatz zu SHA-0 besitzt, ansonsten sind beide Hashfunktionen identisch. 2. Hashwerte: Wie schon erwähnt werden die Hashwerte des vorherigen Blocks M (i 1) als Eingabe in die Variablen a, b, c, d und e ( Chaining-Variablen ) übernommen: a = H (i 1) 0 b = H (i 1) 1 c = H (i 1) 2 d = H (i 1) 3 e = H (i 1) 4 3. Hashrunden: Es folgen 4 Runden mit je 20 Schritten, insgesamt t = Diesen Schritt nennt man auch Kompressionsfunktion da sie aus den 2560 Bit von W einen 160 Bit großen Hashwert erzeugt: a t+1 = ROT L 5 (a t ) + f t (b t, c t, d t ) + e t + K t + W t b t+1 = a t c t+1 = ROT L 30 (b t ) d t+1 = c t e t+1 = d t Dieser Schritt ist in Abbildung 2 dargestellt. Man sieht wie eine Änderung in einem Wort W sich durch die Kompressionsfunktion propagiert und in jeder Variable einmal auftaucht. A t B t C t D t E t << K t << 30 f t + + W t A t+1 B t+1 C t+1 D t+1 E t+1 Abbildung 2: Ein Schritt der SHA-1 Rundenfunktion Die Funktion f t und die Konstante K t sind hierbei abhängig von der aktuellen Runde: 0 t 19 f t (x, y, z) = IF (x, y, z) = (x y) ( x z) K t = 0x5a t 30 f t (x, y, z) = XOR(x, y, z) = x y z K t = 0x6ed9eba1 40 t 59 f t (x, y, z) = MAJ(x, y, z) = (x y) (x z) (y z) K t = 0x8f1bbcdc 60 t 79 f t (x, y, z) = XOR(x, y, z) = x y z K t = 0xca62c1d6 3-7

8 2.3 Beispiel-Hash 3 SHA-1 attacks Die Konstanten werden durch die Berechnung von 2 30 x, x {2, 3, 5, 10} gewonnen. 4. Blockhashwert: Zum Schluss wird der Hashwert für den Nachrichtenblock berechnet: H (i) 0 = a + H (i 1) 0 H (i) 1 = b + H (i 1) 1 H (i) 2 = c + H (i 1) 2 H (i) 3 = d + H (i 1) 3 H (i) 4 = e + H (i 1) 4 Der 160 Bit lange Hash besteht dann aus der Ausgabe des letzten Blocks, also für eine Eingabenachricht die aus n Blöcken besteht: H (n) 0 H (n) 1 H (n) 2 H (n) 3 H (n) Beispiel-Hash Ein Beispiel wie sich durch das Verändern eines einzigen Zeichens ein komplett anderer Hashwert ergibt sieht wie folgt aus: SHA-1(SHA-0 generiert 160 Bit große Hashwerte.) = 2437f11ccdc1bd804afad073e24f ea2 SHA-1(SHA-1 generiert 160 Bit große Hashwerte.) = d0e31662b60e9e2e9f17fffa0ec 3 Kryptanalyse Das Geburtstagsparadoxon sagt aus, dass die Wahrscheinlichkeit zweier beliebiger Werte den gleichen Hashwert zu haben ist. Die Kryptanalyse sucht nach Methoden Kollisionen effizienter zu finden als es das Geburtstagsparadox zulässt. Wird ein solches Ergebnis entdeckt, bezeichnet man die Hashfunktion als gebrochen, was jedoch noch keinerlei Rückschluss auf die praktische Durchführbarkeit der neuen Attacke gibt. Im Zusammenhang mit Hashfunktionen und symmetrischen Verschlüsselungsverfahren spricht man häufig von differentieller Kryptanalyse bzw. differentiellen Pfaden durch die Hashfunktion. Unter differentieller Kryptanalyse versteht man das Vorgehen, Änderungen in der Nachricht durch die Funktion zu verfolgen und entsprechende Unterschiede in der Ausgabe auf diese Änderungen zurückzuführen. Da man Änderungen an frei wählbaren Nachrichten vornimmt und diese als Eingabe für die Funktion verwendet, fallen die Angriffe in die Kategorie der Chosen-plaintext attacks. Für den SHA bedeutet das, dass man ein allgemeingültiges Änderungsmuster für die Nachrichtenwörter findet welches die Hashfunktion auf einen anderen Weg bringt, der mit nicht-trivialer Wahrscheinlichkeit zum gleichen Hashwert führen soll. Hat man einen solchen differentiellen Pfad konstruiert wird er in Form eines Störvektors (siehe Abb. 5) veröffentlicht und kann, zusammen mit unterschiedlichen Techniken zur Optimierung und frühzeitigen Abbruchbedingungen, zur Kollisionssuche verwendet werden. Das bedeutet dass man die Kollisionen an den im Störvektor angegebenen Stellen startet indem man eine bitweise Negation in den Nachrichtenwörter an den entsprechenden Stellen vornimmt. Um diese Änderungen auszugleichen und zum gleichen Hashwert zu kommen sind in den folgenden Runden Korrekturen nötig, welche sich ebenfalls direkt aus dem Störvektor ergeben. Die Suche nach Kollisionen ist probabilistisch, eine Kollision wird also mit einer bestimmten Wahrscheinlichkeit gefunden. Diese Wahrscheinlichkeit ergibt sich aus dem Aufbau des Störvektors, wobei die Anzahl der gestarteten Kollisionen und deren Positionen in der rundenbasierte Kompressionsfunktion ausschlaggebend sind, da nicht jede Nachricht auf die der Störvektor angewendet wird die richtigen Eigenschaften besitzt um auch wirklich zu einer Kollision zu führen. Die Grundlage für Angriffe auf Hashalgorithmen sind lokale Kollisionen. Diese Kollisionen beziehen sich auf wenige Schritte des gesamten Hashverfahrens (pro Block) und ergeben sich aus dem Aufbau der rundenbasierten Kompressionsfunktion. Im Fall von SHA-0 und SHA-1 bildet eine 6-schrittige Kollision die 3-8

9 4 ANGRIFFE AUF SHA-0 3 SHA-1 attacks Grundlage. Obwohl diese Kollisionen leicht zu verstehen und herbeizuführen sind repräsentieren sie nur den ersten Schritt der Kryptanalyse, da es nicht möglich ist einzelne Kollisionen auf Verfahren wie SHA-1 einzuführen. Allerdings kann durch die Verkettung lokaler Kollisionen eine Kollision auf dem vollen Hashalgorithmus gefunden werden. Kollisionen auf rundenreduzierten Versionen eines Algorithmus dienen gleichzeitig auch als Verifikation der Ergebnisse für den vollen Algorithmus, besonders wenn die Wahrscheinlichkeit für Kollisionen auf der vollen Rundenzahl zu klein ist um empirisch überprüft zu werden. 4 Angriffe auf SHA-0 Die Kryptanalyse von SHA-0 begann 1998 mit der Konstruktion einer 6-schrittigen lokalen Kollision [4], die den Grundbaustein für die Kollision auf dem vollen Algorithmus bildet. Dazu wurden zunächst abgeschwächte Versionen des SHA-0 betrachtet, die sich darin einschränkten für die Rundenfunktion f t nur das lineare XOR zu benutzen und zur Berechnung von a t ebenfalls XOR statt der Addition modulo 32 einzusetzen. Es ist nicht bekannt ob dieses Ergebnisse der NSA ebenfalls vorlagen als sie sich dazu entschloss, SHA-1 als Verbesserung von SHA-0 zu veröffentlichen. Bereits 1997 hatte Wang die gleiche Kollision für SHA-0 unabhängig von Chabaud und Joux gefunden [16]. Die Ergebnisse die für die Kollisionsfindung für Hashalgorithmen wie dem (ähnlich strukturierten) MD4/MD5, HAVAL und RIPEMD benutzt wurden halfen bei der Analyse von SHA-0. Die nächsten Fortschritte waren die Konzepte der neutralen Bits und der Nachrichtenmodifikation die in einer sehr effizienten Methode für Beinahe-Kollisionen (142 von 160 Bit) resultierte [2]. Beinahe-Kollisionen haben nicht nur rein akademischen Wert, man denke an Szenarien in denen Hashes von Menschen verifiziert werden oder wo von der Ausgabe der Hashfunktion nur ein Teil benutzt wird. Beinahe-Kollisionen mehrerer Blöcke wurden darüberhinaus bei späteren Angriffen benutzt um Kollisionen zu finden. Für Beinahe-Kollisionen ist die Anforderung 1 (Tab. 1) überflüssig, da nicht mehr gefordert wird dass angefangene Kollisionen bis zur letzten Runde aufgelöst werden können. Daher können Masken mit kleinerem Hamming-Gewicht gefunden werden. Die Wahrscheinlichkeit eine Kollision zu finden stieg danach auf 2 58, dann auf 2 51 ([3]) und konnte schließlich auf 2 39 ([17], 2005) angehoben werden. Der effizienteste differentielle Pfad über 80 Schritte wurde zum Zeitpunkt des Schreibens auf 2 36 geschätzt ([9], 2006). Für den vollen SHA-0 wurden schon echte Kollisionen (beginnend 2004, konstruiert über Beinahe-Kollisionen auf 4 Blöcken) erzeugt, ein Beispiel ist in Abbildung 3 gegeben. Kollisionen müssen für den SHA-1 erst noch gefunden werden. Das bisherige Ausbleiben vergleichbarer Resultate für den SHA-1 zeigt den Effekt den die zusätzliche Linksrotation bei der Nachrichtenexpansion hat. 4.1 SHA-0 Kollisionen nach Chabaud / Joux Chabaud und Joux legten den Grundstein für die weitere Kryptanalyse des SHA-0 und SHA-1-Algorithmus. Ihr Vorgehen kann in 3 Schritte unterteilt werden: 1. Wahl einer linearen Approximation von SHA-0, in der die nicht-linearen Funktionen (+, IF, MAJ) durch möglichst gleiche lineare Funktionen ersetzen werden. 2. Das Finden von Kollision bzw. Störvektoren für diese lineare Approximation von SHA Wiedereinsetzen der nicht-linearen Funktionen und berechnen der Wahrscheinlichkeit dass diese sich wie die lineare Approximation verhalten. Die Nachrichtendifferenzen auf den Wörtern W t werden, der Einfachheit halber, zunächst ohne Berücksichtigung der Anforderung durch die Nachrichtenexpansion betrachtet, es ist also möglich alle 80 Wörter W 0,..., W 79 direkt zu verändern. Eine einzelne 6-schrittige lokale Kollision ist dann einfach mit einem Störvektor (eng: perturbance/disturbance vector ) möglich (siehe Abb. 4). Die 6 Schritte sind mindestens nötig da man durch die Propagation der Änderung durch die Variablen a,..., e 6 Schritte braucht um diese wieder auszugleichen, da sich eine Änderung in W t 1 j zuerst in a t, dann in b t+1, c t+2, d t+3 und zuletzt in 3-9

10 4.1 SHA-0 Kollisionen nach Chabaud / Joux 3 SHA-1 attacks Nachricht: a766a602 b65cffe7 73bcf258 26b322b3 d01b1a ef53 3e3b4b7f 53fe c08e47 e959b2bc 3b b d110f 70f5c5e2 b4590ca3 f55f52fe effd4c8f e68de e603c c51e7f d1 671d108d f5a4000d cf20a d72c d14fbb03 45cf3a29 5dcda89f 998f8755 2c9a58b1 bdc e f96e68be bb0025d2 d2b69edf f688b41d eb9b4913 fbe696b5 457ab399 21e1d759 1f89de84 57e8613c 6c9e3b d4d8 783b2d9c a9935ea5 26a729c0 6edfc501 37e69330 be cc5dfe1c 14c4c68b d1db3ecb 24438a59 a09b5db e0d 8bdf572f 77b53065 cef31f32 dc9dbaa e 9994bd5c d0758e3d Modifizierte Nachricht: a766a602 b65cffe7 73bcf258 26b322b1 d01b1ad7 2684ef51 be3b4b7f d3fe3762 a4c08e45 e959b2fc 3b a47d110d 70f5c5e ce3 755f52fc 6ffd4c8d 668de e603e 451e7f02 d45410d1 e71d108d f5a4000d cf20a d72c d14fbb01 45cf3a69 5dcda89d 198f8755 ac9a58b1 3dc e4771c5 796e68fe bb0025d0 52b69edd a17241d8 7688b41f 6b9b4911 7be696f5 c57ab399 a1e1d719 9f89de86 57e8613c ec9e3b26 a879d b2d9e 29935ea7 a6a edfc503 37e e c5dfe5c 14c4c689 51db3ecb a4438a59 209b5db e0d 8bdf572f 77b53065 cef31f30 dc9dbae c 1994bd5c 50758e3d Hashwert: c9f d4086fe 8095fba5 8b7e20c2 28a4006b Abbildung 3: SHA-0 Kollision (4 Blöcke, 2048 Bit) nach Biham/Chen [3] e t+4 zeigt. Diese Unterschiede müssen durch einen Unterschied in den Nachrichtenwörtern W t,..., W t+4 ausgeglichen werden damit die Berechnung von a t,..., a t+4 für beide Nachrichten zum gleichen Ergebniss führt. Diese Kollision kann beliebig oft parallel auf unterschiedlichen Bits auftreten. Anforderung Zweck 1 x t = 0 : t {75,..., 79} Kollision bis zum letzten Schritt fertig haben 2 x t = 0 : t { 5,..., 1} Teilkollisionen in den ersten Schritten vermeiden 3 Keine benachbarten 1-Bits in den ersten 17 Variablen Unmöglichen Kollisionspfad wegen der IF-Funktion vermeiden Tabelle 1: Die Anforderungen an den Störvektor Im Fall von SHA-0 betrachtet man einen 80-Bit langen Vektor x, den sog. Störvektor. Die Elemente des Vektors beziehen sich im einfachsten Beispiel auf das jeweilige zweite Bit der Nachrichtenwörter W 0,..., W 79, da durch die Rotation im dritten Schritt das geänderte Bit an die Stelle des höchstwertigsten Bits rotiert wird, und somit ein Übertrag durch Addition in späteren Schritten vermieden wird. Der Vektor gibt die Schritte an in denen eine lokale Kollision starten soll, also die 32 Bit großen Nachrichtenwörter in denen Unterschiede zwischen den Nachrichten M und M auftreten. Diese Unterschiede sollen jeweils nach 6 Schritten mit einer lokalen Kollision wieder aufgelöst werden. Da man den Unterschied in einem Schritt aufgrund der Rundenfunktion 5 Schritte lang in den Arbeitsvariablen mitnimmt müssen auch die nächsten 5 Schritte, und damit die nächsten 5 Nachrichtenwörter, Korrektur-Unterschiede enthalten. Aus dem Vektor x (auch Maske genannt) können mittels Rotationen direkt die 5 korrektiven Masken für die Folgewörter generiert werden, z.b. durch Linksrotation um 5 Bits und Übersetzung um einen Schritt für die erste Maske. Da SHA-0 die Nachricht expandiert kann ein Angreifer allerdings nur die Wörter W 0,..., W 15 unmittelbar bearbeiten, während die restlichen Wörter von der Expansionsfunktion abhängig sind. Zieht man die Nachrichtenexpansion also wieder mit in Betracht so muss zusätzlich für x gelten: x t = x t 3 x t 8 x t 14 x t 16, i {16,..., 79}. Mit dieser Maske kann dann den erforderlichen modifizierten Eingabeblock durch die Umkehrfunktion der linearen Expansion berechnen. Anhand Abbildung 3 kann man anschaulich sehen wie sich die Störungen 3-10

11 4.1 SHA-0 Kollisionen nach Chabaud / Joux 3 SHA-1 attacks Erster Unterschied Δm Folgekorrekturen W 1 (t) W 6 (t+1) W 1 (t+2) W 31 (t+3) W 31 (t+4) W 31 (t+5) A (t) A 1 (t) A (t+1) A (t+2) A (t+3) A (t+4) A (t+5) B (t) B 1 (t+1) B (t+5) C (t) C 31 (t+2) C (t+5) D (t) D 31 (t+3) D (t+5) E (t) E 31 (t+4) E (t+5) Abbildung 4: Die SHA-0 6-Schritt Kollision nach Chabaud/Joux [4] auf der Nachricht verteilen. Durch die fehlende Rotation der Expansionsfunktion sieht man deutlich dass sich die Unterschiede auf Bits 1, 6 und 31 der 32-Bit Wörter (0,..., 31) beschränken und nach Korrekturen auf dem ersten Bit jeweils die typischen Korrekturen der lokalen 6-Schritt-Kollision im 32-Bit-Abstand folgen ( ). In der letzten Zeile wurden lokale Kollisionen nicht abgeschlossen, da in diesem Beispiel Beinahe-Kollisionen auf den einzelnen Blöcken erzeugt werden. Im zweiten Teil seiner Analyse zieht Chabaud die vorgesehenen Rundenfunktionen f t wieder mit in Betracht und untersucht mit einer Fallunterscheidung mit welcher Wahrscheinlichkeit und unter welchen Voraussetzungen sich die nicht-linearen Rundenfunktionen (IF und MAJ) wie das lineare XOR verhalten (Tabelle 2). Dieses Verhalten ist nötig damit eine Änderung in den Nachrichtenwörtern durch die Funktion f t durchgegeben wird und die Korrekturen in den folgenden Schritten auf diese Änderung angewendet werden können. Anforderung 3 in Tabelle 1 ergibt sich aus der Wahrscheinlichkeit für die IF-Funktion bei gleichzeitiger Änderung der Werte c t und d t immer eine Änderung hervorzurufen während die XOR-Funktion nie eine Änderung ausgibt. Wahrscheinlichkeit Unterschied IF MAJ b (t) b (t) = 2 1 1/4 1/2 c (t) c (t) = 2 31 oder 1/2 1/2 d (t) d (t) = 2 31 c (t) c (t) = 2 31 und 0 1 d (t) d (t) = 2 31 Tabelle 2: Wahrscheinlichkeiten für das Verhalten wie XOR Danach wird die Addition für a t, die ebenfalls eine nicht-lineare Funktion ist, unter dem Gesichtspunkt des Übertrags für sich betrachtet. Die ersten beiden Schritte einer lokalen Kollision können zum Übertrag führen, da hier Bits an den Stelle 1 und 6 manipuliert werden. Im folgenden Schritt befindet sich das geänderte Bit durch Rotation an Position 31 und Überträge sich nicht mehr möglich. Die Wahrscheinlichkeit dass während der Addition kein Übertrag auftritt trägt als Faktor 1 4 zur Gesamtwahrscheinlichkeit pro Kollision bei und gilt auch während der XOR-Runden. 3-11

12 4.2 Verbesserungen von Biham/Chen (2004), Wang (2005) und Naito (2006) 3 SHA-1 attacks B C D IF MAJ Tabelle 3: Verhalten von IF und MAJ Zum Schluss werden die Erkenntnisse auf den vollen SHA-0 angewendet. Es werden zwei Muster gefunden die mit Wahrscheinlichkeiten von 2 68 bzw (siehe Abb. 5) zu Kollisionen auf dem vollen SHA-0 führen. Die Wahrscheinlichkeit gibt also an, in wievielen Fällen sich alle Rundenfunktionen und die Addition gleichzeitig linear verhalten. Die führenden 5 Bits sind nötig, da Korrekturen der 5 Nachfolgewörter durch Bit-Rotation und Runden-Übersetzungen geschehen und für die ersten 5 Wörter bereits angefangen Kollisionen erst einen bestimmten Schritt erreicht haben können. Wörter 5,..., 79 v.l.n.r Eine 1 bedeutet einen Unterschied in Bit 2 des jeweiligen Worts Abbildung 5: Differentieller Pfad für SHA-0 mit Erfolgswahrscheinlichkeit 2 69, hw(x) = 30 nach [4] Diese Wahrscheinlichkeiten ergeben sich aus den schrittweise Wahrscheinlichkeiten dass sich die Störung für die nicht-linearen Rundenfunktionen wie gewünscht (also wie das XOR) verhält (siehe Tab. 3 und Tab. 2). Die Wahrscheinlichkeiten für einen Störvektor können in einer Tabelle notiert und anschliessend zur gesamten Wahrscheinlichkeit multipliziert werden. Durch geschickte Implementierung kann die Wahrscheinlichkeit Kollisionen auf der gesamten Rundenzahl mittels des Vektors in Abb. 5 zu finden schliesslich von 2 69 auf 2 61 angehoben werden. Eine Folge von fünf Nullen im Muster erlaubt es den SHA-0 nach der bis dahin ausgeführten Zahl von Schritten zu beenden um nach Kollisionen auf der schrittreduzierten Version zu suchen. Im obigen Beispiel ist dies nach Runde 35 der Fall, für die Kollisionen mit einer Wahrscheinlichkeit von 2 14 gefunden wurden. Die Wahrscheinlichkeit das gewünschte Verhalten auf der gesamten Hashfunktion zu haben sinkt mit jeder Störung. Daher ist es offensichtlich warum man Störvektoren mit möglichst kleinem Hamming-Gewicht, insbesondere in den Runden mit nicht-linearen Rundenfunktionen, finden will. 4.2 Verbesserungen von Biham/Chen (2004), Wang (2005) und Naito (2006) Biham und Chen führten die Möglichkeit ein, die Kollisionssuche für SHA-0 ab einer höheren Runde starten zu lassen [2]. Da damit die Faktoren der übersprungenen Schritte nicht mehr zur gesamten Wahrscheinlichkeit beitragen, lassen sich Kollisionen auf diese Weise effizienter finden. Dazu werden Nachrichtenpaare M und M konstruiert für die sich die nicht-linearen Funktionen bis zu einem bestimmten Schritt r wie gewünscht verhalten. Die neutralen Bits dieser Nachrichten sind jene Bits, die in M und M identisch gekippt werden können, ohne dass sich die Nachrichtenpaare in den ersten r Schritten nicht mehr linear verhalten. Biham und Chen geben einen Algorithmus an, der, für einzelne Nachrichtenpaare Mengen von neutralen Bits findet, die mit einer Wahrscheinlichkeit von 1 8 die Linearität beibehalten. In ihrem Beispiel können sie auf diese Weise die Kollisionssuche effektiv ab Schritt 22 starten lassen. Da sich die Ergebnisse in dieser Ausarbeitung auf eine 82-Schritt-Version von SHA-0 beziehen (diese ist leichter anzugreifen als die 80 Schritte), sind die Kollisionen die für den vollen SHA-0 gefunden werden nur Beinahe-Kollisionen. 3-12

13 5 ANGRIFFE AUF SHA-1 3 SHA-1 attacks Mit der Entdeckung der neutralen Bits in den Nachrichtenwörtern sowie der Technik der Multi-Block- Kollisionen [3], die auf den SHA-0 übertragen werden konnten, stellte Prof. Wang, gleichzeitig mit der Veröffentlichung des ersten differentiellen Kollisionspfad durch den vollen SHA-1, ihre verbesserte Kollisionsmethode für den SHA-0 vor [17]. Multi-Block-Kollisionen funktionieren indem man zwei (oder mehr) Nachrichtenblöcke betrachtet und die Forderung einer Kollision nur für den letzten der Blöcke macht. Da jeder Nachrichtenblock mit dem Hashwert des vorherigen Blocks initialisiert wird können Beinahe- Kollisionen vorheriger Blöcke leicht in dem darauffolgenden Schritt aufgelöst werden. Diese Kollisionsmethode ist besonders dann relevant, wenn echte Kollisionsverfahren für den vollen Algorithmus zu ineffizient sind. Mithilfe von Techniken zur Nachrichtenmodifikation kann die erste Runde komplett vorberechnet, also deterministisch behandelt werden. Das bedeutet natürlich dass man im folgenden Störvektoren mit geringem Hamming-Gewicht in den Runden 2-4 finden will, insbesondere für die dritte Runde (MAJ). Nachrichtenmodifikation bedeutet dass man, für einen bestimmten Störvektor, die Nachrichtenwörter so manipuliert dass sie sich in der ersten Runde immer wie gewünscht verhalten. Dieses Vorgehen ähnelt den Neutralen Bits von Biham/Chen und ist im Fall von SHA-0 zunächst nicht effektiver als dieses, da man mittels der Nachrichtenmodifikation nach Wang nur die ersten 20 Schritte systemmatisch erfüllen kann. Ein Team um Y. Naito erweiterte die Nachrichtenmodifikation auf die Schritte [9], womit sie wiederrum effektiver als die Neutralen Bits ist. Damit konnte die Wahrscheinlichkeit Kollisionen zu finden auf 2 36 verbessert werden. 5 Angriffe auf SHA-1 Nach Angriffen auf rundenreduzierte Versionen des SHA-1 [14] folgte die erste Attacke auf den vollen SHA-1 im Jahr Einer Gruppe um Prof. Wang (bereits durch ihre Kryptanalyse von SHA-0 und früheren Algorithmen wie MD4/MD5/RIPEMD-160/HAVAL bekannt) gelang es Kollisionen für den vollen SHA-1 mit einer Komplexität von weniger als 2 69 Hashoperationen zu finden [18]. Wang gelang es ebenfalls Komplexität weiter auf 2 63 zu senken, allerdings wurden zu diesem Ergebniss bisher keine wissenschaftliche Ausarbeitung veröffentlicht [5] und es wurde auf der Crypto 2006 Konferenz nur stellvertretend von A. Shamir während der Rump Session vorgestellt, da Prof. Wang keine Einreisegenehmigung erhalten hatte. Auf der Rump-Session der Eurocrypt 2009 kündigten McDonald, Hawkes und Pieprzyk an, Kollisionen mit 2 52 Hashoperationen finden zu können [8]. Dabei hatten sie sich auf einen neu entdeckten Störvektor gestützt, der bei der gesonderten Analyse und Bewertung von SHA-1-Störvektoren gefunden wurde. Dieser Vektor versprach für die Runden 2-4 eine Komplexität von 2 57 und wurde zusammen mit einer sog. Boomerang -Attacke dazu genutzt die Gesamtkomplexität zu erreichen. Kurz darauf wurde festgestellt, dass bei der Abschätzung der Wahrscheinlichkeiten für den Störvektor Fehler unterlaufen waren, und das Ergebniss wurde vorerst zurückgezogen. Zum aktuellen Zeitpunkt lag keine überarbeitete Fassung der Ergebnisse vor. 5.1 SHA-1 Kollisionen nach Wang (2005) Das Suchen nach differentiellen Pfaden durch den SHA-1 unterscheidet sich von dem Herangehen an den SHA-0. Die Linksrotation in der Nachrichtenexpansion bei SHA-1 ist der Unterschied der verhindert dass die kryptanalytischen Ergebnisse vom SHA-0 direkt übernommen werden können. Statt einem 80-Bit Vektor der jeweils Bits an der gleichen Position in den Nachrichtenwörtern identifiziert muss man nun auf Bit-Worten rechnen, da Nachrichtendifferenzen sich über die expandierten Wörter verteilen. Naiv würde das bedeuten, dass sich der Suchraum für 16 aufeinanderfolgende Wörter von 2 16 auf vergrössert, jedoch werden Heuristiken benutzt um nur einen kleinen relevanten Teil hiervon in Betracht zu ziehen. Das wichtigste Kriterium bei der Suche nach Störvektoren ist das Hamming-Gewicht des Vektors, also die Anzahl der 1-Bits. Für den vollen SHA-1 muss dieses echt kleiner als 27 sein, da die Wahrscheinlichkeit, dass der gefundene differentielle Pfad zu einer Kollision führt, sonst unter 2 80 fällt, also jener Wahrscheinlichkeit die man durch das Geburtstagsparadoxon gegeben hat. Diese Eigenschaft ergibt sich 3-13

14 6 DIE ZUKUNFT DER SHA-FAMILIE 3 SHA-1 attacks daraus dass sich im Schnitt jede Änderung mit einer Wahrscheinlichkeit von 1 8 wie gewünscht verhält, daher ( 1 8 )26 > 2 80 > ( 1 8 )27. Um leichtere Vektoren finden zu können werden zunächst die zweite und dritte Anforderung an den Störvektor (Tabelle 1) aufgehoben, und es wird zusätzlich nur verlangt dass der Vektor der Nachrichtenexpansion entspricht. Wang nimmt, basierend auf Beobachtungen der Störvektoren, vom Suchraum, der einer Matrix mit 0/1-Einträgen entspricht, die ersten zwei Bits einer Spalte in Betracht und iteriert über die zwei Spalten der Länge Es sind also 64 Spalten möglich für die jeweils 2 32 Einträge berechnet werden ( = 2 38 ). Dies kann man machen da 16 zusammenhängende Einträge auch die restlichen Vektoren festlegen. In diesem Fall können Störungen nur in den ersten beiden Spalten auftreten. Der prinzipiell große Suchraum beim SHA-1 enthält darüberhinaus viele Störvektoren die durch einfache Rotationen auseinander entstehen. Der beste von Wang gefundene differentielle Pfad der eine Kollision ermöglichte hatte allerdings ein zu großes Hamming-Gewicht (hw(x) = 31), was eine Wahrscheinlichkeit von 2 93 Kollisionen zu finden entspricht, viel schlechter noch als das Geburtstagsparadox es zulässt. Für den SHA-1 auf 75 Schritte reduziert findet sich ein Vektor mit Hamminggewicht 26. Deshalb wird von Wang die Herangehensweise über Beinahe-Kollisionen auf mehreren Blöcken gewählt, da man hier auch die erste Bedingung aufheben kann um so Störvektoren mit kleinerem Hamming-Gewicht zu finden. Der Suchraum wird mittels der Nachrichtenexpansion weiter berechnet als Schritt 80, und die Suche bezieht sich auf ein beliebiges 80-Schritt-Interval. Wang findet direkt mehrere Störvektoren mit ausreichend kleinem Hamming-Gewicht. Ein gewählter Vektor mit hw(x) = 25 kann benutzt werden um Beinahe-Kollisionen für den vollen SHA-1 mit einer Wahrscheinlichkeit von 2 68 finden. Wenn eine Beinahe-Kollision für einen Nachrichtenblock gefunden wurde, hat die Suche nach einem folgenden Nachrichtenblock der genau entgegengesetzt Differenzen aufweist, die gleiche Komplexität wie für den ersten Block, so dass nur der Faktor 2 in die Laufzeit mit einfliesst. Hieraus ergibt sich die Gesamtkomplexität von Dank Eigenschaften der IF-Funktion und Methoden zur Nachrichtenmodifikation können die Anforderungen an die Arbeitsvariablen für die ersten 22 Schritte wie bei SHA-0 alle im Vorraus erfüllt werden [2] und der probabilistische Teil, und damit die ganze Suchkomplexität, besteht nur noch aus den Runden 2-4, für die der Störvektor ein entsprechend geringes Hamminggewicht haben sollte. 6 Die Zukunft der SHA-Familie 6.1 Angriffe auf SHA-2 Bisher wurden keine Angriffe auf die volle Rundenzahl einer der SHA-2 Algorithmen veröffentlicht. Bekannt wurden Kollisionen auf den SHA-256 und SHA-512 die auf 22 von 80 (SHA-512) bzw 24 von 64 (SHA-256) Runden reduziert sind. Das kryptanalytische Interesse an diesen Hashfunktionen dürfte im Anbetracht der weniger verbreiteten Verwendung und der absehbaren Zeitspanne bis zur Standardisierung von SHA-3 entsprechend geringer sein, nicht zuletzt da sich Ergebnisse kaum oder gar nicht auf den SHA-3 übertragen lassen werden. 6.2 Der nächste Standard - SHA-3 Da bisherige Hashalgorithmen immer nur für einen kurzen Zeitraum sicher waren machte sich das NIST daran für die nächste Generation von sicheren Hashalgorithmen vorzusorgen. So wurde im Jahr 2007 die NIST hash function competition ausgerufen um einen neuen, sicheren Hashstandard zu finden [7]. Dieser Aufruf ähnelt dem Vorgehen beim AES, dem Advanced Encryption Standard, der seinerzeit den veralteten DES ersetzte. Neben dem gesteigerten akademischen Interesse an den Hashalgorithmen und ihrer Kryptanalyse werden auf diese Weise auch Vorwürfe entkräftet, dass bei der Entwicklung von Hashalgorithmen unter Ausschluss der Öffentlichkeint innerhalb von US-Behörden intentionelle Schwachstellen eingefügt werden könnten. Schon die Wahl der Rundenkonstanten K (t) für SHA-1 zeugt von der Einstellung Zweifel an der Wahl bestimmter Parameter zu zerstreuen, wie sie nach der Änderungen der S-Boxen von DES durch die NSA massiv laut wurden. 3-14

15 7 FAZIT 3 SHA-1 attacks Der Zeitrahmen der SHA-3-Competition zeigt mit welcher Sorgfalt an die Konstruktion eines kryptografisch sicheren Hashverfahrens herangegangen wird. Zwischen dem Zeitpunkt der Ausschreibung (November 2007) und dem angepeilten Zeitpunkt der Standardisierung (2012) liegen fast 4 Jahre, die vom NIST in mehrere Runden aufgeteilt werden. Dabei wurden von den 51 für die erste Runde zugelassenen Algorithmen nur 14 Algorithmen in die zweite Runde aufgenommen. Für die ausgeschiedenen Algorithmen wurden zu großen Teilen Kollisionsattacken gefunden die (teilweise signifikant) unter dem theoretischen Maximum lagen. In manchen Fällen wurden auch Komplexitätsabschätzungen oder sogar Beispiele für Preimage und Second-Preimage-Attacken bekannt. Von den Algorithmen die es in Runde 2 geschafft haben wird nach einem Jahr nochmal eine Teilmenge gebildet die dann als letzte Runde vor der Bekanntgabe des Gewinners geprüft werden. Kriterien für die Evaluation der Kandidaten sind neben der Sicherheit auch die Geschwindigkeit in Hard- und Software, der Speicherverbrauch, Flexibilität von Parametern wie Ausgabelänge (um alte Funktionen zu ersetzen) und Rundenzahl und der Verständlichkeit von Referenzimplementationen. Da alle Algorithmen offen und lizenzfrei sein müssen kann man die Entwicklung der Algorithmen während des Wettbewerbs verfolgen und kommentieren. Änderungen dürfen z.b. bei den geschwindigkeitsoptimierten Implementationen der Designer gemacht werden. Obwohl die Algorithmen und die Kommentare zu möglichen Problemen öffentlich sind liegt die endgültige Entscheidung für den Gewinner beim NIST. 7 Fazit Wir haben gesehen wie SHA-0 und SHA-1 aufgebaut sind und mit welchen Mitteln versucht wird Unterschiede in Nachrichten möglichst schnell und weit über den Ausgabewert zu verteilen. Bei der Kryptanalyse der Algorithmen haben sich die nicht-linearen Rundenfunktionen als größte Hürde dargestellt, auch wenn die Frage bleibt ob andere Funktionen oder die Ersetzung der XOR-Runden die erfolgreiche Kryptanalyse nicht noch weiter verzögert hätten. Auf SHA-1 bezogen zeigt sich im Verlauf der Veröffentlichungen, dass neue Ergebnisse immer einen gemeinsamen Teil bei der Konstruktion von Kollisionen aufweisen. Der wichtige Faktor um effizientere Pfade zu finden unterscheidet sich jedoch stark und ist einzig von der Kreativität der Autoren abhängig. Eine allgemeingültige und übersichtliche Methode zur Kollisionsfindung und der involvierten Techniken aufzuzeigen gibt es schlichtweg nicht. Daher ist es nicht vorauszusehen mit welcher Geschwindigkeit bessere Verfahren entwickelt werden oder wo der nächste Schritt von der Komplexität gesehen her anzusiedeln ist. Eine untere Grenze anzugeben ist ebenfalls nicht möglich. Wie auch bei älteren Algorithmen beobachtet ist zu erwarten, dass neue Ergebnisse für den SHA-0/SHA-1 auch bei der Analyse neuerer Hashalgorithmen gefunden werden, sofern diese Komponenten besitzen die sich ähnlich verhalten. Es bleibt zu erwarten ob die letzten Ankündigungen zur Kollisionswahrscheinlichkeit ([8], [5]) noch überarbeitet werden und ob die Wahrscheinlichkeit infolgedessen steigt oder sinkt. Die momentan bekannten Angriffe auf SHA-1 sind noch weit vom praktisch berechenbaren entfernt. Literatur [1] BELLOVIN, S.M., E.K. RESCORLA und N. RESONANCE: Deploying a New Hash Algorithm [2] BIHAM, E. und R. CHEN: Near-collisions of SHA-0. Lecture Notes in Computer Science, Seiten , [3] BIHAM, E., R. CHEN, A. JOUX, P. CARRIBAULT, C. LEMUET und W. JALBY: Collisions of SHA-0 and Reduced SHA-1. In: Advances in Cryptology EUROCRYPT, Band 3494, Seiten Springer, [4] CHABAUD, F. und A. JOUX: Differential collisions in SHA-0. Lecture Notes in Computer Science, Seiten 56 71, [5] COCHRAN, M.: Notes on the Wang et al SHA-1 Differential Path. Cryptology eprint Archive, Report 2007/474,

16 LITERATUR 3 SHA-1 attacks [6] DANG, Q.: Recommendation for Applications Using Approved Hash Algorithms. NIST Special Publication, 800:107, [7] FEDERAL REGISTER: Announcing Request for Candidate Algorithm Nominations for a New Cryptographic Hash Algorithm (SHA-3) Family. 72: , [8] MCDONALD, C., P. HAWKES und J. PIEPRZYK: Differential Path for SHA-1 with complexity O(2 52 ). withdrawn. [9] NAITO, Y., Y. SASAKI, T. SHIMOYAMA, J. YAJIMA, N. KUNIHIRO und K OHTA: Improved collision search for SHA-0. Lecture Notes in Computer Science, 4284:21, [10] NIST: Federal Information Processing Standards Publication 180. Secure Hash Standard (SHS), [11] NIST: Federal Information Processing Standards Publication Secure Hash Standard (SHS), [12] NIST: Federal Information Processing Standards Publication Secure Hash Standards (SHS), [13] NIST: Federal Information Processing Standards Publication Secure Hash Standards (SHS), [14] RIJMEN, V. und E. OSWALD: Update on SHA-1. Technischer Bericht, Springer, [15] STEVENS, M., A. SOTIROV, J. APPELBAUM, A. LENSTRA, D. MOLNAR, D.A. OSVIK und B. DE WEGER: Short chosen-prefix collisions for md5 and the creation of a rogue ca certificate. In: Proceedings of the 29th Annual International Cryptology Conference on Advances in Cryptology, Seite 69. Springer, [16] WANG, X.: The Collision attack on SHA-0. Chinese, not translated yet, [17] WANG, X., Y.L. YIN und H. YU: Efficient collision search attacks on SHA-0. Lecture Notes in Computer Science, 3621:1 16, [18] WANG, X., Y.L. YIN und H. YU: Finding collisions in the full SHA-1. Lecture Notes in Computer Science, 3621:17 36,

Die Hashfunktion- Familie SHA und Angriffe darauf

Die Hashfunktion- Familie SHA und Angriffe darauf Die Hashfunktion- Familie SHA und Angriffe darauf Ruth Janning Juni 2007 Secure Hash Algorithm Das National Institude of Standards and Technology (NIST) entwickelte zusammen mit der National Security Agency

Mehr

IT-Sicherheit - Sicherheit vernetzter Systeme -

IT-Sicherheit - Sicherheit vernetzter Systeme - IT-Sicherheit - Sicherheit vernetzter Systeme - Kapitel 7: Kryptographische Hash-Funktionen Wolfgang Hommel, Helmut Reiser, LRZ, WS 13/14 IT-Sicherheit 1 Inhalt Definition: Kryptographische Hash-Verfahren

Mehr

iterative Hashfunktionen

iterative Hashfunktionen Presentation im Rahmen von "Kryptographie" (SS 2005, Universität Potsdam) über kryptographische Hashfunktionen (Teil 2) iterative Hashfunktionen Holger Herrlich 22.Mai.2005 Grundlage: "Cryptography: Theory

Mehr

Kryptographie und Komplexität

Kryptographie und Komplexität Kryptographie und Komplexität Einheit 6 Kryptographie und Sicherheit 1. Kryptographische Hashfunktionen 2. Passwörter und Identifikation 3. Digitale Signaturen 4. Secret Sharing 5. Anwendungen und Ausblick

Mehr

Symmetrische und Asymmetrische Kryptographie. Technik Seminar 2012

Symmetrische und Asymmetrische Kryptographie. Technik Seminar 2012 Symmetrische und Asymmetrische Kryptographie Technik Seminar 2012 Inhalt Symmetrische Kryptographie Transpositionchiffre Substitutionchiffre Aktuelle Verfahren zur Verschlüsselung Hash-Funktionen Message

Mehr

Wiederholung: Informationssicherheit Ziele

Wiederholung: Informationssicherheit Ziele Wiederholung: Informationssicherheit Ziele Vertraulichkeit : Schutz der Information vor unberechtigtem Zugriff bei Speicherung, Verarbeitung und Übertragung Methode: Verschüsselung symmetrische Verfahren

Mehr

In beiden Fällen auf Datenauthentizität und -integrität extra achten.

In beiden Fällen auf Datenauthentizität und -integrität extra achten. Stromchiffren Verschlüsseln eines Stroms von Daten m i (Bits/Bytes) mithilfe eines Schlüsselstroms k i in die Chiffretexte c i. Idee: Im One-Time Pad den zufälligen Schlüssel durch eine pseudo-zufällige

Mehr

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

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0 Advanced Encryption Standard Copyright Stefan Dahler 20. Februar 2010 Version 2.0 Vorwort Diese Präsentation erläutert den Algorithmus AES auf einfachste Art. Mit Hilfe des Wissenschaftlichen Rechners

Mehr

Kryptographische Algorithmen

Kryptographische Algorithmen Kryptographische Algorithmen Stand: 11.05.2007 Ausgegeben von: Rechenzentrum Hochschule Harz Sandra Thielert Hochschule Harz Friedrichstr. 57 59 38855 Wernigerode 03943 / 659 900 Inhalt 1 Einleitung 4

Mehr

Kryptographie und Fehlertoleranz für Digitale Magazine

Kryptographie und Fehlertoleranz für Digitale Magazine Stefan Lucks Kryptographie und Fehlertoleranz für digitale Magazine 1 Kryptographie und Fehlertoleranz für Digitale Magazine Stefan Lucks Professur für Mediensicherheit 13. März 2013 Stefan Lucks Kryptographie

Mehr

Urbild Angriff auf Inkrementelle Hashfunktionen

Urbild Angriff auf Inkrementelle Hashfunktionen Urbild Angriff auf Inkrementelle Hashfunktionen AdHash Konstruktion: (Bellare, Micciancio 1997) Hashe Nachricht x = (x 1,..., x k ) als H(x) = k i=1 h(i, x i) mod M. Inkrementell: Block x i kann leicht

Mehr

Was heißt Kryptographie I? Understanding Cryptography Christof Paar und Jan Pelzl

Was heißt Kryptographie I? Understanding Cryptography Christof Paar und Jan Pelzl Was heißt Kryptographie I? Understanding Cryptography Christof Paar und Jan Pelzl Die Autoren Dr.-Ing. Jan Pelzl Prof. Dr.-Ing. Christof Paar Gliederung Historischer Überblick Begrifflichkeiten Symmetrische

Mehr

Hashfunktionen. Soviel Mathematik wie nötig, sowenig wie möglich. Wolfgang Dautermann. Chemnitzer Linuxtage 2010 FH JOANNEUM

Hashfunktionen. Soviel Mathematik wie nötig, sowenig wie möglich. Wolfgang Dautermann. Chemnitzer Linuxtage 2010 FH JOANNEUM Hashfunktionen Soviel Mathematik wie nötig, sowenig wie möglich Wolfgang Dautermann FH JOANNEUM Chemnitzer Linuxtage 2010 1 Einleitung 2 Grundlagen von Hashfunktionen 3 Anwendungen von Hashfunktionen 4

Mehr

MAC Message Authentication Codes

MAC Message Authentication Codes Seminar Kryptographie SoSe 2005 MAC Message Authentication Codes Andrea Schminck, Carolin Lunemann Inhaltsverzeichnis (1) MAC (2) CBC-MAC (3) Nested MAC (4) HMAC (5) Unconditionally secure MAC (6) Strongly

Mehr

Authentikation und digitale Signatur

Authentikation und digitale Signatur TU Graz 23. Jänner 2009 Überblick: Begriffe Authentikation Digitale Signatur Überblick: Begriffe Authentikation Digitale Signatur Überblick: Begriffe Authentikation Digitale Signatur Begriffe Alice und

Mehr

Authentifikation und digitale Signatur

Authentifikation und digitale Signatur Kryptographie Authentifikation und digitale Signatur Dana Boosmann Matr.Nr.: 100653 11. Juni 2004 Authentifikation und Digitale Signatur Inhaltsverzeichnis Inhaltsverzeichnis 1 Einleitung 2 2 Authentifikation

Mehr

Kryptographische Anonymisierung bei Verkehrsflussanalysen

Kryptographische Anonymisierung bei Verkehrsflussanalysen Kryptographische Anonymisierung bei Verkehrsflussanalysen Autor: Andreas Grinschgl copyright c.c.com GmbH 2010 Das System besteht aus folgenden Hauptkomponenten: Sensorstationen Datenbankserver Anonymisierungsserver

Mehr

Sicherheit von PDF-Dateien

Sicherheit von PDF-Dateien Sicherheit von PDF-Dateien 1 Berechtigungen/Nutzungsbeschränkungen zum Drucken Kopieren und Ändern von Inhalt bzw. des Dokumentes Auswählen von Text/Grafik Hinzufügen/Ändern von Anmerkungen und Formularfeldern

Mehr

Wiederholung: Informationssicherheit Ziele

Wiederholung: Informationssicherheit Ziele Wiederholung: Informationssicherheit Ziele Vertraulichkeit: Schutz der Information vor unberechtigtem Zugriff bei Speicherung, Verarbeitung und Übertragung Verschlüsselungsverfahren Integrität: Garantie

Mehr

Einführung in Computer Microsystems

Einführung in Computer Microsystems Einführung in Computer Microsystems Kapitel 9 Entwurf eines eingebetteten Systems für Anwendungen in der IT-Sicherheit Prof. Dr.-Ing. Sorin A. Huss Fachbereich Informatik Integrierte Schaltungen und Systeme

Mehr

Ein typisches Problem

Ein typisches Problem Kryptographische Hashfunktionen Cyrill Stachniss Basierend auf [Buchmann 08, Daum 05, Lucks & Daum 05, Wang & Yu 05, Sridharan 06, Stevens 07, Sotirov et al. 08, Lucks 07, Gebhard et al. 06, Selinger 06,

Mehr

Merkblatt: Sichere E-Mail-Kommunikation zur datenschutz cert GmbH

Merkblatt: Sichere E-Mail-Kommunikation zur datenschutz cert GmbH Version 1.3 März 2014 Merkblatt: Sichere E-Mail-Kommunikation zur datenschutz cert GmbH 1. Relevanz der Verschlüsselung E-Mails lassen sich mit geringen Kenntnissen auf dem Weg durch die elektronischen

Mehr

Digitale Unterschriften Grundlagen der digitalen Unterschriften Hash-Then-Sign Unterschriften Public-Key Infrastrukturen (PKI) Digitale Signaturen

Digitale Unterschriften Grundlagen der digitalen Unterschriften Hash-Then-Sign Unterschriften Public-Key Infrastrukturen (PKI) Digitale Signaturen Sommersemester 2008 Digitale Unterschriften Unterschrift von Hand : Physikalische Verbindung mit dem unterschriebenen Dokument (beides steht auf dem gleichen Blatt). Fälschen erfordert einiges Geschick

Mehr

Kryptographie oder Verschlüsselungstechniken

Kryptographie oder Verschlüsselungstechniken Kryptographie oder Verschlüsselungstechniken Dortmund, Dezember 1999 Prof. Dr. Heinz-Michael Winkels, Fachbereich Wirtschaft FH Dortmund Emil-Figge-Str. 44, D44227-Dortmund, TEL.: (0231)755-4966, FAX:

Mehr

Der Advanced Encryption Standard (AES)

Der Advanced Encryption Standard (AES) Der Advanced Encryption Standard (AES) Prof. Dr. Rüdiger Weis TFH Berlin Sommersemester 2008 Geschichte des AES Die Struktur des AES Angriffe auf den AES Aktuelle Ergebnisse DerAdvanced Encryption Standard

Mehr

Kryptologische Grundlagen

Kryptologische Grundlagen 2 Kryptologische Grundlagen In diesem Kapitel werden grundlegende kryptologische Mechanismen dargestellt. Diese wurden zunächst dafür entwickelt, die in Kap. 1 dargestellten Ziele zu verwirklichen. Für

Mehr

KRYPTOLOGIE KRYPTOLOGIE

KRYPTOLOGIE KRYPTOLOGIE KRYPTOLOGIE Die Kryptologie beschäftigt sich mit dem Verschlüsseln von Nachrichten. Sie zerfällt in zwei Gebiete: die Kryptographie, die sich mit dem Erstellen von Verschlüsselungsverfahren beschäftigt,

Mehr

10.6 Authentizität. Geheimhaltung: nur der Empfänger kann die Nachricht lesen

10.6 Authentizität. Geheimhaltung: nur der Empfänger kann die Nachricht lesen 10.6 Authentizität Zur Erinnerung: Geheimhaltung: nur der Empfänger kann die Nachricht lesen Integrität: Nachricht erreicht den Empfänger so, wie sie abgeschickt wurde Authentizität: es ist sichergestellt,

Mehr

Humboldt-Universität zu Berlin

Humboldt-Universität zu Berlin Humboldt-Universität zu Berlin Institut für Informatik LFE Komplexität und Kryptograe MD5 - Aufbau und dierentielle Analyse SE Aktuelle Entwicklungen in der Kryptograe vorgelegt von Andreas Grüner (Matrikel-Nr.

Mehr

Kryptographische Verfahren. zur Datenübertragung im Internet. Patrick Schmid, Martin Sommer, Elvis Corbo

Kryptographische Verfahren. zur Datenübertragung im Internet. Patrick Schmid, Martin Sommer, Elvis Corbo Kryptographische Verfahren zur Datenübertragung im Internet Patrick Schmid, Martin Sommer, Elvis Corbo 1. Einführung Übersicht Grundlagen Verschlüsselungsarten Symmetrisch DES, AES Asymmetrisch RSA Hybrid

Mehr

Ein Scan basierter Seitenangriff auf DES

Ein Scan basierter Seitenangriff auf DES Ein Scan basierter Seitenangriff auf DES Seminar Codes & Kryptographie SS04 Tobias Witteler 29.06.2004 Struktur des Vortrags 1. Einführung / Motivation 2. Struktur von DES 3. Die Attacke Begriffsklärung:

Mehr

Digitale Signaturen. Sven Tabbert

Digitale Signaturen. Sven Tabbert Digitale Signaturen Sven Tabbert Inhalt: Digitale Signaturen 1. Einleitung 2. Erzeugung Digitaler Signaturen 3. Signaturen und Einweg Hashfunktionen 4. Digital Signature Algorithmus 5. Zusammenfassung

Mehr

Das RSA-Verfahren. Armin Litzel. Proseminar Kryptographische Protokolle SS 2009

Das RSA-Verfahren. Armin Litzel. Proseminar Kryptographische Protokolle SS 2009 Das RSA-Verfahren Armin Litzel Proseminar Kryptographische Protokolle SS 2009 1 Einleitung RSA steht für die drei Namen Ronald L. Rivest, Adi Shamir und Leonard Adleman und bezeichnet ein von diesen Personen

Mehr

Übungen zur Vorlesung Systemsicherheit

Übungen zur Vorlesung Systemsicherheit Übungen zur Vorlesung Systemsicherheit Symmetrische Kryptographie Tilo Müller, Reinhard Tartler, Michael Gernoth Lehrstuhl Informatik 1 + 4 17. November 2010 c (Lehrstuhl Informatik 1 + 4) Übungen zur

Mehr

Content-Verwertungsmodelle und ihre Umsetzung in mobilen Systemen

Content-Verwertungsmodelle und ihre Umsetzung in mobilen Systemen Content-Verwertungsmodelle und ihre Umsetzung in mobilen Systemen Digital Rights Management 4FriendsOnly.com Internet Technologies AG Vorlesung im Sommersemester an der Technischen Universität Ilmenau

Mehr

8: Zufallsorakel. Wir suchen: Einfache mathematische Abstraktion für Hashfunktionen

8: Zufallsorakel. Wir suchen: Einfache mathematische Abstraktion für Hashfunktionen Stefan Lucks 8: Zufallsorakel 139 Kryptogr. Hashfunkt. (WS 08/09) 8: Zufallsorakel Unser Problem: Exakte Eigenschaften von effizienten Hashfunktionen nur schwer erfassbar (z.b. MD5, Tiger, RipeMD, SHA-1,...)

Mehr

Geeignete Kryptoalgorithmen

Geeignete Kryptoalgorithmen Veröffentlicht im Bundesanzeiger Nr. 158 Seite 18 562 vom 24. August 2001 Geeignete Kryptoalgorithmen In Erfüllung der Anforderungen nach 17 (1) SigG vom 16. Mai 2001 in Verbindung mit 17 (2) SigV vom

Mehr

Unterscheidung: Workflowsystem vs. Informationssystem

Unterscheidung: Workflowsystem vs. Informationssystem 1. Vorwort 1.1. Gemeinsamkeiten Unterscheidung: Workflowsystem vs. Die Überschneidungsfläche zwischen Workflowsystem und ist die Domäne, also dass es darum geht, Varianten eines Dokuments schrittweise

Mehr

Workshop Experimente zur Kryptographie

Workshop Experimente zur Kryptographie Fakultät Informatik, Institut Systemarchitektur, Professur Datenschutz und Datensicherheit Workshop Experimente zur Kryptographie Sebastian Clauß Dresden, 23.03.2011 Alltägliche Anwendungen von Kryptographie

Mehr

Digitale Signaturen Einführung und das Schnorr Signaturschema

Digitale Signaturen Einführung und das Schnorr Signaturschema Digitale Signaturen Einführung und das Schnorr Signaturschema Patrick Könemann paphko@upb.de Proseminar: Public-Key Kryptographie Prof. Dr. rer. nat. J. Blömer Universität Paderborn 27. Januar 2006 Abstract

Mehr

Handbuch. ChecksumCalculator

Handbuch. ChecksumCalculator Handbuch ChecksumCalculator Ersteller: EWERK MUS GmbH Erstellungsdatum: 02.05.2012 Inhalt 1 Motivation... 3 2 Revisionssichere Archivierung... 3 3 Sicherheit... 4 4 WORM... 5 5 Besonderheiten des ChecksumCalculator...

Mehr

Vorlesung Datensicherheit. Sommersemester 2010

Vorlesung Datensicherheit. Sommersemester 2010 Vorlesung Datensicherheit Sommersemester 2010 Harald Baier Kapitel 2: Kryptographische Begriffe und symmetrische Verschlüsselungsverfahren Inhalt Kryptographische Begriffe Historische Verschlüsselungsverfahren

Mehr

17 Ein Beispiel aus der realen Welt: Google Wallet

17 Ein Beispiel aus der realen Welt: Google Wallet 17 Ein Beispiel aus der realen Welt: Google Wallet Google Wallet (seit 2011): Kontaktlose Bezahlen am Point of Sale Kreditkarten werden im Sicherheitselement des Smartphone abgelegt Kommunikation über

Mehr

CrypTool im Überblick

CrypTool im Überblick CrypTool im Überblick Martin Schütte 3. Juni 2012 Inhaltsverzeichnis I. Erste Schritte 2 1. Programm-Aufbau 2 2. Symmetrische Verschlüsselungen 2 3. Asymmetrische Verfahren 3 4. Hashfunktionen 3 5. Tools

Mehr

IT-Sicherheit Kapitel 3 Public Key Kryptographie

IT-Sicherheit Kapitel 3 Public Key Kryptographie IT-Sicherheit Kapitel 3 Public Key Kryptographie Dr. Christian Rathgeb Sommersemester 2013 1 Einführung In der symmetrischen Kryptographie verwenden Sender und Empfänger den selben Schlüssel die Teilnehmer

Mehr

Netzsicherheit I, WS 2008/2009 Übung 12. Prof. Dr. Jörg Schwenk 20.01.2009

Netzsicherheit I, WS 2008/2009 Übung 12. Prof. Dr. Jörg Schwenk 20.01.2009 Netzsicherheit I, WS 2008/2009 Übung 12 Prof. Dr. Jörg Schwenk 20.01.2009 Aufgabe 1 1 Zertifikate im Allgemeinen a) Was versteht man unter folgenden Begriffen? i. X.509 X.509 ist ein Standard (Zertifikatsstandard)

Mehr

Kryptografische Algorithmen

Kryptografische Algorithmen Kryptografische Algorithmen Lerneinheit 5: Weitere symmetrische Kryptosysteme Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Wintersemester 2015/2016 21.9.2015 Einleitung Einleitung Diese

Mehr

Effizienten MAC-Konstruktion aus der Praxis: NMAC Idee von NMAC:

Effizienten MAC-Konstruktion aus der Praxis: NMAC Idee von NMAC: Effizienten MAC-Konstruktion aus der Praxis: NMAC Idee von NMAC: Hashe m {0, 1} auf einen Hashwert in {0, 1} n. Verwende Π MAC3 für Nachrichten fixer Länge auf dem Hashwert. Wir konstruieren Π MAC3 mittels

Mehr

Digital Signature and Public Key Infrastructure

Digital Signature and Public Key Infrastructure E-Governement-Seminar am Institut für Informatik an der Universität Freiburg (CH) Unter der Leitung von Prof. Dr. Andreas Meier Digital Signature and Public Key Infrastructure Von Düdingen, im Januar 2004

Mehr

Bestätigung. TÜV Informationstechnik GmbH - ein Unternehmen der RWTÜV-Gruppe - Zertifizierungsstelle Langemarckstraße 20 45141 Essen

Bestätigung. TÜV Informationstechnik GmbH - ein Unternehmen der RWTÜV-Gruppe - Zertifizierungsstelle Langemarckstraße 20 45141 Essen Bestätigung von Produkten für qualifizierte elektronische Signaturen gemäß 15 Abs. 7 und 17 Abs. 4 Gesetz über Rahmenbedingungen für elektronische Signaturen und 11 Abs. 3 Verordnung zur elektronischen

Mehr

ESecuremail Die einfache Email verschlüsselung

ESecuremail Die einfache Email verschlüsselung Wie Sie derzeit den Medien entnehmen können, erfassen und speichern die Geheimdienste aller Länder Emails ab, egal ob Sie verdächtig sind oder nicht. Die Inhalte von EMails werden dabei an Knotenpunkten

Mehr

SSL/TLS und SSL-Zertifikate

SSL/TLS und SSL-Zertifikate SSL/TLS und SSL-Zertifikate Konzepte von Betriebssystem-Komponenten Informatik Lehrstuhl 4 16.06.10 KvBK Wolfgang Hüttenhofer sethur_blackcoat@web.de Motivation Sichere, verschlüsselte End-to-End Verbindung

Mehr

Kurze Einführung in kryptographische Grundlagen.

Kurze Einführung in kryptographische Grundlagen. Kurze Einführung in kryptographische Grundlagen. Was ist eigentlich AES,RSA,DH,ELG,DSA,DSS,ECB,CBC Benjamin.Kellermann@gmx.de GPG-Fingerprint: D19E 04A8 8895 020A 8DF6 0092 3501 1A32 491A 3D9C git clone

Mehr

Benutzer- und Datensicherheit. Ralf Abramowitsch Vector Informatik GmbH abramowitsch@lehre.dhbw-stuttgart.de

Benutzer- und Datensicherheit. Ralf Abramowitsch Vector Informatik GmbH abramowitsch@lehre.dhbw-stuttgart.de Benutzer- und Datensicherheit Ralf Abramowitsch Vector Informatik GmbH abramowitsch@lehre.dhbw-stuttgart.de Authentifizierung vs. Autorisierung IIdentity vs. IPrincipal Verschlüsseln und Entschlüsseln

Mehr

Stefan Lucks Krypto und Mediensicherheit (2009) 5: Blockchiffren. 5: Blockchiffren. (n bit) (n bit) VERschlüsseln ENTschlüsseln

Stefan Lucks Krypto und Mediensicherheit (2009) 5: Blockchiffren. 5: Blockchiffren. (n bit) (n bit) VERschlüsseln ENTschlüsseln 5: Blockchiffren Klartexte 000000 111111 000000 111111 000000 111111 000000 111111 000000 111111 000000 111111 Chiffretexte (n bit) (n bit) VERschlüsseln ENTschlüsseln 74 5.1: Abstrakte Blockchiffren Familie

Mehr

SICHERE DATENHALTUNG IN DER CLOUD VIA HANDY. Tuba Yapinti Abschlussvortrag der Bachelorarbeit Betreuer: Prof. Reinhardt, Dr.

SICHERE DATENHALTUNG IN DER CLOUD VIA HANDY. Tuba Yapinti Abschlussvortrag der Bachelorarbeit Betreuer: Prof. Reinhardt, Dr. SICHERE DATENHALTUNG IN DER CLOUD VIA HANDY 1 Tuba Yapinti Abschlussvortrag der Bachelorarbeit Betreuer: Prof. Reinhardt, Dr. Bernd Borchert GLIEDERUNG 1. Motivation Gründe für die Entwicklung Ideen für

Mehr

Betriebssysteme und Sicherheit

Betriebssysteme und Sicherheit Betriebssysteme und Sicherheit Signatursysteme WS 2013/2014 Dr.-Ing. Elke Franz Elke.Franz@tu-dresden.de 1 Überblick 1 Prinzip digitaler Signatursysteme 2 Vergleich symmetrische / asymmetrische Authentikation

Mehr

Bestätigung für technische Komponenten gemäß 14 (4) Gesetz zur digitalen Signatur und 16 und 17 Signaturverordnung

Bestätigung für technische Komponenten gemäß 14 (4) Gesetz zur digitalen Signatur und 16 und 17 Signaturverordnung Bestätigung für technische Komponenten gemäß 14 (4) Gesetz zur digitalen Signatur und 16 und 17 Signaturverordnung debis Systemhaus Information Security Services GmbH - Zertifizierungsstelle debiszert

Mehr

Diffie-Hellman, ElGamal und DSS. Vortrag von David Gümbel am 28.05.2002

Diffie-Hellman, ElGamal und DSS. Vortrag von David Gümbel am 28.05.2002 Diffie-Hellman, ElGamal und DSS Vortrag von David Gümbel am 28.05.2002 Übersicht Prinzipielle Probleme der sicheren Nachrichtenübermittlung 'Diskreter Logarithmus'-Problem Diffie-Hellman ElGamal DSS /

Mehr

Voll homomorpe Verschlüsselung

Voll homomorpe Verschlüsselung Voll homomorpe Verschlüsselung Definition Voll homomorphe Verschlüsselung Sei Π ein Verschlüsselungsverfahren mit Enc : R R für Ringe R, R. Π heißt voll homomorph, falls 1 Enc(m 1 ) + Enc(m 2 ) eine gültige

Mehr

Grundlagen der Kryptographie

Grundlagen der Kryptographie Grundlagen der Kryptographie Seminar zur Diskreten Mathematik SS2005 André Latour a.latour@fz-juelich.de 1 Inhalt Kryptographische Begriffe Primzahlen Sätze von Euler und Fermat RSA 2 Was ist Kryptographie?

Mehr

Web of Trust, PGP, GnuPG

Web of Trust, PGP, GnuPG Seminar Konzepte von Betriebssystem-Komponenten Web of Trust, PGP, GnuPG von Tobias Sammet tobias.sammet@informatik.stud.uni-erlangen.de 16. Juni 2010 Motivation Szenario: E-Mail-Verschlüsselung Angreifer

Mehr

Methoden der Kryptographie

Methoden der Kryptographie Methoden der Kryptographie!!Geheime Schlüssel sind die sgrundlage Folien und Inhalte aus II - Der Algorithmus ist bekannt 6. Die - Computer Networking: A Top außer bei security by obscurity Down Approach

Mehr

Vorlesungsskript. Kryptologie 2. Sommersemester 2010. Prof. Dr. Johannes Köbler Humboldt-Universität zu Berlin Lehrstuhl Komplexität und Kryptografie

Vorlesungsskript. Kryptologie 2. Sommersemester 2010. Prof. Dr. Johannes Köbler Humboldt-Universität zu Berlin Lehrstuhl Komplexität und Kryptografie Vorlesungsskript Kryptologie 2 Sommersemester 2010 Prof. Dr. Johannes Köbler Humboldt-Universität zu Berlin Lehrstuhl Komplexität und Kryptografie 23. Juli 2010 ii Inhaltsverzeichnis 1 Kryptografische

Mehr

OSCI-Transport 1.2 Korrigenda 05/2011 Status: Entwurf OSCI Leitstelle

OSCI-Transport 1.2 Korrigenda 05/2011 Status: Entwurf OSCI Leitstelle OSCI-Transport 1.2 Korrigenda 05/2011 Status: Entwurf OSCI Leitstelle Bremen, 3. Februar 2011 OSCI-Transport 1.2 Korrigenda vom 3.5.2011 Seite 2 Inhaltsverzeichnis 1 Einleitung... 3 1.1 Anlass der Korrigenda...

Mehr

Reaktive Sicherheit. II. Passwörter. Dr. Michael Meier. technische universität dortmund

Reaktive Sicherheit. II. Passwörter. Dr. Michael Meier. technische universität dortmund Reaktive Sicherheit II. Passwörter Dr. Michael Meier technische universität dortmund Fakultät für Informatik Lehrstuhl VI, Informationssysteme und Sicherheit 20. Oktober 2009 Grundlegendes Grundlegendes

Mehr

Public Key Infrastruktur. Georg Gruber & Georg Refenner 26.Jänner 2009 ITTK 09

Public Key Infrastruktur. Georg Gruber & Georg Refenner 26.Jänner 2009 ITTK 09 Public Key Infrastruktur Georg Gruber & Georg Refenner 26.Jänner 2009 ITTK 09 Grundlagen Symmetrische Verschlüsselung Asymmetrische Verschlüsselung Hybridverschlüsselung Hashverfahren/Digitale Signaturen

Mehr

Ein Überblick über Security-Setups von E-Banking Websites

Ein Überblick über Security-Setups von E-Banking Websites Ein Überblick über Security-Setups von E-Banking Websites Stefan Huber www.sthu.org Linuxwochen Linz 2015 31. Mai 2015 Basierend auf Testergebnissen vom 28.03.2015 aus https://www.sthu.org/blog/11-tls-dnssec-ebanking/

Mehr

Homomorphe Verschlüsselung

Homomorphe Verschlüsselung Homomorphe Verschlüsselung Definition Homomorphe Verschlüsselung Sei Π ein Verschlüsselungsverfahren mit Enc : G G für Gruppen G, G. Π heißt homomorph, falls Enc(m 1 ) G Enc(m 2 ) eine gültige Verschlüsselung

Mehr

IT-Sicherheitsmanagement Teil 6: Einführung in die Kryptographie

IT-Sicherheitsmanagement Teil 6: Einführung in die Kryptographie IT-Sicherheitsmanagement Teil 6: Einführung in die Kryptographie 26.10.15 1 Literatur I mit ein paar Kommentaren [6-1] Burnett, Steve; Paine, Spephen: Kryptographie. RSA Security s Official Guide. RSA

Mehr

Programmiertechnik II

Programmiertechnik II X.509: Eine Einführung X.509 ITU-T-Standard: Information Technology Open Systems Interconnection The Directory: Public Key and attribute certificate frameworks Teil des OSI Directory Service (X.500) parallel

Mehr

Signierung und Verschlüsselung von E-Mails mit einem S/MIME Zertifikat

Signierung und Verschlüsselung von E-Mails mit einem S/MIME Zertifikat Signierung und Verschlüsselung von E-Mails mit einem S/MIME Zertifikat S/MIME steht für Secure / Multipurpose Internet Mail Extensions und ist ein Standard für die Signierung und Verschlüsselung von E-Mails.

Mehr

Skript zum Kryptologie-Referat Part II

Skript zum Kryptologie-Referat Part II Skript zum Kryptologie-Referat Part II c 1999 by Roland Krüppel 1 Grundlegende Unterscheidungen In der modernen Kryptologie unterscheidet man in der Kryptologie zwischen symmetrischen und public-key Verfahren.

Mehr

Vorlesung Sicherheit

Vorlesung Sicherheit Vorlesung Sicherheit Dennis Hofheinz IKS, KIT 13.05.2013 1 / 16 Überblick 1 Asymmetrische Verschlüsselung Erinnerung Andere Verfahren Demonstration Zusammenfassung 2 Symmetrische Authentifikation von Nachrichten

Mehr

Das wichtigste Kennzeichen asymmetrischer Verschlüsselungsverfahren ist, dass die Kommunikationspartner dabei anstelle eines

Das wichtigste Kennzeichen asymmetrischer Verschlüsselungsverfahren ist, dass die Kommunikationspartner dabei anstelle eines Prof. Dr. Norbert Pohlmann, Malte Hesse Kryptographie: Von der Geheimwissenschaft zur alltäglichen Nutzanwendung (IV) Asymmetrische Verschlüsselungsverfahren In den letzten Ausgaben haben wir zunächst

Mehr

Praktikum Diskrete Optimierung (Teil 11) 17.07.2006 1

Praktikum Diskrete Optimierung (Teil 11) 17.07.2006 1 Praktikum Diskrete Optimierung (Teil 11) 17.07.2006 1 1 Primzahltest 1.1 Motivation Primzahlen spielen bei zahlreichen Algorithmen, die Methoden aus der Zahlen-Theorie verwenden, eine zentrale Rolle. Hierzu

Mehr

ech-0106 - Spezifikation für das System Versichertenkarte Offline Card-to-Card Authentication and Authorization

ech-0106 - Spezifikation für das System Versichertenkarte Offline Card-to-Card Authentication and Authorization E-Government-Standards Seite 1 von 23 ech-0106 - Spezifikation für das System Versichertenkarte Offline Card-to-Card Authentication and Authorization Name Standard-Nummer Kategorie Feinspezifikation C2C-Authentisierung

Mehr

Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen. Public-Key-Kryptographie (2 Termine)

Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen. Public-Key-Kryptographie (2 Termine) Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen Vorlesung im Sommersemester 2010 an der Technischen Universität Ilmenau von Privatdozent Dr.-Ing. habil. Jürgen

Mehr

Grundlagen der Verschlüsselung und Authentifizierung (2)

Grundlagen der Verschlüsselung und Authentifizierung (2) Grundlagen der Verschlüsselung und Authentifizierung (2) Benjamin Klink Friedrich-Alexander Universität Erlangen-Nürnberg Benjamin.Klink@informatik.stud.uni-erlangen.de Proseminar Konzepte von Betriebssystem-Komponenten

Mehr

1. WAS IST SSL. 1.1. Protokollaufbau: Stefan Peer 2001-04-17

1. WAS IST SSL. 1.1. Protokollaufbau: Stefan Peer 2001-04-17 1. WAS IST SSL SSL (Secure Socket Layer) ist ein Übertragungsprotokoll, das verschlüsselte Verbindungen über Transportprotokolle wie zum Beispiel TCP/IP ermöglicht. Der Vorteil von SSL liegt vor allem

Mehr

Eine Praxis-orientierte Einführung in die Kryptographie

Eine Praxis-orientierte Einführung in die Kryptographie Eine Praxis-orientierte Einführung in die Kryptographie Mag. Lukas Feiler, SSCP lukas.feiler@lukasfeiler.com http://www.lukasfeiler.com/lectures_brg9 Verschlüsselung & Entschlüsselung Kryptographie & Informationssicherheit

Mehr

Elektronische Signaturen

Elektronische Signaturen Elektronische Signaturen Oliver Gasser 3. Juni 2009 1 Motivation Vorweg: Die Begriffe elektronische Signaturen und digitale Signaturen werden meist synonym verwendet. Das ist aber nicht ganz korrekt, da

Mehr

14. Vorlesung Netzwerke

14. Vorlesung Netzwerke Dr. Christian Baun 14. Vorlesung Netzwerke Hochschule Darmstadt SS2012 1/33 14. Vorlesung Netzwerke Dr. Christian Baun Hochschule Darmstadt Fachbereich Informatik christian.baun@h-da.de Dr. Christian Baun

Mehr

Kap. 2: Fail-Stop Unterschriften

Kap. 2: Fail-Stop Unterschriften Stefan Lucks 2: Fail-Stop Unterschriften 17 Digital Unterschreiben und Bezahlen Kap. 2: Fail-Stop Unterschriften Digitale Unterschriften (Synomym: Digitale Signaturen ): Fälschen mutmaßlich hart (RSA-Wurzeln,

Mehr

Sichere Hashfunktionen

Sichere Hashfunktionen Sichere Hashfunktionen Prof. Dr.-Ing. Damian Weber Hochschule für Technik und Wirtschaft des Saarlandes Was tut eine Hashfunktion? Hashfunktionen (Definition) h: U V U = Universum, V = Hashwerte, V < Urbilder

Mehr

Approximationsalgorithmen

Approximationsalgorithmen Ausarbeitung zum Thema Approximationsalgorithmen im Rahmen des Fachseminars 24. Juli 2009 Robert Bahmann robert.bahmann@gmail.com FH Wiesbaden Erstellt von: Robert Bahmann Zuletzt berarbeitet von: Robert

Mehr

Denn es geht um ihr Geld:

Denn es geht um ihr Geld: Denn es geht um ihr Geld: [A]symmetrische Verschlüsselung, Hashing, Zertifikate, SSL/TLS Warum Verschlüsselung? Austausch sensibler Daten über das Netz: Adressen, Passwörter, Bankdaten, PINs,... Gefahr

Mehr

Nachrichten- Verschlüsselung Mit S/MIME

Nachrichten- Verschlüsselung Mit S/MIME Nachrichten- Verschlüsselung Mit S/MIME Höma, watt is S/MIME?! S/MIME ist eine Methode zum signieren und verschlüsseln von Nachrichten, ähnlich wie das in der Öffentlichkeit vielleicht bekanntere PGP oder

Mehr

Übungen zu. Grundlagen der Kryptologie SS 2008. Hochschule Konstanz. Dr.-Ing. Harald Vater. Giesecke & Devrient GmbH Prinzregentenstraße 159

Übungen zu. Grundlagen der Kryptologie SS 2008. Hochschule Konstanz. Dr.-Ing. Harald Vater. Giesecke & Devrient GmbH Prinzregentenstraße 159 Übungen zu Grundlagen der Kryptologie SS 2008 Hochschule Konstanz Dr.-Ing. Harald Vater Giesecke & Devrient GmbH Prinzregentenstraße 159 D-81677 München Tel.: +49 89 4119-1989 E-Mail: hvater@htwg-konstanz.de

Mehr

Security Associations Schlüsseltausch IKE Internet Key Exchange Automatischer Schlüsseltausch und Identitätsnachweis

Security Associations Schlüsseltausch IKE Internet Key Exchange Automatischer Schlüsseltausch und Identitätsnachweis Wie Interoperabel ist IPsec? Ein Erfahrungsbericht Arturo Lopez Senior Consultant März 2003 Agenda Internet Protokoll Security (IPsec) implementiert Sicherheit auf Layer 3 in OSI Modell Application Presentation

Mehr

Microtraining e-security AGETO 25.03.2014

Microtraining e-security AGETO 25.03.2014 Microtraining e-security AGETO 25.03.2014 Neuer Personalausweis (Technik) Überblick Protokolle für die Online-Funktion 1. PACE: Nutzer-Legitimierung via PIN 2. EAC: Server-Legitimierung via CVC 3. TA/CA:

Mehr

Kryptografische Protokolle

Kryptografische Protokolle Kryptografische Protokolle Lerneinheit 5: Authentifizierung Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Sommersemester 2015 19.6.2015 Einleitung Einleitung Diese Lerneinheit hat Protokolle

Mehr

Verteilte Systeme. 10.1 Unsicherheit in Verteilten Systemen

Verteilte Systeme. 10.1 Unsicherheit in Verteilten Systemen Verteilte Systeme Übung 10 Jens Müller-Iden Gruppe PVS (Parallele und Verteilte Systeme) Institut für Informatik Westfälische Wilhelms-Universität Münster Sommersemester 2007 10.1 Unsicherheit in Verteilten

Mehr

Umstellung des Schlüsselpaares der EU von A003 auf A004

Umstellung des Schlüsselpaares der EU von A003 auf A004 Umstellung des Schlüsselpaares der EU von A003 auf A004 Kundenleitfaden Ausgabe März 2007 Version: 7.03.00 vom 19.03.2007 SFirm32-Version: 2.0k-SP1 BIVG Hannover, 2007, Kundenleitfaden - Umstellung A003

Mehr

Kryptologie-Projekt. Dirk Kruse BBS II Leer 03.11.2011

Kryptologie-Projekt. Dirk Kruse BBS II Leer 03.11.2011 Kryptologie-Projekt Dirk Kruse BBS II Leer 03.11.2011 Gliederung Begriffe Historische Verfahren: Stabcode, Caesar, Vigenère, Enigma 100%ig sicher: One-Time-Pad Moderne Verfahren: DES, RSA, Hashing Anwendungen

Mehr

Sortierverfahren für Felder (Listen)

Sortierverfahren für Felder (Listen) Sortierverfahren für Felder (Listen) Generell geht es um die Sortierung von Daten nach einem bestimmten Sortierschlüssel. Es ist auch möglich, daß verschiedene Daten denselben Sortierschlüssel haben. Es

Mehr

Verteilte Systeme. Übung 10. Jens Müller-Iden

Verteilte Systeme. Übung 10. Jens Müller-Iden Verteilte Systeme Übung 10 Jens Müller-Iden Gruppe PVS (Parallele und Verteilte Systeme) Institut für Informatik Westfälische Wilhelms-Universität Münster Sommersemester 2007 10.1 Unsicherheit in Verteilten

Mehr

Das Knapsack-Kryptosystem

Das Knapsack-Kryptosystem Das Knapsack-Kryptosystem Frank Hellweg 21. Februar 2006 1 Einleitung Das Knapsack-Kryptosystem wurde 1978 von den amerikanischen Kryptologen Martin Hellman und Ralph Merkle entwickelt [MH78] und war eines

Mehr

HOCHSCHULE KONSTANZ TECHNIK, WIRTSCHAFT UND GESTALTUNG. Das Luzifer-Rätsel. Prof. Dr. Hartmut Plesske Wintersemester 2008/09. von.

HOCHSCHULE KONSTANZ TECHNIK, WIRTSCHAFT UND GESTALTUNG. Das Luzifer-Rätsel. Prof. Dr. Hartmut Plesske Wintersemester 2008/09. von. HOCHSCHULE KONSTANZ TECHNIK, WIRTSCHAFT UND GESTALTUNG Fakultät Informatik Das Luzifer-Rätsel Prof. Dr. Hartmut Plesske Wintersemester 2008/09 von Max Nagl nagl@fh-konstanz.de Inhaltsverzeichnis Inhaltsverzeichnis

Mehr