Das RSA-Verfahren - Einsatz von Standardalgorithmen in der Kryptologie

Größe: px
Ab Seite anzeigen:

Download "Das RSA-Verfahren - Einsatz von Standardalgorithmen in der Kryptologie"

Transkript

1 Das RSA-Verfahren - Einsatz von Standardalgorithmen in der Kryptologie 2 Verschlüsseln durch modulares Rechnen modulares Addieren modulares Multiplizieren modulares Potenzieren Verschlüsselung mit öffentl. Schlüssel (d, m) z (z + d) % m Entschlüsselung mit privat. Schlüssel (e, m) z (z + e) % m Verschlüsselung mit öffentl. Schlüssel (d, m) z (z * d) % m Entschlüsselung mit privat. Schlüssel (e, m) z (z * e) % m Verschlüsselung mit öffentl. Schlüssel (d, m) z (z ** d) % m Entschlüsselung mit privat. Schlüssel (e, m) z (z ** e) % m Zielsetzung: Am Beispiel kryptologischer Verfahren Relevanz von Algorithmen erkennen Bedeutung schneller Algorithmen erleben Standardalgorithmen kennen lernen

2 3 Orientierung Im folgenden soll das RSA-Verfahren genauer untersucht werden. Dabei sollen insbesondere die algorithmischen Grundlagen analysiert werden. Die mathematischen Aspekte werden kurz angesprochen, aber nicht weiter vertieft. Die Vorgehensweise folgt einem Vorschlag von Witten und Schulz, der in den folgenden Artikeln beschrieben wird: H. Witten, R.-H. Schulz: RSA & Co. in der Schule, Teil1. LOG IN 140 S. 45 ff. H. Witten, R.-H. Schulz: RSA & Co. in der Schule, Teil2. LOG IN 143 S. 50 ff. 4 Verschlüsseln mit modularer Addition

3 5 Den Anfang macht Caesar PYLZFOWBNQCYBUVNCBLGYCH YAYBYCGMWBLCZNYHNTCZYLN VDOYH FDHVDU A B C D E F G H I J K L M N O P Q R S T U V W X Y Z D E F G H I J K L M N O P Q R S T U V W X Y Z A B C Quelltext: SALVECAESAR Schlüssel: D Geheimtext: VDOYHFDHVDU 6 Caesar-Verfahren mit Zahlen Umwandlung von Zeichen in Zahlen A 00 B 01 Z 25 A#S#T#E#R#I#X 00#18#19#04#17#08#23 Verarbeitung von Zahlen (0 + 3) % 26 = 3 (18 + 3) % 26 = 21 (23 + 3) % 26 = 0 00#18#19#04#17#08#23 03#21#22#07#20#11#00 Verarbeitung von Zahlen (3 + 23) % 26 = 0 ( ) % 26 = 18 (0 + 23) % 26 = 23 03#21#22#07#20#11#00 00#18#19#04#17#08#23 Decodierung: Umwandlung von Zahlen in Zeichen A 00 B 01 Z 25 00#18#19#04#17#08#23 A#S#T#E#R#I#X

4 7 Modulares Rechnen - Addition Es ist jetzt 14 Uhr. In 22 Stunden gibt es wieder Mittagessen = 12 Uhrenaddition: ( ) % 24 = 36 % 24 = 12 %: Rest bei der ganzzahligen Division Bsp.: 12 % 4 = 0; 12 % 5 = 2; 12 % 17 = 12 Verarbeitung von Zahlen Verarbeitung von Zahlen (0 + 3) % 26 = 3 (18 + 3) % 26 = 21 (23 + 3) % 26 = 0 (3 + 23) % 26 = 0 ( ) % 26 = 18 (0 + 23) % 26 = 23 00#18#19#04#17#08#23 03#21#22#07#20#11#00 03#21#22#07#20#11#00 00#18#19#04#17#08#23 8 Caesar-Variationen Umwandlung von Zeichen in Zahlen A 01 B 02 Z 26 A#S#T#E#R#I#X Verarbeitung von Zahlen (d, m) = (9, 30) Verarbeitung von Zahlen (e, m) = (21, 30) Decodierung: Umwandlung von Zahlen in Zeichen (1 + 9) % 30 = 10 (19 + 9) % 30 = 28 (24 + 9) % 30 = 3 ( ) % 30 = 1 ( ) % 30 = 19 (3 + 21) % 30 = 24 A 01 B 02 Z 26 10#28#01#16#29#20#03 10#28#01#16#29#20#03 A#S#T#E#R#I#X

5 9 Caesar-Variationen Blocklänge: 2 AA 0101 AB 0102 ZZ 2626 AS#TE#RI#X 0119#2005#1809#24 (d, m) = (2102, 3000) (e, m) = (898, 3000) Decodierung: Blocklänge: 2 ( ) % 3000 = 2221 ( ) % 3000 = 1107 ( ) % 3000 = 119 ( ) % 3000 = 2005 AA 0101 AB 0102 ZZ #2005#1809# #1107#911# #1107#911# #2005#1809# #2005#1809#24 AS#TE#RI#X 10 Aufgabe Blocklänge: 2 AA 0101 AB 0102 ZZ 2626 DO#MS#PE#YE#R (d, m) = (567, 2911) (e, m) = (2344, 2911) Decodierung Blocklänge: 2 AA 0101 AB 0102 ZZ 2626

6 11 Aufgabe A 01 B 02 Z 26 (d, m) = (99, 411) (e, m) = 103#114#112#107#114#105 Decodierung Blocklänge: 2 A 01 B 02 Z Additives Chiffrierverfahren Blocklänge: 2 AA 0101 AB 0102 ZZ 2626 AS#TE#RI#X 0119#2005#1809#24 (d, m) = (2102, 3000) (e, m) = (898, 3000) z (z + d) % m 0119#2005#1809#24 z < m m > maxcode 2221#1107#1010#2126 z (z + e) % m 2221#1107#1010#2126 (d + e) % m = #2005#1809#24 Decodierung: Blocklänge: 2 AA 0101 AB 0102 ZZ #2005#1809#24 AS#TE#RI#X

7 13 Additives Chiffrierverfahren Blocklänge: 2 b z eindeutige Codierung von Zeichenblöcken AS#TE#RI#X 0119#2005#1809#24 (d, m) = (2102, 3000) (e, m) = (898, 3000) z (z + d) % m 0119#2005#1809#24 z < m m > maxcode 2221#1107#1010#2126 z (z + e) % m 2221#1107#1010#2126 (d + e) % m = #2005#1809#24 Decodierung Blocklänge: 2 z b Decodierung als Umkehrung der Codierung 0119#2005#1809#24 AS#TE#RI#X 14 Additives Chiffrierverfahren Korrektheit: Die Entschlüsselung macht die Verschlüsselung rückgängig: z (z + d) % m ((z + d) % m + e) % m = (z + (d + e) % m) % m = z % m = z (d, m) = (2102, 3000) (e, m) = (898, 3000) z (z + d) % m 0119#2005#1809#24 m ist größer als die maximale Codezahl 2221#1107#1010#2126 z (z + e) % m 2221#1107#1010#2126 d + e = m 0119#2005#1809#24 Sicherheit: Das "additive" Chiffrierverfahren ist nicht sicher, da man aus dem öffentlichen Schlüssel sofort den privaten Schlüssel bestimmen kann.

