PRIMZAHLEN PATRICK WEGENER

Ähnliche Dokumente
11. Das RSA Verfahren

n ϕ n

WS 2009/10. Diskrete Strukturen

3.5 Kryptographie - eine Anwendung der Kongruenzrechnung

11. Das RSA Verfahren und andere Verfahren

4 Kryptologie. Übersicht

Das RSA Kryptosystem

RSA-Verschlüsselung. von Johannes Becker Gießen 2006/2008

Absolut geheim! Fakultät für Physik Universität Bielefeld schnack/

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

Vorlesung Diskrete Strukturen Gruppe und Ring

RSA Verfahren. Kapitel 7 p. 103

Primzahlen. 1.Einführung. Oberstufe Mathematik Projekt Unendlichkeit 2,3,5,7,9,11,13

Das RSA-Verfahren. Proseminar Kryptographische Protokolle SS Armin Litzel

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

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

Funktionsweise des. RSA-Verfahrens

Regine Schreier

Computeralgebra in der Lehre am Beispiel Kryptografie

Kryptographie - eine mathematische Einführung

3: Zahlentheorie / Primzahlen

Hast du auch wirklich versucht, die Aufgaben einmal selbständig zu lösen? Wenn nicht, tue es, bevor du dir die Lösungen anschaust!

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

Anwendungen der Linearen Algebra: Kryptologie

PRIMZAHLEN UND DIE RSA-VERSCHLÜSSELUNG

Mathematische Grundlagen der Kryptografie (1321) SoSe 06

Kryptografie Die Mathematik hinter den Geheimcodes

El. Zahlentheorie I: Der kleine Satz von Fermat

1. Asymmetrische Verschlüsselung einfach erklärt

1. KRYPTOLOGIE UND ÖFFENTLICHE SCHLÜSSEL 1

3. Vortrag: Das RSA-Verschlüsselungsverfahren

Primzahlen Primzahlsatz Der Satz von Green und Tao Verschlüsselung mit RSA. Primzahlen. Ulrich Görtz. 3. Mai 2011

U. Rausch, 2010 Ganze Zahlen 1

Kryptographie. ein erprobter Lehrgang. AG-Tagung Informatik, April 2011 Alfred Nussbaumer, LSR für NÖ. LSR für NÖ, 28. April 2011 Alfred Nussbaumer

Man weiß, dass zwischen zwei aufeinanderfolgenden Quadratzahlen immer mindestens eine Primzahl liegt:

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

10. Kryptographie. Was ist Kryptographie?

Man weiß, dass zwischen zwei aufeinanderfolgenden Quadratzahlen immer mindestens eine Primzahl liegt:

Kap. II: Kryptographie

6.2 Asymmetrische Verschlüsselung

Über das Hüten von Geheimnissen

Verschlüsselung. Kirchstraße 18 Steinfelderstraße Birkweiler Bad Bergzabern Fabian Simon Bfit09

Kryptologie. Verschlüsselungstechniken von Cäsar bis heute. Arnulf May

Einführung in die asymmetrische Kryptographie

Zahlentheorie I - Tipps & Lösungen. Aktualisiert: 15. Oktober 2016 vers Teilbarkeit

Vorlesung Mathematik 2 für Informatik

Netzwerktechnologien 3 VO

Modul Diskrete Mathematik WiSe 2011/12

Primzahlen und Programmieren

5 Grundlagen der Zahlentheorie

Der kleine Satz von Fermat

Primzahlen und Pseudoprimzahlen

Lineare Algebra I (WS 13/14)

Vorkurs Mathematik. Vorlesung 2. Primzahlen

Elementare Zahlentheorie II

Digitale Unterschriften mit ElGamal

Höher, Schneller, Weiter!

Primzahlen und RSA-Verschlüsselung

Entwicklung der Asymmetrischen Kryptographie und deren Einsatz

Übung GSS Blatt 6. SVS Sicherheit in Verteilten Systemen

El Gamal Verschlüsselung und seine Anwendungen

5 Codierung nach RSA (Lösung)

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

3. Diskrete Mathematik

Aufgabe der Kryptografie

Public Key Kryptographie mit dem RSA Schema. Karsten Fischer, Sven Kauer

KRYPTOSYSTEME & RSA IM SPEZIELLEN

Danach arithmetische Fragestellungen wie vollkommene Zahlen und Dreieckszahlen der Griechen.

Public-Key-Verschlüsselung und Diskrete Logarithmen

Einführung in die Kryptographie - Multiple Choice Quiz

Ideen und Konzepte der Informatik Kryptographie

Prima Zahlen? Primzahlen!

Lösungen der Aufgaben

Public Key Kryptographie

Kryptologie. Bernd Borchert. Univ. Tübingen SS Vorlesung. Teil 10. Signaturen, Diffie-Hellman

