ss 2007 fg datenbanken – interaktive systeme, fachbereich 17 praktische informatik prof. dr. lutz...
TRANSCRIPT
SS 2007SS 2007FG Datenbanken – Interaktive Systeme, Fachbereich 17FG Datenbanken – Interaktive Systeme, Fachbereich 17
Praktische InformatikProf. Dr. Lutz Wegner
Elektronische Signatur
Waldemar Wiegel
Sommer Semester 2007
SS 2007SS 2007
Kurze Einführung
• Elektronische Signatur– Was ist das ?– Wozu brauch ich das ?
• Hash-Funktionen– Was ist das ?– Wie funktioniert das ?
• Public Key Verfahren– Was ist das ?– Wie funktioniert das ?
Waldemar WiegelWaldemar Wiegel22
SS 2007SS 2007
Kurze Einführung
• Ablauf einer elektronischen Signatur– mit Beispiel
• Sicherheit des Public Key Verfahrens
• Gesetz über Rahmenbedingungen
• Zusammenfassung
Waldemar WiegelWaldemar Wiegel33
SS 2007SS 2007
Einführung
• Informationen werden heutzutage über weite Strecken in kürzester Zeit ausgetauscht.
• Was passiert, wenn eine Unterschrift geleistet werden soll.
Waldemar WiegelWaldemar Wiegel44
SS 2007SS 2007
Unterschrift
• Ausdrucken• Unterschreiben• Auf dem Postweg wegschicken
Oder
• Elektronisch Signieren• Als Email verschicken• Kein Medienbruch in der Verarbeitung
Waldemar WiegelWaldemar Wiegel55
SS 2007SS 2007
Funktionsweise
Elektronische Signatur• Brief, Schreiben, Bilder usw.• Hash-Code fester Länge bilden
Die Signierung ist die Verschlüsselung des Hash-Codes
• Public-Key Verfahren (z.B. RSA)– Öffentlicher Schlüssel– Privater Schlüssel
Waldemar WiegelWaldemar Wiegel66
SS 2007SS 2007
Anforderungen
Anforderung an die elektronische Signatur
•Authentizität– Der Empfänger möchte zweifelsfrei wissen,
wer ihm die Nachricht geschickt hat.
•Integrität– Es muss ausgeschlossen sein, dass jemand
anderes die Daten verändert hat.
Waldemar WiegelWaldemar Wiegel77
SS 2007SS 2007
Integrität
• Bildet man von dem Text oder Bild-Dokument einen Hash-Code und stellt ihn auf seiner Homepage aus, so kann der Empfänger der Nachricht einen Hash-Code bilden und diese dann mit dem ausgestellten vergleichen.
• Sind die Hash-Codes gleich, wurden die Daten nicht verändert.
Waldemar WiegelWaldemar Wiegel88
SS 2007SS 2007
SHA-1
•
Waldemar WiegelWaldemar Wiegel99
SS 2007SS 2007
K(i) und F(i)
• K(i) = 0x5A827999 , 0 ≤ i ≤ 19• K(i) = 0x6ED9EBA1 , 20 ≤ i ≤ 39• K(i) = 0x8F1BBCDD , 40 ≤ i ≤ 59• K(i) = 0xCA62C1D6 , 60 ≤ i ≤ 79
• F(i) = (B ^ C) or (¬B ^ D) , 0 ≤ i ≤ 19• F(i) = B xor C xor D , 20 ≤ i ≤ 39• F(i) = (B^C) or (B^D) or (C^D), 40 ≤ i ≤ 59• F(i) = B xor C xor D , 60 ≤ i ≤ 79
Waldemar WiegelWaldemar Wiegel1010
SS 2007SS 2007
Hashfunktionen
• Eine Hashfunktion berechnet zu einer beliebig langen Nachricht ein Hashwert fester Länge.
• Zwei verschiedene Nachrichten m und m` mit H(m) = H(m`) heißen Kollisionen der Hashfunktion.
• Stark-Kollisionsresistent, wenn es praktisch unmöglich ist zwei verschiedene Nachrichten mit dem selben Hashwert zu finden.
Waldemar WiegelWaldemar Wiegel1111
SS 2007SS 2007
Geburtstags-Paradoxon
• Bei einem Hashwert der Länge n, gibt es mit 2^(n/2) Nachrichten mit hoher Wahrscheinlichkeit eine Kollision.
Waldemar WiegelWaldemar Wiegel1212
SS 2007SS 2007
Authentizität
• Public-Key-Verfahren
• Der Hash-Wert wird mit dem privaten Schlüssel verschlüsselt.
• Der Empfänger entschlüsselt den verschlüsselten Hash-Wert mit dem öffentlichen Schlüssel vom Sender.
• Passt der Hash-Wert zum Hash-Wert des Dokuments, so ist der Text vom richtigen Sender erzeugt worden.
• Trust-Center (öffentliches Verzeichnis) Waldemar WiegelWaldemar Wiegel1313
SS 2007SS 2007
RSA – Public Key
• Primzahl p = 17 (17 als Beispiel)• Primzahl q = 31 (31 als Beispiel)• Produkt n = p * q• phi(n) = (p - 1) * (q - 1)
• Man wähle e,d • e*d = k*phi(n)+1 ,k aus N• Geheimer Schlüssel = (29,n)• Öffentlicher Schlüssel = (149,n)• (M^29 mod n)^149 mod n = M
Waldemar WiegelWaldemar Wiegel1414
SS 2007SS 2007
Ablauf
Waldemar WiegelWaldemar Wiegel1515
Alice schickt Bob das Dokument und den verschlüsselten Hash-Wert
SS 2007SS 2007
Hash-Code
Beispiel:
– Selbst erstelltes Signatur Programm
– Mit dem Namen: SignaturProgramm
Waldemar WiegelWaldemar Wiegel1616
SS 2007SS 2007
Sicherheit
X * Y = Z• Die Sicherheit dieses Verfahrens beruht
auf dem Faktorisierungsproblem.
Waldemar WiegelWaldemar Wiegel1717
SS 2007SS 2007
p - q - Formel
• X * Y = Z ,Y=X+W• X*(X+W) = Z• X*X +X*W = Z• X^2+W*X-Z = 0
– Jetzt die p-q-Formel anwenden
Waldemar WiegelWaldemar Wiegel1818
SS 2007SS 2007
Raten von W
• X*Y = Z• X^2 + W*X = Z
• X^2 ,X=a+1• => (a+1)^2 = a^2 +2*a+1
• => a^2+2*a+1+W*(a+1) = Z• => a^2+2*a+W*(a+1) = Z-1
• => (Z-1)/2 ganzzahlig => 2 Teiler von W
Waldemar WiegelWaldemar Wiegel1919
SS 2007SS 2007
Raten von W
• X^2 + W*X = Z
• X^2 ,X=a+2• => (a+2)^2 = a^2 +4*a+4
• => a^2+4*a+4+W*(a+4) = Z• => a^2+4*a+W*(a+4) = Z-4
• => (Z-1)/3 ganzzahlig => 3 Teiler von W
Waldemar WiegelWaldemar Wiegel2020
SS 2007SS 2007
Gesetz
• Gesetz über Rahmenbedingungen für elektronische Signaturen – (Signaturgesetz – SigG)
• Zweck des Gesetzes– Schaffung von Rahmenbedingungen
• Zuständige Behörde– Bundesnetzagentur für Elektrizität, Gas,
Telekommunikation, Post und Eisenbahnen
Waldemar WiegelWaldemar Wiegel2121
SS 2007SS 2007
Gesetz
• Allgemeine Anforderungen an die Zertifizierungsdienstanbieter (ZDA)– Der Betrieb ist genehmigungsfrei– Zuverlässigkeit– Fachkunde– Deckungsvorsorge nach §12
• §12 – Jede ZDA ist gesetzlich verpflichtet zum Ersatz von Schäden nachzukommen. Im Falle eines Schadens wurde die Mindestsumme auf je Schaden auf 250.000€ festgesetzt.
– Qualifikation, Diskretion und Zuverlässigkeit der Mitarbeiter
Waldemar WiegelWaldemar Wiegel2222
SS 2007SS 2007
Gesetz
• Einstellung der Tätigkeit– Der ZDA hat die Einstellung seiner Tätigkeit
unverzüglich der zuständigen Behörde anzuzeigen.
– Er hat dafür zu sorgen, das die gültigen qualifizierten Zertifikate von einem anderen ZDA übernommen werden und dass deren Inhaber darüber in Kenntnis gesetzt werden.
– Findet sich kein anderer ZDA, der diese Zertifikate übernehmen kann, muss die zuständige Behörde dies tun.
Waldemar WiegelWaldemar Wiegel2323
SS 2007SS 2007
Gesetz
• Bußgeld-Vorschriften– Wer ordnungswidrig, vorsätzlich oder
fahrlässig handelt kann mit einer Geldbuße von bis zu 15.000€ geahndet werden.
Waldemar WiegelWaldemar Wiegel2424
SS 2007SS 2007
Zusammenfassung
• Wähle ein stark resistente Hash-Funktion.
• Sorge für ein großes Z = X*Y.– Z-1 sollte nicht durch 3 teilbar sein.
Waldemar WiegelWaldemar Wiegel2525