8 15 Prinzip von Kerckhoff Die Sicherheit eines Kryptosystems darf nicht von der Geheimhaltung des Algorithmus abhängen. Die Sicherheit darf sich nur auf die Geheimhaltung des Schlüssels gründen. Vgl. A. Beutelspacher: Kryptologie. Vieweg 1996 Das Prinzip wurde erstmals formuliert im Buch "La cryptographie militaire" von Jean Guillaume Hubert Victor Francois Alexandre Auguste Kerckhoffs van Nieuwenhof (1835 bis 1903). Sicherheit: Das "additive" Chiffrierverfahren erfüllt nicht das Prinzip von Kerckhoff. 16 Verschlüsseln mit modularer Multiplikation

9 17 Multiplikatives Chiffrierverfahren b z eindeutige Codierung von Zeichenblöcken A#S#T#E#R#I#X (d, m) = (7, 30) (e, m) = (13, 30) z < m z (z * d) % m 07#13#20#05#06#03#18 z (z * e) % m 07#13#20#05#06#03#18 (d * e) % m = 1 Decodierung z b Decodierung als Umkehrung der Codierung A#S#T#E#R#I#X 18 Aufgabe b z eindeutige Codierung von Zeichenblöcken C#A#E#S#A#R (d, m) = (7, 30) (e, m) = (13, 30) Decodierung z < m z (z * d) % m z (z * e) % m (d * e) % m = 1 z b Decodierung als Umkehrung der Codierung

10 19 Aufgabe (d, m) = (12, 35) (e, m) = Decodierung b z eindeutige Codierung von Zeichenblöcken z < m z (z * d) % m z (z * e) % m 9#36#15#5#8#3#20#14#3 (d * e) % m = 1 z b Decodierung als Umkehrung der Codierung 20 Modulares Inverses Zwei Zahlen a, b heißen modular invers zueinander bzgl. des Moduls m genau dann, wenn gilt: (a * b) % m = 1. Bsp.: (7 * 13) % 30 = 1. Also: 13 ist das modulare Inverse zu 7 bzgl. des Moduls m = 30. Beachte: Wenn a und m teilerfremd sind, dann existiert das modulare Inverse von a bzgl. m. (d, m) = (7, 30) (e, m) = (13, 30) z (z * d) % m z < m; ggt(d, m) = 1 07#13#20#05#06#03#18 z (z * e) % m 07#13#20#05#06#03#18 (d * e) % m = 1 Das multiplikative Chiffrierverfahren funktioniert nur, wenn man zwei Zahlen d und e findet mit (d * e) % m = 1.

11 21 Aufgabe Untersuchen Sie, zu welchen der folgenden Zahlen d es ein modulares Inverses e bzgl. des Moduls 12 gibt: d = 2 d = 3 d = 4 d = 5 d = 6 d = 7 d = 8 d = 9 d = 10 d = Korrektheit Korrektheit: Die Entschlüsselung macht die Verschlüsselung rückgängig: z (z * d) % m ([(z * d) % m] * e) % m = (z * [(d * e) % m]) % m = (z * 1) % m = z (d, m) = (7, 30) (e, m) = (13, 30) z (z * d) % m z < m; ggt(d, m) = 1 07#13#20#05#06#03#18 z (z * e) % m 07#13#20#05#06#03#18 (d * e) % m = 1 Beispiel: Verschlüsseln: 9 (9 * 7) % 30 Entschlüsseln: (9 * 7) % 30 ([(9 * 7) % 30] * 13) % 30 = [(9 * 7) * 13)] % 30 = [9 * (7 * 13)] % 30 = (9 * [(7 * 13) % 30]) % 30 = (9 * 1) % 30 = 9

12 23 Aufgabe Der Korrektheitsnachweis nutzt einige Regeln zum Rechnen mit modularer Multiplikation aus, u. a.: (a % m) * (b % m) = ((a % m) * b) % m = (a * b) % m 24 Sicherheit Sicherheit: Die Sicherheit des multiplikativen Chiffrierverfahrens hängt davon ab, ob man zur Zahl d aus dem öffentlichen Schlüssel das modulare Inverse e bzgl. m bestimmen kann. (d, m) = (7, 30) (e, m) = (13, 30) z (z * d) % m z < m; ggt(d, m) = 1 07#13#20#05#06#03#18 z (z * e) % m 07#13#20#05#06#03#18 (d * e) % m = 1

13 25 Bestimmung des modularen Inversen Ein naiver Ansatz besteht darin, der Reihe nach alle Zahlen durchzuprobieren, bis man das gewünschte Ergebnis gefunden hat. def modinvnaiv(d, m): gefunden = False e = 1 while not gefunden: if (d*e)%m == 1: gefunden = True else: e = e + 1 return e 26 Praktisch unbrauchbarer Algorithmus Für größere Zahlen ist der naive Algorithmus unbrauchbar. Für die unten gezeigten Zahlen benötigt ein Rechner länger, als das Universum alt ist. Beispiel: d = 49 m = modinvnaiv(d, m) Um (= 10 7 ) Zahlen durchzuprobieren, benötigt ein Rechner derzeit etwas 10s. Da das erwartete Ergebnis eine 54-stellige Zahl ist, wird der Rechner eine Zeit benötigen, die in der Größenordnung von s liegt. Dies sind mehr als Jahre. Bedenkt man, dass das Universum ein Alter von etwa Jahre hat, dann zeigt sich, wie ungeeignet das naive Vorgehen ist.

14 27 Bestimmung des modularen Inversen Mit Hilfe der Ausgaben des erweiterten euklidischen Algorithmus lässt sich das modulare Inverse bestimmen: Beispiel 1: modinv(41, 192) Beachte: ggt(41, 192) = 1. Das modulare Inverse von 41 bzgl. 192 kann bestimmt werden. Der Algorithmus von Bachet liefert zu den Eingaben (41, 192) die Ausgabe (1, 89, -19). Also: 1 = 89*41 + (-19)*192 Also: (89*41) % 192 = (1 - (-19)*192) % 192 = (1 + 19*192) % 192 = 1 Also: modinv(41, 192) = 89 Beispiel 2: modinv(17, 192) Beachte: ggt(17, 192) = 1. Das modulare Inverse von 17 bzgl. 192 kann bestimmt werden. Der Algorithmus von Bachet liefert zu den Eingaben (17, 192) die Ausgabe (1, -79, 7). Also: 1 = (-79)*17 + 7*192 Also: *17 = ( )*17 + 7*192 Also: *17-7*192 = 113*17 Also: (113*17) % 192 = (1 + 10*192) % 192 = 1 Also: modinv(17, 192) = 113 Beispiel 3: modinv(320, 884) Beachte: ggt(320, 884) = 4 > 1. Es gibt kein modulares Inverses von 320 bzg Sicherheit Sicherheit: Das "multiplikative" Chiffrierverfahren ist nicht sicher, da man aus dem öffentlichen Schlüssel mit Hilfe des erweiterten euklidischen Algorithmus den privaten Schlüssel recht schnell bestimmen kann. (d, m) = (7, 30) (e, m) = (13, 30) z (z * d) % m z < m; ggt(d, m) = 1 07#13#20#05#06#03#18 z (z * e) % m 07#13#20#05#06#03#18 (d * e) % m = 1

15 29 Sicherheit Sicherheit: Das "multiplikative" Chiffrierverfahren ist nicht sicher, da man aus dem öffentlichen Schlüssel mit Hilfe des erweiterten euklidischen Algorithmus den privaten Schlüssel recht schnell bestimmen kann. Die "Unsicherheit" basiert hier also darauf, dass man ein schnelles Verfahren gefunden hat, um das modulare Inverse einer Zahl zu bestimmen. 30 Verschlüsseln mit modularem Potenzieren

