Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Kryptographie - ein Exkurs Kodieren/Dekodieren, Verschlüsseln/Entschlüsseln, Chiffrieren/Dechiffrieren zum Zweck der Geheimhaltung, zur Authentifizierung,

Ähnliche Präsentationen


Präsentation zum Thema: "Kryptographie - ein Exkurs Kodieren/Dekodieren, Verschlüsseln/Entschlüsseln, Chiffrieren/Dechiffrieren zum Zweck der Geheimhaltung, zur Authentifizierung,"—  Präsentation transkript:

1 Kryptographie - ein Exkurs Kodieren/Dekodieren, Verschlüsseln/Entschlüsseln, Chiffrieren/Dechiffrieren zum Zweck der Geheimhaltung, zur Authentifizierung, zum Signieren, non repudiation... e-commerce passwords, ChipCards, e-cash, e-banking,... ECC...

2 Albrecht Beutelspacher: Kryptologie; Vieweg 1991 Wilfried Dankmeier: Codierung; Vieweg 1994 Otto Forster: Algorithmische Zahlentheorie; Vieweg 1996 Rudolph Kippenhahn: Verschlüsselte Botschaften - Geheimschrift, Enigma und Chipkarte; Rowohlt 1997 David Kahn: The Codebreakers; New York 1967 Euklid (ca 300 c.Chr.), Gaius Julius Caesar (), Johannes Trithemius ( ), Blaise de Vigenère ( ), Pierre de Fermat ( ), Leonhard Euler ( ), Friedrich W. Kasiski ( ), Alan M. Turing ( ), Ronald L. Rivest, Adi Shamir, Leonard Adleman, Diffie, Martin E. Hellmann, Philipp (Phil) Zimmermann, usw. data encryption standard (DES), RSA, PGP, IDEA etc.

3 Caesar Mit der Verschlüsselungsvorschrift (encryption) e:chr (chr+key) mod 26 oder tabellarisch etwa chrabcdefghijklm e(chr)DEFGHIJKLMNOP chrnopqrstuvwxyz e(chr)QRSTUVWXYZABC (key=?) wird Klartext chiffriert, z.B. traueniemand WUDXHQLHPDQG bzw. Chiffriertext mit (decryption) d:chr (chr-key) mod 26 dechiffriert. Leerzeichen evtl. als eigenen Buchstabe auffassen! Realisierung durch Buchstaben-Scheibe.

4

5 Trithemius abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ BCDEFGHIJKLMNOPQRSTUVWXYZA CDEFGHIJKLMNOPQRSTUVWXYZAB DEFGHIJKLMNOPQRSTUVWXYZABC EFGHIJKLMNOPQRSTUVWXYZABCD FGHIJKLMNOPQRSTUVWXYZABCDE GHIJKLMNOPQRSTUVWXYZABCDEF HIJKLMNOPQRSTUVWXYZABCDEFG IJKLMNOPQRSTUVWXYZABCDEFGH JKLMNOPQRSTUVWXYZABCDEFGHI KLMNOPQRSTUVWXYZABCDEFGHI J... ZABCDEFGHIJKLMNOPQRSTUVWXY

6 führt auf eine die Häufigkeit verschleiernde Kodierung, beispielsweise eineialleine EJPHMFRSMRXP Vigenère Die Vigenère-Verschlüsselung ist eine Trithemius-Verschlüsselung mit Schlüsselwort. Schlüssel-Raum? brute force attack? Entscheidend ist die Kenntnis der Länge des Schlüsselwortes, die mit der Methode von Kasiski zu bestimmen ist: gleiche Buchstabenfolgen im Chiffriertext (von denselben Klartext-Wort(-Teilen) stammend) haben im Geheimtext ein Vielfaches der Schlüssel-Länge als Abstand.

7 Data Encryption Standard (DES) symmetrisch, d.h. derselbe Schlüssel für Codierung wie für Decodierung hardware-nah u.a. durch iterierte bit-Operationen, also schnell und sparsam (Realisierung auf Prozessor-Chip-Karten) Entwicklung der IBM in USA, 1977 standardisiert vom NBS, Verbesserungen (triple DES etc), Export-Beschränkungen...