Ausgeschriebene Informatik-Unterrichtsmitschrift (inklusive Hausaufgaben) vom V.2. Valentina Tamer

KAPITEL 13. Polynome. 1. Primfaktorzerlegung in den ganzen Zahlen. ,, p r

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

Der chinesische Restsatz mit Anwendung

Facharbeit. Public-Key-Verfahren(PGP) Stephan Larws Informatik 02

Lenstras Algorithmus für Faktorisierung

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

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

Musterlösung zur Probeklausur zur Angewandten Diskreten Mathematik

RSA Verfahren. Ghazwan Al Hayek Hochschule für Technik Stuttgart. 2. November 2008

Kryptographie Reine Mathematik in den Geheimdiensten

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

Zahlenlehre 1. Die Mathematik ist die Königin der Wissenschaften und die Zahlentheorie ist die Königin der Mathematik (Carl Friedrich Gauß)

Grundlagen der Arithmetik und Zahlentheorie

SCHRIFTLICHE ZUSAMMENFASSUNG ZUM VORTRAG DIE GRUNDLAGEN DER RSA-VERSCHLÜSSELUNG VON DANIEL METZSCH

1 Zahlentheorie. 1.1 Kongruenzen

Übungen zum Vorkurs Mathematik für Studienanfänger Ein leeres Produkt ist gleich 1, eine leere Summe 0. ***

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

Transkript:

PRIMZAHLEN PATRICK WEGENER 1. Einführung: Was sind Primzahlen? Eine ganze Zahl p, welche größer als 1 ist, heißt Primzahl, wenn sie nur durch 1 und sich selbst teilbar ist. Mit teilbar meinen wir hier folgendes: Die ganze Zahl p ist durch die ganze Zahl n teilbar, wenn p : n wieder eine ganze Zahl ist. Beispiel 1.1. Die Zahl 6 ist zum Beispiel durch 2 teilbar, denn 6 : 2 = 3 und 3 ist wieder eine ganze Zahl. Sie ist aber zum Beispiel nicht durch 4 teilbar, denn 6 : 4 = 1, 5 und 1, 5 ist keine ganze Zahl. Die Zahl 5 ist eine Primzahl, denn sie ist nicht durch 2, 3 oder 4 teilbar. Die Zahl 6 ist keine Primzahl, denn (wie oben gesehen) ist sie zum Beispiel durch 2 teilbar. Allgemein sehen wir: Jede gerade ganze Zahl größer als 2 ist keine Primzahl. Satz 1.2 (Euklid). Es gibt unendliche viele Primzahlen. Beweis. Wir nehmen an, es gäbe nur endlich viele Primzahlen. Wenn dies so wäre, dann müßte es eine größte Primzahl geben, und diese bezeichnen wir mit n. Die Liste aller Primzahlen wäre also (1) 2, 3, 5, 7, 11, 13,..., n. Wir betrachten jetzt die folgende Zahl (2) 2 3 5 7 11 13... n + 1. Diese Zahl ist sicher viel größer als die Zahl n, könnte also keine Primzahl sein. Folglich müßte sie einen (von 1 und ihr selbst verschiedenen) Teiler besitzen. Dieser Teiler könnte in ein Produkt von Primzahlen zerlegt werden, und alle diese Primfaktoren müßten die Zahl (2) teilen, da sie in der Liste (1) auftauchen. (Wenn eine Zahl z.b. von 10 geteilt wird, dann auch von den Primfaktoren 2 und 5). Es müßte also zumindest eine Primzahl geben, die (2) teilt. Andererseits läßt sich (2) nicht restlos durch irgendeine Primzahl unserer Liste (1) dividieren, da immer der Rest 1 bleibt. Es gäbe also eine Primzahl, die nicht in unserer Liste vorkommt. Das widerspricht aber der Annahme, dass wir in (1) bereits alle Primzahlen aufgelistet haben. Satz 1.3. Jede ganze Zahl n mit n > 1 lässt sich eindeutig (bis auf die Reihenfolge) als Produkt von Primzahlen schreiben. D.h. es gibt Primzahlen p 1, p 2,..., p m, so dass n = p 1 p 2... p m. Wir nennen dies die Primfaktorzerlegung von n. 1