16 31 Verschlüsseln d. modulares Rechnen modulares Addieren modulares Multiplizieren modulares Potenzieren Verschlüsselung mit öffentl. Schlüssel (d, m) z (z + d) % m Entschlüsselung mit privat. Schlüssel (e, m) z (z + e) % m Verschlüsselung mit öffentl. Schlüssel (d, m) z (z * d) % m Entschlüsselung mit privat. Schlüssel (e, m) z (z * e) % m Verschlüsselung mit öffentl. Schlüssel (d, m) z (z ** d) % m Entschlüsselung mit privat. Schlüssel (e, m) z (z ** e) % m 32 Verschlüsseln d. modulares Potenzieren b z eindeutige Codierung von Zeichenblöcken A#S#T#E#R#I#X (d, m) = (13, 77) (e, m) = (37, 77) z (z ** d) % m z < m 01#61#69#26#46#58#52 z (z ** e) % m 01#61#69#26#46#58#52 (d * e) % φ(m) = 1 Decodierung z b Decodierung als Umkehrung der Codierung A#S#T#E#R#I#X

17 33 Schlüsselerzeugung Vorbereitung: Wähle zwei verschiedene Primzahlen p und q. Berechne m = p*q. Berechne φ(m) = (p-1)*(q-1). Wähle eine Zahl d, die teilerfremd zu φ(m) ist. Berechne e so, dass (d*e) % φ(m) = 1 ist. ("Vernichte p, q, φ(m).") Schlüssel: Der öffentliche Schlüssel ist (d, m). Der private Schlüssel ist (e, m). Beispiel: p = 7; q = 11 m = 77 φ(m) = 60 z. B. d = 13 e = 37 (13, 77) (37, 77) 34 Aufgabe b z eindeutige Codierung von Zeichenblöcken A#S#T#E#R#I#X (d, m) = (13, 77) (e, m) = (37, 77) Decodierung z (z ** d) % m z < m z (z ** e) % m (d * e) % φ(m) = 1 z b Decodierung als Umkehrung der Codierung

18 35 Aufgabe (d, m) = (7, 55) (e, m) = Decodierung b z eindeutige Codierung von Zeichenblöcken z (z ** d) % m z < m z (z ** e) % m 28#25#02#25#04#07 (d * e) % φ(m) = 1 z b Decodierung als Umkehrung der Codierung 36 Korrektheit des RSA-Verfahrens Behauptung: Seien (d, m) und (e, m) ein öffentlicher und zum RSA- Verfahren. Sei z eine natürliche Zahl mit z < m. Dann gilt: (z d % m) e % m = z (d, m) = (13, 77) (e, m) = (37, 77) z (z ** d) % m z < m 01#61#69#26#46#58#52 z (z ** e) % m 01#61#69#26#46#58#52 (d * e) % φ(m) = 1

19 37 Korrektheit des RSA-Verfahrens Behauptung: Seien (d, m) und (e, m) ein öffentlicher und zum RSA- Verfahren. Sei z eine natürliche Zahl mit z < m. Dann gilt: (z d % m) e % m = z Beweis: Nach den Vorgaben zur Schlüsselerzeugung gilt: m = p q; ϕ(m) = (p-1) (q-1); (d e) % ϕ(m) = 1. Da (d e) % ϕ(m) = 1, gibt es eine natürliche Zahl k mit d e = k ϕ(m) + 1. Nach dem Satz (s. u.) gilt dann (z k ϕ(m) + 1 ) % m = z. Hiermit folgt jetzt: (z d % m) e % m = (z d ) e % m = (z d e ) % m = (z k ϕ(m) + 1 ) % m = z Satz Seien p und q Primzahlen. Dann gilt für alle natürlichen Zahlen z und alle natürlichen Zahlen k: z k(p-1)(q-1)+1 % (pq) = z 38 Sicherheit des RSA-Verfahrens Bedingung: Die Sicherheit hängt davon ab, ob man in angemessener Zeit den Bestandteil m des öffentlichen Schlüssels in seine Primfaktoren zerlegen kann. Vorbereitung: Wähle zwei verschiedene Primzahlen p und q. Berechne m = p*q. Berechne φ(m) = (p-1)*(q-1). Wähle eine Zahl d, die teilerfremd zu φ(m) ist. Berechne e so, dass (d*e) % φ(m) = 1 ist. ("Vernichte p, q, φ(m).") Schlüssel: Der öffentliche Schlüssel ist (d, m). Der private Schlüssel ist (e, m). Beispiel: p = 7; q = 11 m = 77 φ(m) = 60 z. B. d = 13 e = 37 (13, 77) (37, 77)

20 39 Sicherheit des RSA-Verfahrens Sicherheit: Bis heute gibt es keine schnellen Algorithmen, um eine Zahl in ihre Primfaktoren zu zerlegen. Das RSA-Verfahren ist bei groß gewählten Primzahlen recht sicher, da man aus dem öffentlichen Schlüssel den privaten Schlüssel bisher nicht in angemessener Zeit bestimmen kann. 40 Aufgabe Gibt es eigentlich genug Primzahlen in der gewünschten Größenordnung? Untersuchen Sie, wie viele Primzahlen es bis zu einer gegebenen Zahl x gibt.

21 41 Informationen Gibt es genug Primzahlen in der gewünschten Größenordnung? Für eine gegebene Zahl x gibt es ungefähr x/ln(x) Primzahlen, die kleiner als x sind. Man wählt heute Primzahlen, die mit mindestens 512 Bit dargestellt werden. Das sind Zahlen in der Größenordnung Da /ln(2 512 ) etwa die Größenordnung hat (das ist eine Zahl mit 150 Dezimalstellen), sollten genügend Primzahlen für die Verschlüsselung zur Verfügung stehen. Wie bestimmt man große Primzahlen? Zur Bestimmung großer Primzahlen geht man wie folgt vor. Man erzeugt eine Zufallszahl im gewünschten Größenbereich und testet, ob es sich um eine Primzahl handelt. Solche Primzahltests kann man sehr schnell mit geeigneten Verfahren durchführen. Da es sehr viele Primzahlen im gewünschten Bereich gibt (s. o.), muss man nicht in der Regel allzu viele Zahlen testen. 42 Fazit Algorithmen spielen bei der Entwicklung von Chiffriersystemen eine große Rolle. Im Fall des RSA-Verfahrens benötigt man einerseits gute Algorithmen, um das Verfahren überhaupt effizient durchführen zu können (z. B. schnell ein modulares Inverses bestimmen; schnell eine modulare Potenz bestimmen). Andererseits ist das Verfahren so angelegt, dass bestimmte Operation mit den bisher bekannten Algorithmen mit vertretbarem Rechenaufwand nicht durchgeführt werden können.

22 43 Literaturhinweise Folgende Materialien wurden hier benutzt: H. Witten, R.-H. Schulz: RSA & Co. in der Schule, Teil1. LOG IN 140 S. 45 ff H. Witten, R.-H. Schulz: RSA & Co. in der Schule, Teil2. LOG IN 143 S. 50 ff K. Merkert:

4 Kryptologie. Übersicht

4 Kryptologie. Übersicht 4 Kryptologie Übersicht 4.1 Der erweiterte euklidische Algorithmus................................ 38 4.2 Rechnen mit Restklassen modulo p................................... 39 4.3 Der kleine Satz von

Mehr

Aufgabe der Kryptografie

Aufgabe der Kryptografie Aufgabe der Kryptografie Eve möchte die Unterhaltung mithören und/oder ausgetauschte Informationen ändern. Alice & Bob kommunzieren über einen unsicheren Kanal. Alice & Bob nutzen Verschlüsselung und digitale

Mehr

Kapitel 2. Elementare Zahlentheorie Primfaktorzerlegung

