Hashverfahren und digitale Signaturen Wei Yang Seminar: Sicherheit in vernetzten System Betreuer: Prof. Dr. Roland Wismüller Universität Siegen WS 04/05
Organisation Einleitung Kryptographisches Hashverfahren Digitale Signaturen Fazit
Einleitung - Sicherheitsanforderungen Vertraulichkeit Integrität Authentizität Verbindlichkeit
Hashverfahren – Grundlage (I) Kompression Abbildung einer Nachricht M beliebiger Länge auf einem Hashwert h = H(M) fester Länge Hashfunktionen sind nicht injektive Abblidung Kollisionsbeachten
Hashverfahren – Grundlage (I) Hashfunktion – Aufbau
Hashverfahren – Grundlage (II) Einwegeigenschaft Zu gegebenem M ist es leicht, h = H(M) zu berechnen Zu gegebenem h ist es schwer, M = H-1(h) zu berechnen
Hashverfahren – Grundlage (III) Kollisionsresistenz Schwache Kollisionsresistenz Zu gegebenen M und h = H(M) ist es schwer, einen anderen passenden M' zu finden mit H(M) = H(M') Starke Kollisionsresistenz Es ist schwer, ein beliebiges Pärchen (M, M') zu finden mit H(M) = H(M') Geburtstags – Paradoxon Schwache Hashfunktionen mit Hashwertlänge 64 Bit Starke Hashfunktionen mit Hashwertlänge zwischen 128 bis 160 bit
Hashverfahren – Anwendungen (I) Integritätsprüfung Digitaler Fingerabdruck
Hashverfahren – Anwendungen(II) Einsatz in digitale Signaturen Eindeutige Fingerabdruck wird signiert Kürzere Signatur & schnellere Berechnung Vorteile sowohl die Integrität des Objektes zu prüfen, als auch die Urheberschaft nachzuweisen Starke Hashfunktionen sind häufig verwendbar
Hashverfahren – Anwendungen(II) Digitale Signatur
Hashverfahren – Algorithmen (I) Auf der Basis symmetrischer Blockchiffern In der Praxis wird DES eingesetzt Meyer – Hashfunktion auf eine beliebige Blockchiffre Schwache Hashfunktion verwendet aufgrund der Blockgröße der zugrunde liegenden Blockchiffre (beim DES 64 Bits)
Hashverfahren – Algorithmen (II) Dedizierte Hashfunktionen Effizienter zu berechnen Keine Exportrestriktionen bzw. Kryptoregulierungen Starke Hashfunktionen sind verwendet SHA-1 und MD5 sind bekannte Algorithmen
Hashverfahren – Algorithmen (III) Secure Hash Algorithm (SHA-1) Bestandteil des Secure Hash Standards (SHS) Als Standard wurde 1993 vom NIST veröffentlicht Input : < 264 Bit Output :160 Bit Jede Blockgröße von 512 Bits wird wiederum in 16 á 32-Bit Worte aufgeteilt Sicherheit Besserer Schutz vor dem Angriff Gut geeignet ist zur Durchführung von Integritätskontrollen
Hashverfahren – Algorithmen (III) Message Digest (MD5) 1992 wurde von R. Rivest als einer Weiterentwicklung von MD4 fortgesetzt Input : < 264 Bit Output : 128 Bit Unterschied zum SHA-1 => 4 verschiedene Runden Aufgrund des Kollisionsproblem wird MD5 als HMAC verwendet
Hashverfahren – MAC (I) Message Authentication Code (MAC) Schlüsselabhängige Einwegfunktion Gleiche Eigenschaften wie Einweg-Hashfunktionen Schwache Authentizität von Daten Protokoll Sender berechnet MAC(M, KA,B) = mac Sender sendet M, mac Empfänger empfängt M' , mac' Empfänger berechnet MAC(M', KA,B) = mac' Empfänger vergleicht mac mit mac'
Hashverfahren – MAC (II) HMAC – Verschlüsseltes Hashing Warum HMAC ? Ein aktiver Angreifer verfälscht das Dokument und ebenfalls erzeugt neuen Haswert HMAC fügt einen geheimen Schlüssel in ein Dokument hinzu und hashed das so entstandene neue Dokument Berechnung: H(key xor opad, H(key xor ipad, message)) opad: 0x5C (Auffüllung des Byte auf Blockgröße) ipad : 0x36 (Auffüllung des Byte auf Blockgröße)
Hashverfahren – MAC (III) Funktionsweise des HMAC – Verfahrens HMAC(M,K) = H(K xor opad, H(K xor ipad, M))
Digitale Signaturen – Grundlage (I) Eigenschaften Identifikation Echtheit Abschluss Verwendet am häufigsten in e-Commerce System
Digitale Signaturen –Grundlage (II) Anforderungen Authentizität Keine Wiederverwendbarkeit Unveränderbarkeit Verbindlichkeit
Digitale Signaturen – Signaturerstellung(I) Signaturerstellung mit RSA
Digitale Signaturen – Signaturerstellung (II) Signaturerstellung mit DSS DSS wurde vom NIS 1994 als Signaturstandard festgelegt und dessen Herzstück ist DSA Signaturerstellung mit DSA basisiert auf des diskreten Logarithmus Sicherheit Sehr aufwändig zur Berechnung des diskreten Logarithmus Zur Sicherheit verwendet gutes Zufallszahlgenerator
Fazit – (I) Hashverfahren Wichtige Bestandteile heutiger Verschlüsselungsinfrastrukturen Mit digitalen Fingerabdruck zur Überprüfung der Integrität eines Objekts Neben Integrität steht MAC zur Authentizität des Datenursprungs Sowie erweitere Algorithmen von Hashing und MAC
Fazit – (II) Digitale Signaturen Erfüllung der Sicherheitsanforderungen Erstellung auf asymmetrischen Verfahren mit RSA ist relativ einfach aber langsamer Erstellung mit DSS besitzt höhere Sicherheit