2 PATRICK WEGENER Beispiel 1.4. Für die Zahl n = 210 erhalten wir die Primfaktorzerlegung 210 = 2 3 5 7. Für die Zahl 32 erhalten wir 32 = 2 2 2 2 2 = 2 5, d.h. Primzahlen können in der Primfakktorzerlegung auch häufiger vorkommen. Aufgabe 1.5 (Ein Zahlenrätsel). Die beiden Google Gründer Sergey Brin und Larry Page werden von Mark Zuckerberg in seinem Keller festgehalten. Er verspricht ihnen die Freiheit, wenn sie die beiden ganzen Zahlen zwischen 1 und 100 (d.h. die möglichen Zahlen sind 2, 3, 4,..., 98, 99) herausfinden, die er sich ausgedacht hat. Er nennt Brin das Produkt und Page die Summe der beiden Zahlen. Daraufhin kommt es zu folgender Unterhaltung zwischen den beiden: Brin: Ich kenne die beiden Zahlen nicht. Page: Das war mir klar. Brin: Jetzt kenne ich die beiden Zahlen. Page: Dann kenne ich sie auch. Findet die beiden Zahlen heraus, die Zuckerberg sich ausgedacht hat. Hinweis: Alleine aus dem Dialog der beiden lässt sich eine eindeutige Lösung herleiten. So sagt Brin etwa am Anfang, dass er die beiden Zahlen nicht kenne. Hätte Zuckerberg ihm aber zum Beispiel als Produkt der beiden Zahlen die 6 genannt, so wüsste er sicher, dass die gesuchten Zahlen 2 und 3 sind. Denn 6 = 2 3 und zwar gilt auch 6 = 1 6, aber die von Zuckerberg erdachten Zahlen sind größer als 1. Aufgabe 1.6. https://www.youtube.com/watch?v=c18gjbnzxmw

PRIMZAHLEN 3 2. Warum Primzahlen? https://www.youtube.com/watch?v=yhlv5aeuo_k Primzahlen spielen in vielen Bereichen der Mathematik eine wichtige Rolle und sind ein entscheidender Aspekt für viele mathematische Fragestellungen. Auch hier in der AGAG (wie etwa in der der Algebraischen Geometrie, Zahlentheorie, Gruppentheorie). Aber auch in unserem Alltag spielen sie (wenn auch unbewusst) eine wichtige Rolle. Der RSA Algorithmus: Ein Verschlüsselungsverfahren aus dem Jahre 1974, benannt nach den Entwicklern Rivest, Shamir und Adleman. Es handelt sich hierbei um ein sogenanntes Public Key Verschlüsselungsverfahren, d.h. es gibt einen öffentlichen Schlüssel (der prinzipiell jedem zugänglich ist) und einen privaten Schlüssel (der geheim ist). Mit Hilfe des öffentlichen Schlüssels kann nun jeder Nachichten verschlüsseln, aber nur der Besitzer des privaten Schlüssels kann die Nachrichten wieder entschlüsseln. Im Verlaufe des RSA-Algorithmus wird eine Zahl verschlüsselt bzw. später wieder entschlüsselt. Später werden wir sehen, wie man dann auch Texte oder ähnlches verschlüsseln kann. Wir wllen nun den Algorithmus beschreiben. Parallel dazu illustrieren wir dies immer an einem Beispiel (blaue Schrift). Wir verwenden dabei den MAPLE-Befehl x mod n; Dieser berechnet den Rest bei Division von x durch n. Nun zum Verfahren: (1) Wähle zwei (unterschiedliche) Primzahlen p und q und berechne n = p q. Wir nennen n die öffentliche Zahl. p = 11, q = 17 n = 11 17 = 187 (2) Berechne ϕ(n) = (p 1) (q 1) und wähle eine positive ganze Zahl e, so dass e und ϕ(n) keinen gemeinsamen Teiler (außer der 1) haben. Wir können z.b. ϕ(n) in Primfaktoren zerlegen und für e eine Primzahl wählen, die nicht unter diesen Primfaktoren vorkommt. Die Zahl e ist der öffentliche Schlüssel. ϕ(n) = (11 1) (17 1) = 160 = 2 5 5 e = 7 (3) Es kann nun jede positive ganze Zahl m (der Klartext) mit m < n zu einer Zahl c (der Geheimtext) verschlüsselt werden. Die verschlüsselte Zahl c erhält man wie folgt: c = m e mod n, d.h. c ist der Rest bei der Division von m e durch n. Wir verschlüsseln zum Beispiel m = 4. Es ist m e = 4 7 = 16384 = 115 mod 187, d.h. c = 115. (4) Der private Schlüssel ist eine ganze Zahl d gegeben durch d e = 1 mod ϕ(n). Ein solches d gibt es immer und kann zum Beispiel mit dem folgenden MAPLE-Befehl berechnet werden. igcdex(ϕ(n), e, s, t ); Die letzte Zahl in der Ausgabe liefert dann d. Mit obigem MAPLE-Befehl erhalten wir d = 23. (5) Zum Entschlüsseln muss die Empfängerin oder der Empfänger nun c d mod n