Kapitel 2. Elementare Zahlentheorie Primfaktorzerlegung Kapitel 2. Elementare Zahlentheorie 2.1. Primfaktorzerlegung Menge der ganzen Zahlen Z = {..., 3, 2, 1, 0, 1, 2, 3,...} Addition Inverse Multiplikation Z Z Z, Z Z, Z Z Z, (a, b) a + b a a (a, b) a b Ausgezeichnete

Mehr

3 Public-Key-Kryptosysteme

3 Public-Key-Kryptosysteme Stand: 05.11.2013 Vorlesung Grundlagen und Methoden der Kryptographie Dietzfelbinger 3 Public-Key-Kryptosysteme 3.1 Verschlüsselung von Nachrichten Wir betrachten ganz einfache Kommunikationsszenarien.

Mehr

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

VI.3 RSA. - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman. - vorgestellt erstes Public-Key Verschlüsselungsverfahren VI.3 RSA - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman - vorgestellt 1977 - erstes Public-Key Verschlüsselungsverfahren - auch heute noch das wichtigste Public-Key Verfahren 1

Mehr

$Id: ring.tex,v /05/03 15:13:26 hk Exp $

$Id: ring.tex,v /05/03 15:13:26 hk Exp $ $Id: ring.tex,v 1.13 2012/05/03 15:13:26 hk Exp $ 3 Ringe 3.1 Der Ring Z m In der letzten Sitzung hatten wir die sogenannten Ringe eingeführt, dies waren Mengen A versehen mit einer Addition + und einer

Mehr

Kapitel 3 Elementare Zahletheorie

Kapitel 3 Elementare Zahletheorie Kapitel 3 Elementare Zahletheorie 89 Kapitel 3.1 Ganze Zahlen, Gruppen und Ringe 90 Die ganzen Zahlen Menge der ganzen Zahlen Z={..., 3, 2, 1,0,1,2,3,...} Es gibt zwei Operationen Addition: Z Z Z, (a,b)

Mehr

Diskrete Strukturen Kapitel 5: Algebraische Strukturen (RSA-Verfahren)

Diskrete Strukturen Kapitel 5: Algebraische Strukturen (RSA-Verfahren) WS 2016/17 Diskrete Strukturen Kapitel 5: Algebraische Strukturen (RSA-Verfahren) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_16

Mehr

Proseminar Datensicherheit & Versicherungsmathematik RSA-Verfahren

Proseminar Datensicherheit & Versicherungsmathematik RSA-Verfahren Proseminar Datensicherheit & Versicherungsmathematik RSA-Verfahren Herwig Stütz 2007-11-23 1 Inhaltsverzeichnis 1 Einführung 2 2 Das RSA-Verfahren 2 2.1 Schlüsselerzeugung.................................

Mehr

3.5 Kryptographie - eine Anwendung der Kongruenzrechnung

3.5 Kryptographie - eine Anwendung der Kongruenzrechnung 1 3.5 Kryptographie - eine Anwendung der Kongruenzrechnung Das Wort Kryptographie leitet sich aus der griechischen Sprache ab, nämlich aus den beiden Worten κρυπτ oς(kryptos)=versteckt, geheim und γραϕɛιν(grafein)=schreiben.

Mehr

WS 2013/14. Diskrete Strukturen

WS 2013/14. Diskrete Strukturen WS 2013/14 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws1314

Mehr

Zahlentheorie, Arithmetik und Algebra I. Felix Teufel Hallo Welt! -Seminar - LS 2

Zahlentheorie, Arithmetik und Algebra I. Felix Teufel Hallo Welt! -Seminar - LS 2 Zahlentheorie, Arithmetik und Algebra I Felix Teufel 26.07.2017 Hallo Welt! -Seminar - LS 2 Überblick Modulare Arithmetik Größter gemeinsamer Teiler Primzahlen Eulersche Φ-Funktion RSA Quellen 26.07.2017

Mehr

3: Primzahlen. 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen

3: Primzahlen. 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen 3: Primzahlen 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen Definition 40 (Teiler, Vielfache, Primzahlen, zusammengesetzte Zahlen) Seien a, b N. a ist ein Teiler von b ( a b ), falls es ein k N gibt

Mehr

3: Zahlentheorie / Primzahlen