8 RSA RSA (Rivest, Shamir, Adleman: A Method for Obtaining Digital Signatures and Public-Key Cryptosystems; CACM 21 (Feb 1978), ) ist ein asymmetrisches Verfahren, d.h. mit verschiedenen Schlüsseln zum Chiffrieren und Dechiffrieren. Dabei ist ein Schlüssel öffentlich (public key). Def.: Für n N heißt (n)= k N:k

9 rekursiv unsigned gcd(int x, int y) { // wegen x=(x/y)*y+x\%y if (y==0) return abs(x); else return gcd(y,x%y); } // end gcd iterativ unsigned gcd(int x, int y) { // wegen x=(x/y)*y+x\%y while (y!=0) { int temp=y; y=x%y; x=temp; } return abs(x); } // end gcd

10 Die Umkehrung des Algorithmus erlaubt die Berechnung des modularen Inversen. Bem.: Für jede Primzahl p gilt (p)= 1,2,...,p-1 =p-1. Für alle Primzahlen p und q gilt (pq)=(p-1)(q-1), da ja (pq)= 1,2,...,pq-1 = 1,2,...,pq-1 - 1p,2p,...,(q-1)p - 1q,2q,...,(p-1)q =pq-1-(q-1)- (p-1)=(p-1 )(q-1). Satz: (kleiner Satz von Fermat) Sei p prim und a nicht durch p teilbar. Dann gilt a p-1 mod p=1. z.B.: mod 3 = 25 mod 3 = 1, mod 5 = 81 mod 5 = 1 großer Satz von Fermat: x²+y²=z² hat Lösungen in N, aber x n +y n =z n für n>2 nicht!

11 Satz: (Euler) Sei 1

12 Da e und d modulo (n) invers zueinander, gilt (ed) mod (n) =1 oder eben ed= v (n)+1 für ein v N. Also ist G d mod n = (K e mod n) d mod n = K ed mod n = K v (n)+1 mod n = K (K (n) mod n) v mod n = K 1 v mod n = K mod n = K Entschlüsseln des Geheimtextes liefert den Klartext zurück!

13 Beispiel Sei n = p q = 5*7. Dann ist (n)=(p-1)(q-1) = 4*6 = 24 und e=11 ist teilerfremd zu (n) = 24, etwa zu verifizieren mit dem Euklid'schen Algorithmus. Ebenso mit dem Euklid'schen Algorithmus bestimmt man das modulo (n) Inverse d = 11 von e mit (ed) mod (n) = 1. Der Klartext K = 13 < 35 = n wird zum Geheimtext G = K e mod n = mod 35 = 13(13 2 mod 35) 5 mod 35 = mod 35 = (29 2 mod 35) 2 mod 35 = mod 35 = mod 35 = 27 chiffriert. Der Geheimtext G = 27 wird wieder zum Klartext K = G d mod n = mod 35 = 27(27 2 mod 35) 5 mod 35 = mod 35 = (29 2 mod 35) 2 mod 35 = mod 35 = mod 35 = 13 dechiffriert.

14 Weitere Zahlen-Beispiele Dankmeier S.242, Risse Kippenhahn S.277 Dankmeier S.241 Kippenhahn S.341 q q n (n) e d K G Ein Beispiel mit 40- bzw. 41-stelligen Primzahlen in Forster, S.125ff.

15 Anwendungen S(ender) möchte R(eciever) den Klartext K vertraulich senden: e=e R und n=n R sind öffentlich. S versendet den Geheimtext G = K e mod n, den nur R zum Klartext K = G d mod n entschlüsseln kann. S(ender) möchte einen Klartext K signieren: S kodiert K oder zu G = K d mod n oder erzeugt zu K explizit die Digitale Signatur Sig(K)= (hash(K)) d mod n. R(eciever) hat mit K = G e mod n bzw. hash(K) = (Sig(K)) e mod n nicht nur das Dokument K sondern auch seine gesicherte Echtheit (Authenizität).


Herunterladen ppt "Kryptographie - ein Exkurs Kodieren/Dekodieren, Verschlüsseln/Entschlüsseln, Chiffrieren/Dechiffrieren zum Zweck der Geheimhaltung, zur Authentifizierung,"

Ähnliche Präsentationen


Google-Anzeigen