4 PATRICK WEGENER berechnen. Das Ergebnis ist dann genau der Klartext m. Es ist c d = 115 2 3 = 4 mod 187. Wir erhalten also den Klartext m = 4 zurück. Beispiel 2.1. Um einen Text zu verschlüsseln, müssen zunächst Buchstaben in Zahlen umgewandelt werden. Dazu verwendet man in der Praxis zum Beispiel den ASCII-Code. Hier sei willkürlich die folgende Zuordnung gewählt: A = 01, B = 02, C = 03,... (00 = Leerzeichen). Darüber hinaus sei angenommen, dass jeweils drei Zeichen zu einer Zahl zusammengefasst werden. Die Buchstabenfolge AXT wird also zu 012420. Die kleinste zu verschl sselnde Zahl ist dann 000000 (drei Leerzeichen), die größte 262626 (ZZZ). Die öffentliche Zahl n = p q muss also größer als 262626 sein. Der Klartext SCHULE lautet als Zahlenfolge also 19 03 08 21 12 05. Zunächst werden geheim zwei Primzahlen gewählt, beispielsweise p = 307 und q = 859. Damit ergibt sich: n = p q = 263713 und ϕ(n) = (p 1) (q 1) = 262548. Wir wählen (mit Hilfe von MAPLE): e = 1721 d = 1373 Verschlüsselung: Da wir immer drei Buchstaben zu einer Zahl zusammenfassen und das Wort SCHULE sechs Buchstaben hat, müssen wir also zwei Zahlen verschlüsseln. Einmal m 1 = 190308 und zum anderen m 2 = 211205. Wir erhalten (wieder mit Hilfe von MAPLE): c 1 = m e 1 mod n = 1903081721 mod 263713 = 111585 c 2 = m e 2 mod n = 2112051721 mod 263713 = 212260 Erhält man beim Verschlüsseln (oder auch später beim Entschlüsseln) eine Zahl die nicht 6-stellig ist, so füllt man mit Nullen auf. Also statt 1234 würde man etwa 001234 nehmen. Nun entschlüsseln wir die Nachricht wieder: m 1 = c d 1 mod n = 1115851373 mod 263713 = 190308 m 2 = c d 2 mod n = 2122601373 mod 263713 = 211205 Aufgabe 2.2 (Verschlüsseln eines Textes mit RSA). Überlegt euch jeweils zwei Primzahlen p und q und berechnet dann n, ϕ(n), d und e. Tut euch in Zweiergruppen zusammen und tauscht jeweils n und e aus. Schickt euch gegenseitig eine verschlüsselte Nachricht und entschlüsselt diese dann wieder. Unter folgendem Link könnt ihr euer Ergebnis überprüfen: http://www.inf.fh-flensburg.de/lang/krypto/protokolle/rsa.htm

PRIMZAHLEN 5 3. Primzahlen suchen Beispiel 3.1 (Mersenne-Primzahlen). Es gibt unendlich viele Primzahlen, d.h. es ist gar nicht möglich alle Primzahlen zu kennen. Aber zum Beispiel für den RSA-Algorithmus ist es wünschenswert, dass man sehr große Primzhalen kennt. Die größten bisher bekannten Primzahlen sind alle sogenannte Mersenne Zahlen. Dies sind Zahlen der Form 2 n 1, wobei n eine positive ganze Zahl sein kann. Also zum Beispiel 2 5 1 = 31, was auch eine Primzahl ist. Aber nicht jede dieser Zahlen ist eine Primzahl. So ist etwa 2 4 1 = 15 keine Primzahl. Auf der Suche nach immer größeren Primzahlen konzentriert man sich dennoch auf die Mersenne Zahlen. D.h. man kontrolliert für immer größere Zahlen n ob 2 n 1 eine Primzahl ist. Auf diese Art und Weise wurde erst vor kurzem die bislang größte bekannte Primzahl gefunden. Diese hat fast 23,5 Millionen Stellen!! Mehr dazu: http://www.zeit.de/wissen/2018-01/mersenne-primzahl-50-entdeckt-mathematik Aufgabe 3.2. Die folgende Fragestellung war Teil des deutschen Vorausscheides zur Mathematik- Olympiade: Für welche ganzen Zahlen n mit n 1 ist der Ausdruck n 3 + 4 n n 1 eine Primzahl? Wir wollen uns die Lösung schrittweise erarbeiten: (1) Testet dies zuerst an Beispielen (mit dem Computer). Betrachtet alle n mit n = 1, 2, 3,..., 14, 15. Stelle eine Vermutung auf. (2) Ist der Ausdruck n 3 + 4 n n 1 für ein n keine Primzahl, so gibt es eine Primzahl p welche diesen Ausdruck teilt. Nehmt die ganzen Zahlen n zwischen 1 und 15, für die n 3 + 4 n n 1 keine Primzahl ist und bestimmt alle Primzhalen p die den Ausdruck n 3 + 4 n n 1 teilen. Was fällt euch auf?