3: Zahlentheorie / Primzahlen Stefan Lucks Diskrete Strukturen (WS 2009/10) 96 3: Zahlentheorie / Primzahlen 3: Zahlentheorie / Primzahlen Stefan Lucks Diskrete Strukturen (WS 2009/10) 97 Definition 37 (Teiler, Vielfache, Primzahlen,

Mehr

Von den ganzen Zahlen zu GF(p)

Von den ganzen Zahlen zu GF(p) Endliche Körper p. 1 Von den ganzen Zahlen zu GF(p) Aus dem Ring aller ganzen Zahlen gewinnt man endliche Körper wie folgt: Man führt das Rechnen modulo n ein (modulare Arithmetik) und erhält so endliche

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 11 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität

Mehr

Bsp: Die kleinsten Carmichael-Zahlen sind 561, 1105, 1729, Es gibt unendlich viele Carmichael-Zahlen (Beweis 1994).

Bsp: Die kleinsten Carmichael-Zahlen sind 561, 1105, 1729, Es gibt unendlich viele Carmichael-Zahlen (Beweis 1994). Primzahltest Wir wollen testen, ob eine gegebene Zahl n eine Primzahl ist Effizienter Algorithmus zum Faktorisieren ist unbekannt Kontraposition des Kleinen Satzes von Fermat liefert: Falls a n 1 1 mod

Mehr

Inhalt 2007W. Vorlesung im 2007W

Inhalt 2007W. Vorlesung im 2007W Institut für Algebra Johannes Kepler Universität Linz Vorlesung im http://www.algebra.uni-linz.ac.at/students/win/ml Inhalt Definierende Eigenschaften 0 ist eine natürliche Zahl; Zu jeder natürlichen Zahl

Mehr

2008W. Vorlesung im 2008W Institut für Algebra Johannes Kepler Universität Linz

2008W. Vorlesung im 2008W   Institut für Algebra Johannes Kepler Universität Linz Mathematik Institut für Algebra Johannes Kepler Universität Linz Vorlesung im http://www.algebra.uni-linz.ac.at/students/win/ml Inhalt Definierende Eigenschaften Definition 0 ist eine natürliche Zahl;

Mehr

Anwendungen der Linearen Algebra: Kryptologie

Anwendungen der Linearen Algebra: Kryptologie Anwendungen der Linearen Algebra: Kryptologie Philip Herrmann Universität Hamburg 5.12.2012 Philip Herrmann (Universität Hamburg) AnwLA: Kryptologie 1 / 28 No one has yet discovered any warlike purpose

Mehr

Interim. Kapitel Einige formale Definitionen

Interim. Kapitel Einige formale Definitionen Kapitel 1 Interim Da ich keine Infos über Titel und Nummerierungen anderer Kapitel dieser Vorlesung habe, nenne ich dies einfach mal Kapitel 1. 17.11.04 1.1 Einige formale Definitionen Wir rekapitulieren

Mehr

Vorlesung Mathematik 2 für Informatik

Vorlesung Mathematik 2 für Informatik Vorlesung Mathematik 2 für Informatik Inhalt: Modulare Arithmetik Lineare Algebra Vektoren und Matrizen Lineare Gleichungssysteme Vektorräume, lineare Abbildungen Orthogonalität Eigenwerte und Eigenvektoren

Mehr

Das RSA Verfahren. Die Mathematik von RSA. Ganzzahl Arithmetik. Die Mathematik des RSA-Verfahrens

Das RSA Verfahren. Die Mathematik von RSA. Ganzzahl Arithmetik. Die Mathematik des RSA-Verfahrens Das RSA Verfahren Das RSA-Verfahren beruht auf Modulo-Arithmetik mit riesigen ganzen Zahlen und der Berechnung modularer Potenzen bei der Verschlüsselung. Die genaue Mathematik wird in den folgenden Kapiteln

Mehr

Algorithmische Kryptographie

Algorithmische Kryptographie Algorithmische Kryptographie Walter Unger Lehrstuhl für Informatik I 16. Februar 2007 Public-Key-Systeme: Rabin 1 Das System nach Rabin 2 Grundlagen Körper Endliche Körper F(q) Definitionen Quadratwurzel

Mehr

6.2 Asymmetrische Verschlüsselung

6.2 Asymmetrische Verschlüsselung 6.2 Asymmetrische Verschlüsselung (asymmetric encryption, public-key encryption) Prinzip (Diffie, Hellman, Merkle 1976-78): Statt eines Schlüssels K gibt es ein Schlüsselpaar K E, K D zum Verschlüsseln

Mehr

Kryptographie. Teilnehmer: Gruppenleiter: Humboldt-Universität zu Berlin.

Kryptographie. Teilnehmer: Gruppenleiter: Humboldt-Universität zu Berlin. Kryptographie Teilnehmer: Kevin Huber Philippe Gruse Vera Koldewitz Philipp Jakubahs Julian Zimmert Maximilian Werk Hermann-Hesse-Oberschule Heinrich-Hertz-Oberschule Gruppenleiter: Ulf Kühn Humboldt-Universität

Mehr

Literatur. ISM SS 2018 Teil 3/Restklassen

Literatur. ISM SS 2018 Teil 3/Restklassen Literatur [3-1] Beutelspacher, A.; Schwenk, J.; Wolfenstetter, K.-D.: Moderne Verfahren der Kryptographie. 4. Auflage, Vieweg 2001 [3-2] Schmeh, Klaus: Kryptografie. dpunkt, 5. Auflage, 2013 [3-3] Hoffmann,

Mehr

Asymmetrische Algorithmen

Asymmetrische Algorithmen Asymmetrische Algorithmen Abbildung 9. Leonhard Euler Leonhard Euler, geboren am 15. April 1707 in Basel, gestorben am 18. September 1783 in Sankt Petersburg, war einer der produktivsten Mathematiker aller

Mehr

Public Key Kryptographie

Public Key Kryptographie 3. Juni 2006 1 Algorithmen für Langzahlen 1 RSA 1 Das Rabin-Kryptosystem 1 Diskrete Logarithmen Grundlagen der PK Kryptographie Bisher: Ein Schlüssel für Sender und Empfänger ( Secret-Key oder symmetrische

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

3. Diskrete Mathematik

3. Diskrete Mathematik Diophantos von Alexandria um 250 Georg Cantor 1845-1918 Pythagoras um 570 v. Chr Pierre de Fermat 1607/8-1665 Seite 1 Inhalt der Vorlesung Teil 3: Diskrete Mathematik 3.1 Zahlentheorie: Abzählbarkeit,

Mehr

Der RSA-Algorithmus. 2. Anschließend ist n = p q und ϕ (n) = (p 1) (q 1) zu berechnen.

Der RSA-Algorithmus. 2. Anschließend ist n = p q und ϕ (n) = (p 1) (q 1) zu berechnen. Kapitel 4 Der RSA-Algorithmus Der RSA-Algorithmus ist das heute bekannteste Verfahren aus der Familie der Public-Key-Kryptosysteme. Es wurde 1978 der Öffentlichkeit vorgestellt und gilt bis heute als der

Mehr

Primzahlen. Herbert Koch Mathematisches Institut Universität Bonn Die Primfaktorzerlegung. a = st

Primzahlen. Herbert Koch Mathematisches Institut Universität Bonn Die Primfaktorzerlegung. a = st Primzahlen Herbert Koch Mathematisches Institut Universität Bonn 12.08.2010 1 Die Primfaktorzerlegung Wir kennen die natürlichen Zahlen N = 1, 2,..., die ganzen Zahlen Z, die rationalen Zahlen (Brüche

Mehr

Lösungen der Aufgaben

Lösungen der Aufgaben Lösungen der Aufgaben Aufgabe 1.3.1 Es gibt 42 mögliche Verschlüsselungen. Aufgabe 2.3.4 Ergebnisse sind 0, 4 und 4 1 = 4. Aufgabe 2.3.6 Da in Z 9 10 = 1 ist, erhalten wir x = c 0 + + c m = c 0 + + c m.

Mehr

Verschlüsselung durch Exponentiation (Pohlig, Hellman, 1976)

Verschlüsselung durch Exponentiation (Pohlig, Hellman, 1976) Verschlüsselung durch Exponentiation (Pohlig, Hellman, 1976) p : eine (grosse) Primzahl e : Zahl 0 < e < p mit ggt(e, p 1) = 1 d Inverses von e in Z p 1, dh d e 1 mod p 1 (= φ(p)) M : numerisch codierter

Mehr

Ganzzahlige Division mit Rest

Ganzzahlige Division mit Rest Modulare Arithmetik Slide 1 Ganzzahlige Division mit Rest Für a,b Æ mit a b gibt es stets eine Zerlegung von a der Form a = q b+r mit 0 r b 1. Hierbei gilt q = a b (salopp formuliert: b passt q-mal in

Mehr

Vorkurs für. Studierende in Mathematik und Physik. Einführung in Kryptographie Kurzskript 2015

Vorkurs für. Studierende in Mathematik und Physik. Einführung in Kryptographie Kurzskript 2015 Vorkurs für Studierende in Mathematik und Physik Einführung in Kryptographie Kurzskript 2015 Felix Fontein Institut für Mathematik Universität Zürich Winterthurerstrasse 190 8057 Zürich 11. September 2015

Mehr

Übung GSS Blatt 6. SVS Sicherheit in Verteilten Systemen

Übung GSS Blatt 6. SVS Sicherheit in Verteilten Systemen Übung GSS Blatt 6 SVS Sicherheit in Verteilten Systemen 1 Einladung zum SVS-Sommerfest SVS-Sommerfest am 12.07.16 ab 17 Uhr Ihr seid eingeladen! :-) Es gibt Thüringer Bratwürste im Brötchen oder Grillkäse

Mehr

Kryptographie und Komplexität

Kryptographie und Komplexität Kryptographie und Komplexität Einheit 4 Public Key Kryptographie mit RSA 1. Ver- und Entschlüsselung 2. Schlüsselerzeugung und Primzahltests 3. Angriffe auf das RSA Verfahren 4. Sicherheit von RSA Probleme

Mehr

Algorithmentheorie Randomisierung

Algorithmentheorie Randomisierung Algorithmentheorie 03 - Randomisierung Prof. Dr. S. Albers Randomisierung Klassen von randomisierten Algorithmen Randomisierter Quicksort Randomisierter Primzahltest Kryptographie 2 1. Klassen von randomisierten

Mehr

2: Restklassen 2.1: Modulare Arithmetik

2: Restklassen 2.1: Modulare Arithmetik 2: Restklassen 2.1: Modulare Arithmetik Uhr: Stunden mod 24, Minuten mod 60, Sekunden mod 60,... Rechnerarithmetik: mod 2 w, w {8, 16, 32, 64} Prüfziffern mod 10 oder mod 11... 71 S. Lucks Diskr Strukt.

Mehr

Zahlen. Vorlesung Mathematische Strukturen. Sommersemester Zahlen. Zahlen

Zahlen. Vorlesung Mathematische Strukturen. Sommersemester Zahlen. Zahlen Vorlesung Mathematische Strukturen Sommersemester 2016 Prof. Barbara König Übungsleitung: Christine Mika & Dennis Nolte Division mit Rest Seien a, b Z zwei ganze mit a 0. Dann gibt es eindeutig bestimmte

Mehr

Kleiner Fermatscher Satz, Chinesischer Restsatz, Eulersche '-Funktion, RSA

Kleiner Fermatscher Satz, Chinesischer Restsatz, Eulersche '-Funktion, RSA Kleiner Fermatscher Satz, Chinesischer Restsatz, Eulersche '-Funktion, RSA Manfred Gruber http://www.lrz-muenchen.de/~gruber SS 2009, KW 15 Kleiner Fermatscher Satz Satz 1. Sei p prim und a 2 Z p. Dann

Mehr

Literatur. ITSec SS 2017 Teil 7/Restklassen

Literatur. ITSec SS 2017 Teil 7/Restklassen Literatur [7-1] Beutelspacher, A.; Schwenk, J.; Wolfenstetter, K.-D.: Moderne Verfahren der Kryptographie. 4. Auflage, Vieweg 2001 [7-2] Schmeh, Klaus: Kryptografie. dpunkt, 5. Auflage, 2013 [7-3] Hoffmann,

Mehr

Zufallsprimzahlen und eine Revolution in der Kryptographie Stefan Edelkamp

Zufallsprimzahlen und eine Revolution in der Kryptographie Stefan Edelkamp Zufallsprimzahlen und eine Revolution in der Kryptographie Stefan Edelkamp Fakultät für Mathematik und Informatik Universität of Bremen Übersicht des Vortrags 1 Einfache Kryptosysteme 2 Einmalschlüssel

Mehr

Diskreter Logarithmus und Primkörper

Diskreter Logarithmus und Primkörper Diskreter Logarithmus und Primkörper Neben dem RSA-Verfahren ist die ElGamal-Verschlüsselung 8 ein weiteres klassische Public-Key-Verfahren, welches von Taher ElGamal auf der Konferenz CRYPTO 84 vorgestellt

Mehr

Kryptographie und Komplexität

Kryptographie und Komplexität Kryptographie und Komplexität Einheit 5.2 ElGamal Systeme 1. Verschlüsselungsverfahren 2. Korrektheit und Komplexität 3. Sicherheitsaspekte Das ElGamal Verschlüsselungsverfahren Public-Key Verfahren von

Mehr

INFORMATIONSSICHERHEIT

INFORMATIONSSICHERHEIT Fakultät Informatik/Mathematik Professur Informatikrecht/Informationssysteme INFORMATIONSSICHERHEIT Prof. Dr. Andreas Westfeld Dresden, Wintersemester 2017/2018 Die revolutionäre Idee Diffie und Hellman

Mehr

Regine Schreier

Regine Schreier Regine Schreier 20.04.2016 Kryptographie Verschlüsselungsverfahren Private-Key-Verfahren und Public-Key-Verfahren RSA-Verfahren Schlüsselerzeugung Verschlüsselung Entschlüsselung Digitale Signatur mit

Mehr

n ϕ n

n ϕ n 1 3. Teiler und teilerfremde Zahlen Euler (1707-1783, Gymnasium und Universität in Basel, Professor für Physik und Mathematik in Petersburg und Berlin) war nicht nur einer der produktivsten Mathematiker

Mehr

11. Das RSA Verfahren

11. Das RSA Verfahren Chr.Nelius: Zahlentheorie (SoSe 2017) 53 11. Das RSA Verfahren Bei einer asymmetrischen Verschlüsselung lässt sich der Schlüssel zum Entschlüsseln nicht aus dem Schlüssel zum Verschlüsseln bestimmen und

Mehr

Primzahlen im Schulunterricht wozu?

Primzahlen im Schulunterricht wozu? Primzahlen im Schulunterricht wozu? Franz Pauer Institut für Fachdidaktik und Institut für Mathematik Universität Innsbruck Tag der Mathematik Graz 6. Februar 2014 Einleitung Eine (positive) Primzahl ist

Mehr

Kryptographie - eine mathematische Einführung

Kryptographie - eine mathematische Einführung Kryptographie - eine mathematische Einführung Rosa Freund 28. Dezember 2004 Überblick Grundlegende Fragestellungen Symmetrische Verschlüsselung: Blockchiffren, Hashfunktionen

Mehr

IT-Security. Teil 7: Restklassen

IT-Security. Teil 7: Restklassen IT-Security Teil 7: Restklassen 20.04.17 1 Literatur [7-1] Beutelspacher, A.; Schwenk, J.; Wolfenstetter, K.-D.: Moderne Verfahren der Kryptographie. 4. Auflage, Vieweg 2001 [7-2] Schmeh, Klaus: Kryptografie.

Mehr

RSA Parameter öffentlich: N = pq mit p, q prim und e Z RSA Parameter geheim: d Z φ(n)

RSA Parameter öffentlich: N = pq mit p, q prim und e Z RSA Parameter geheim: d Z φ(n) RSA Parameter { öffentlich: N = pq mit p, q prim und e Z RSA Parameter φ(n) geheim: d Z φ(n) mit ed = 1 mod φ(n). Satz RSA Parameter Generierung RSA-Parameter (N, e, d) können in Zeit O(log 4 N) generiert

Mehr

Kryptographie und Komplexität

Kryptographie und Komplexität Kryptographie und Komplexität Einheit 4 Public Key Kryptographie mit RSA 1. Ver- und Entschlüsselung 2. Schlüsselerzeugung und Primzahltests 3. Angriffe auf das RSA Verfahren 4. Sicherheit von RSA Probleme

Mehr

RSA-Verfahren Schnelle Ver- / Entschlüsselung Zusammenhang mit dem Faktorisierungsproblem. RSA-Verfahren. Herwig Stütz

RSA-Verfahren Schnelle Ver- / Entschlüsselung Zusammenhang mit dem Faktorisierungsproblem. RSA-Verfahren. Herwig Stütz 2007-11-23 Überblick 1 2 Schnelle modulare Exponentiation Chinesischer Restsatz 3 Allgemeines Public-Key Methode Rivest, Shamir und Adleman 1977 Sicherheit des Verfahrens beruht auf Schwierigkeit der Primfaktorenzerlegung

Mehr

Mathematische Grundlagen der Kryptografie (1321) SoSe 06

Mathematische Grundlagen der Kryptografie (1321) SoSe 06 Mathematische Grundlagen der Kryptografie (1321) SoSe 06 Klausur am 19.08.2006: Lösungsvorschläge zu den Aufgaben zu Aufgabe I.1 (a) Das numerische Äquivalent zu KLAUSUR ist die Folge [10, 11, 0, 20, 18,

Mehr

INFORMATIONSSICHERHEIT

INFORMATIONSSICHERHEIT Fakultät Informatik/Mathematik Professur Informatikrecht/Informationssysteme Modulare Reduktion INFORMATIONSSICHERHEIT Prof. Dr. Andreas Westfeld Die basiert auf einer festen ganzen Zahl m > 1, die Modulus

Mehr

IT-Sicherheit Kapitel 4 Public Key Algorithmen

IT-Sicherheit Kapitel 4 Public Key Algorithmen IT-Sicherheit Kapitel 4 Public Key Algorithmen Dr. Christian Rathgeb Sommersemester 2014 1 Einführung Der private Schlüssel kann nicht effizient aus dem öffentlichen Schlüssel bestimmt werden bzw. die

Mehr

IT-Sicherheitsmanagement. Teil 3: Restklassen

IT-Sicherheitsmanagement. Teil 3: Restklassen IT-Sicherheitsmanagement Teil 3: Restklassen 26.10.18 1 Literatur I [3-1] Beutelspacher, A.; Schwenk, J.; Wolfenstetter, K.-D.: Moderne Verfahren der Kryptographie. 4. Auflage, Vieweg 2001 [3-2] Schmeh,

Mehr

Algebraische Grundlagen

Algebraische Grundlagen Algebraische Grundlagen Steffen Reith Steffen.Reith@hs-rm.de Hochschule RheinMain 21. Januar 2015 Steffen Reith Algebraische Grundlagen 21. Januar 2015 1 / 17 Grundlagen & Geschichte In der Algebra werden

Mehr

Diskrete Mathematik 1

Diskrete Mathematik 1 Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May M. Ritzenhofen, M. Mansour Al Sawadi, A. Meurer Lösungsblatt zur Vorlesung Diskrete Mathematik 1 WS 008/09 Blatt

Mehr

Beispiel bestimme x Z mit. es gilt also. gilt dann. für x = 1 i k c i (M/m i ) v i gilt. y c i mod m i (1 i k), nämlich y = x mod M

Beispiel bestimme x Z mit. es gilt also. gilt dann. für x = 1 i k c i (M/m i ) v i gilt. y c i mod m i (1 i k), nämlich y = x mod M Chinesischer Restesatz einfachste Form p, q Z >0 mit ggt(p, q) = 1 Bézout-Koeffizienten u, v Z p u + q v = 1 also p u 1 mod q und q v 1 mod p für b, c Z sei x = c p u + b q v, dann gilt für y Z gilt y

Mehr

Public-Key Kryptographie mit dem RSA Schema. Torsten Büchner

Public-Key Kryptographie mit dem RSA Schema. Torsten Büchner Public-Key Kryptographie mit dem RSA Schema Torsten Büchner 7.12.2004 1.Einleitung 1. symmetrische-, asymmetrische Verschlüsselung 2. RSA als asymmetrisches Verfahren 2.Definition von Begriffen 1. Einwegfunktionen

Mehr

Das RSA Kryptosystem

Das RSA Kryptosystem Kryptografie Grundlagen RSA Institut für Mathematik Technische Universität Berlin Kryptografie Grundlagen RSA mit geheimem mit öffentlichem Schlüssel Realisierung Kryptografie mit geheimem Schlüssel Alice

Mehr

Kapitel III Ringe und Körper

Kapitel III Ringe und Körper Kapitel III Ringe und Körper 1. Definitionen und Beispiele Definition 117 Eine Algebra A = S,,, 0, 1 mit zwei zweistelligen Operatoren und heißt ein Ring, falls R1. S,, 0 eine abelsche Gruppe mit neutralem

Mehr

3. Vortrag: Das RSA-Verschlüsselungsverfahren

3. Vortrag: Das RSA-Verschlüsselungsverfahren Westfälische Wilhelms-Universität Münster Mathematik Sommersemester 2017 Seminar: Verschlüsselungs- und Codierungstheorie Leitung: Thomas Timmermann 3. Vortrag: Das RSA-Verschlüsselungsverfahren Hendrik

Mehr

Funktionsweise des. RSA-Verfahrens

Funktionsweise des. RSA-Verfahrens Funktionsweise des RSA-Verfahrens CrypTool-Team November 2010 Kryptografie wozu? Das Verschlüsseln von Nachrichten hat in der Geschichte der Menschheit schon immer eine wichtige Rolle gespielt. In jedem

Mehr

Kommunikationsalgorithmus RSA

Kommunikationsalgorithmus RSA Kommunikationsalgorithmus RSA Herr Maue Ergänzungsfach Informatik Neue Kantonsschule Aarau Früjahrsemester 2015 24.04.2015 EFI (Hr. Maue) Kryptographie 24.04.2015 1 / 26 Programm heute 1. Verschlüsselungsverfahren

Mehr

Das RSA-Verfahren. Proseminar Kryptographische Protokolle SS Armin Litzel

Das RSA-Verfahren. Proseminar Kryptographische Protokolle SS Armin Litzel in der Praxis Proseminar Kryptographische Protokolle SS 2009 5.5.2009 in der Praxis Gliederung 1 Grundlegendes über RSA 2 in der Praxis Allgemeine Vorgehensweise zur Verschlüsselung Signieren mit RSA 3

Mehr

Stichpunktezettel fürs Tutorium

Stichpunktezettel fürs Tutorium Stichpunktezettel fürs Tutorium Moritz und Dorian 18. November 2009 1 Chomskys Erstschlag 1.1 Reguläre Sprachen und Grammatiken Aufgabe 1. Wie sieht die Sprache zu den folgenden Grammatiken aus? 1. G =

Mehr

Praktisch modulo n rechnen

Praktisch modulo n rechnen Mathematik I für Informatiker Das Lemma von Euler-Fermat p. 1 Praktisch modulo n rechnen Addition und Multiplikation modulo n sind auch dann algorithmisch kein großes Problem, wenn mit großen Zahlen gerechnet

Mehr

Kapitel 2: Zahlentheoretische Algorithmen Gliederung

Kapitel 2: Zahlentheoretische Algorithmen Gliederung Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen

Mehr

IT-Security. Teil 9: Asymmetrische Verschlüsselung

IT-Security. Teil 9: Asymmetrische Verschlüsselung IT-Security Teil 9: Asymmetrische Verschlüsselung 20.09.18 1 Literatur [9-1] Beutelspacher, A.; Schwenk, J.; Wolfenstetter, K.-D.: Moderne Verfahren der Kryptographie. 4. Auflage, Vieweg 2001 [9-2] Schmeh,

Mehr

2011W. Vorlesung im 2011W Institut für Algebra Johannes Kepler Universität Linz

2011W. Vorlesung im 2011W  Institut für Algebra Johannes Kepler Universität Linz und Was ist? Mathematik und Institut für Algebra Johannes Kepler Universität Linz Vorlesung im http://www.algebra.uni-linz.ac.at/students/win/ml und Was ist? Inhalt Was ist? und Was ist? Das ist doch logisch!

Mehr

IT-Security. Teil 13: Asymmetrische Verschlüsselung

IT-Security. Teil 13: Asymmetrische Verschlüsselung IT-Security Teil 13: Asymmetrische Verschlüsselung 09.05.17 1 Literatur [13-1] Beutelspacher, A.; Schwenk, J.; Wolfenstetter, K.-D.: Moderne Verfahren der Kryptographie. 4. Auflage, Vieweg 2001 [13-2]

Mehr

Kurzskript MfI:AGS WS 2018/19 Teil II: Gruppen / Teil III: Ringe 34

Kurzskript MfI:AGS WS 2018/19 Teil II: Gruppen / Teil III: Ringe 34 Kurzskript MfI:AGS WS 2018/19 Teil II: Gruppen / Teil III: Ringe 34 Satz 4.2.11 (Chinesischer Restsatz, Ring-Version) Sind N teilerfremd (d.h. ggt( ) =1), so ist die Abbildung ein Ring-Isomorphismus. :

Mehr

Kapitel 4. Kapitel 4 Restklassen (die modulo-rechnung)

Kapitel 4. Kapitel 4 Restklassen (die modulo-rechnung) Restklassen (die modulo-rechnung) Inhalt 4.1 4.1 Was Was sind sind Restklassen? [0], [0],[1], [1],...,...,[n 1] 4.2 4.2 Addition von von Restklassen [5] [5] + [7] [7] = [3] [3] 4.3 4.3 Multiplikation von

Mehr

Zahlentheorie. Stefan Takacs Linz, am 2. Juni 2004

Zahlentheorie. Stefan Takacs Linz, am 2. Juni 2004 Zahlentheorie Anna Rieger 0355556 Stefan Takacs 0356104 Daniela Weberndorfer 0355362 Linz, am 2. Juni 2004 Zusammenfassung Die vorliegende Arbeit über die grundlegenden Sätze der Zahlentheorie beschäftigt

Mehr

Wiederholung. Symmetrische Verfahren: klassische Verfahren / grundlegende Prinzipien: Substitution, Transposition, One-Time-Pad DES AES

Wiederholung. Symmetrische Verfahren: klassische Verfahren / grundlegende Prinzipien: Substitution, Transposition, One-Time-Pad DES AES Wiederholung Symmetrische Verfahren: klassische Verfahren / grundlegende Prinzipien: Substitution, Transposition, One-Time-Pad DES AES Mathematische Grundlagen: algebraische Strukturen: Halbgruppe, Monoid,

Mehr

Kap. II: Kryptographie

Kap. II: Kryptographie Chr.Nelius: Zahlentheorie (SoSe 2017) 39 Kap. II: Kryptographie 9. Allgemeines und Beispiele Was ist Kryptographie? Die Kryptographie handelt von der Verschlüsselung (Chiffrierung) von Nachrichten zum

Mehr

Vorlesung 7. Tilman Bauer. 25. September 2007

Vorlesung 7. Tilman Bauer. 25. September 2007 Vorlesung 7 Universität Münster 25. September 2007 El. In Vorlesung 4 haben wir Modulo-Arithmetik behandelt. Definition Sei n N 1. Auf Z ist eine Äquivalenzrelation Kongruenz modulo n definiert durch x

Mehr

El. Zahlentheorie I: Der kleine Satz von Fermat

El. Zahlentheorie I: Der kleine Satz von Fermat Vorlesung 7 Universität Münster 25. September 2007 El. In Vorlesung 4 haben wir Modulo-Arithmetik behandelt. Definition Sei n N 1. Auf Z ist eine Äquivalenzrelation Kongruenz modulo n definiert durch x

Mehr

Probabilistische Primzahltests

Probabilistische Primzahltests 23.01.2006 Motivation und Überblick Grundsätzliches Vorgehen Motivation und Überblick Als Primzahltest bezeichnet man ein mathematisches Verfahren, mit dem ermittelt wird, ob eine gegebene Zahl eine Primzahl

Mehr

Beispiel für simultane Kongruenz

Beispiel für simultane Kongruenz Beispiel für simultane Kongruenz Jetzt wollen wir das Lemma der letzten Einheit anwenden. Wenn man eine Zahl sucht, die kongruent zu y modulo m und kongruent zu z modulo n ist, so nehme man zam + ybn wobei

Mehr

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

Kryptograhie Wie funktioniert Electronic Banking? Kurt Mehlhorn Adrian Neumann Max-Planck-Institut für Informatik Kryptograhie Wie funktioniert Electronic Banking? Kurt Mehlhorn Adrian Neumann Max-Planck-Institut für Informatik Übersicht Zwecke der Krytographie Techniken Symmetrische Verschlüsselung( One-time Pad,

Mehr

IT-Security. Teil 8b: Rechnen mit beliebiger Genauigkeit Algorithmen

IT-Security. Teil 8b: Rechnen mit beliebiger Genauigkeit Algorithmen IT-Security Teil 8b: Rechnen mit beliebiger Genauigkeit Algorithmen 06.06.17 1 Überblick Potenzieren Quadrieren Euklid'scher Algorithmus In den meisten Fällen wird nur mit positiven Werten gerechnet. Bei

Mehr

Grundlagen der Arithmetik und Zahlentheorie

Grundlagen der Arithmetik und Zahlentheorie Grundlagen der Arithmetik und Zahlentheorie 1.0 Teilbarkeit In diesem Abschnitt werden wir einerseits die ganzen Zahlen an sich studieren und dabei besonders wichtige Zahlen, die Primzahlen, entsprechend

Mehr

Mersennesche Primzahlen

Mersennesche Primzahlen Mersennesche Primzahlen Michael E. Pohst Technische Universität Berlin Die Zahlen von Mersenne Zu einer natürlichen Zahl n wird die zugehörige Mersennezahl M n als M n = 2 n 1 definiert. Für n = 2, 3,

Mehr

Elementare Zahlentheorie II

Elementare Zahlentheorie II Schülerzirel Mathemati Faultät für Mathemati. Universität Regensburg Elementare Zahlentheorie II Der Satz von Euler-Fermat und die RSA-Verschlüsselung Die Mathemati ist die Königin der Wissenschaften,

Mehr

mit ganzen Zahlen 1.4 Berechnen Sie: a b c d e

mit ganzen Zahlen 1.4 Berechnen Sie: a b c d e 1 Rechnen mit ganzen Zahlen Führen Sie die nachfolgenden Berechnungen aus: 1.1 a. 873 112 1718 157 3461 + b. 1578 9553 7218 212 4139 + 1.3 Berechnen Sie: a. 34 89 b. 67 46 c. 61 93 d. 55 11 e. 78 38 1.2

Mehr

Asymmetrische Kryptographie u

Asymmetrische Kryptographie u Asymmetrische Kryptographie u23 2015 Simon, Florob e.v. https://koeln.ccc.de Cologne 2015-10-05 1 Zahlentheorie Modulare Arithmetik Algebraische Strukturen Referenzprobleme 2 Diffie-Hellman Diffie-Hellman-Schlüsselaustausch

Mehr

Zahlentheorie. Kapitel 6. Verständnisfragen. Sachfragen. 1. Erläutern Sie die ganzzahlige Division! 2. Was versteht man unter a mod b für a, b Z?

Zahlentheorie. Kapitel 6. Verständnisfragen. Sachfragen. 1. Erläutern Sie die ganzzahlige Division! 2. Was versteht man unter a mod b für a, b Z? Kapitel 6 Zahlentheorie Verständnisfragen Sachfragen 1. Erläutern Sie die ganzzahlige Division! 2. Was versteht man unter a mod b für a, b Z? 3. Erläutern sie a b für a, b Z! 4. Was ist eine Primzahl?

Mehr

WS 2016/17 Torsten Schreiber

WS 2016/17 Torsten Schreiber 104 Diese Fragen sollten Sie ohne Skript beantworten können: Was bedeutet die Rechtseindeutigkeit einer Relation? Was weiß man von einer surjektiven Funktion? Wann ist eine Funktion total / partiell? Welche

Mehr

Algorithmentheorie Randomisierung. Robert Elsässer

Algorithmentheorie Randomisierung. Robert Elsässer Algorithmentheorie 03 - Randomisierung Robert Elsässer Randomisierung Klassen von randomisierten Algorithmen Randomisierter Quicksort Randomisierter Primzahltest Kryptographie 2 1. Klassen von randomisierten

Mehr

Seminar zum Thema Kryptographie

Seminar zum Thema Kryptographie Seminar zum Thema Kryptographie Michael Hampton 11. Mai 2017 Inhaltsverzeichnis 1 Einleitung 3 1.1 Konventionen.................................. 3 1.2 Wiederholung.................................. 3

Mehr

Proseminar Datensicherheit & Versicherungsmathematik ElGamal-Verfahren

Proseminar Datensicherheit & Versicherungsmathematik ElGamal-Verfahren Proseminar Datensicherheit & Versicherungsmathematik ElGamal-Verfahren Markus Kröll 14. Jänner 2009 Inhaltsverzeichnis 1 Einführung 2 2 Das ElGamal-Verfahren 2 2.1 Schlüsselerzeugung.................................

Mehr