Zahlentheoretische Grundlagen für das RSA-Verschlüsselungsverfahren Manfred Römersperger 13. Juni 2000 Inhalt 1 Vorbemerkung 2 2 Grundbegrie der Zahlentheorie 2.1 2.2 2.3 2.4 2.5 2.6 Zum Aufwärmen . . . . Kongruenzen . . . . . . Restklassen . . . . . . . Eulersche φ-Funktion . . Repräsentantensysteme Der Satz von Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 2 4 6 7 7 3 Verschlüsselung von Nachrichten mittels des RSA-Verfahrens 8 Literaturverzeichnis 9 2.1 Zum Aufwärmen 2 1 Vorbemerkung In diesem Artikel sollen auf möglichst schnörkellosem Weg diejenigen mathematischen Hilfsmittel bereit gestellt werden, die zum Verstehen des RSA-Verfahrens benötigt werden. 2 Grundbegrie der Zahlentheorie 2.1 Zum Aufwärmen Problem 1 Beweise oder widerlege die Behauptung: Ist p eine Primzahl gröÿer als 3, so ist min- destens eine der beiden Zahlen 2p + 1 oder 2p − 1 keine Primzahl. Problem 2 Für welches n ∈ N ist n3 + 3n2 + 2n durch 3 teilbar? Bei der Lösung dieser und ähnlicher Fragestellungen kommt man zur Argumentation mittels Resten: Bei beiden Problemen beruht die Beweisidee auf der Teilbarkeit durch 3. In diesem Fall gibt es nur die drei möglichen Reste 0, 1 und 2. Bei der Division von drei aufeinanderfolgenden Zahlen durch 3 treten alle drei Reste 0, 1 und 2 auf. Die Fragen lassen sich in knapper Weise beantworten, wenn man bei der Division alleine auf den Rest schaut. Mit dieser Betrachtungs- und Argumentationsweise beschäftigt sich die Kongruenzrechnung. 2.2 Kongruenzen Bei allen Rechnungen betrachten wir im folgenden nur die ganze Zahlen, d. h. es gibt weder Brüche, Dezimalzahlen noch irrationale Zahlen. Bei Divisionen, die als Ergebnis keine ganze Zahlen liefern, bleibt nichts anderes übrig, als das Ergebnis wie früher gelernt, mittels Rest anzugeben. Beispielsweise erhalten wir 32 : 5 = 6 Rest 2. Hierfür führen wir eine neue Schreibweise ein 32 ≡ 2 mod 5. Es kommt uns nur auf den Rest an, daher ist von der 6 nicht die Rede. Weiteres Beispiel: 19 ≡ 4 mod 5. Um nun diese Schreibweise auf solide Weise zu denieren, machen wir uns nochmals klar, was Rest 2 bedeutet: Bei Division durch 5 geht 32 nicht auf, es bleiben 2 übrig, das bedeutet aber auch, dass 32 − 2 durch 5 teilbar ist. Diese Eigenschaft verwenden wir zur Denition der neuen Schreibweise: Definition 1 Für Zahlen m ∈ N und a, b ∈ Z schreiben wir a ≡ b mod m falls m ein Teiler von a − b ist. Wir sagen: a ist kongruent b modulo m Diese Denition passt zu den oben gemachten Überlegungen, aber sie ist etwas weiter gefasst: Nach der Deniton gilt nämlich auch: 32 ≡ 7 mod 5. Dies ergibt sich, da 32 − 7 durch 5 teilbar ist, ohne dass wir hier vom Rest 7 sprechen würden. Tatsächlich soll im weiteren die strenge Denition Anwendung nden. Bemerkenswert ist auch, dass diese Deniton auch für negative Zahlen gilt, beispielsweise ist 11 ≡ −4 mod 5, da (11 − (−4)) = 15 durch 5 teilbar ist. Beispiel 144 ≡ 4 mod 7, 218 ≡ 1 mod 7. Bei der Berechnung der letzten Kongruenz kann man in zwei Schritten vorgehen, was zunächst 2.2 Kongruenzen 3 mittels der Division ausgedrückt werden soll: 210 ist durch 7 teilbar, also kommt es was den Rest anbetrit nur noch auf 218-210, also 8 an. Bei Division durch 7 erhält man den Rest 1. Mit unserer neuen Schreibweise ergibt dies: 218 ≡ 8 mod 7 ≡ 1 mod 7. Dass diese schrittweise Überlegung immer möglich ist, besagt der folgende Satz 1 Für Zahlen a, b, c ∈ Z mit a ≡ b mod m und b ≡ c mod m gilt: a ≡ c mod m. Nach der Voraussetzung des Satzes betrachten wir Zahlen a, b und c, für die gilt: a − b ist durch m teilbar und ebenso ist b − c durch m teilbar. Was wir zeigen müssen ist, dass dann auch a − c durch m teilbar ist. Klar ist die Gleichung: a − c = a − b + b − c = (a − b) + (b − c). Die Klammern sind für die Rechnung unerheblich, sie machen nur den weiteren Gedankengang klarer: Mit a − b und b − c ist auch die Summe (a − b) + (b − c), also a − c durch m teilbar, was gerade a ≡ c mod m bedeutet. Suchen wir nach (möglichst kleine) Zahlen x und y mit 144 + 218 ≡ x mod 7. 144 · 218 ≡ y mod 7. so sind wir an Rechenregeln interessiert, mittels derer wir x und y aus den obigen Kongruenzen berechnen können: Satz 2 Für Zahlen m, n ∈ N und a, b, c, d ∈ Z mit a ≡ b mod m und c ≡ d mod m gilt: a) a + c ≡ b + d mod m b) a − c ≡ b − d mod m c) a · c ≡ b · d mod m d) an ≡ bn mod m Beweis a) Nach Voraussetzung ist m ein Teiler von a − b und von c − d, also auch von der Summe (a − b) + (c − d) = (a + c) − (b − d). Hieraus ergibt sich aber gerade die Behauptung. b) ergibt sich analog zu a). c) Nach Voraussetzung ist m ein Teiler von a − b und von c − d, also auch von a(c − d) + d(a − b) = ac − bd. Hieraus ergibt sich aber gerade die Behauptung. d) ergibt sich durch wiederholte Anwendung von Aussage c). Beispiel Angewendet auf das obige Beispiel besagen diese Rechenregeln: Beweis 144 + 218 ≡ 4 + 1 mod 7 ≡ 5 mod 7 144 · 218 ≡ 4 · 1 mod 7 ≡ 4 mod 7. Mittels dieser Rechenregeln kann man die folgende Aufgabe lösen: Wie heiÿen die letzten beiden Ziern von 71990 ? Diese Frage ist gleichwertig mit der Suche nach einer Zahl x < 100, für die gilt: 71990 ≡ x mod 100. Für die Reste bei Division durch 100 gilt: Rest 7 7 72 49 73 43 74 1 75 7 76 49 77 43 78 1 79 7 Beispiel ··· ··· 2.3 Restklassen 4 Wie man sieht, wiederholen sich die Reste immer wieder. Leider hat 71990 nicht den Rest 1, aber wenn man statt 1990 im Exponenten die nächstkleinere durch 4 teilbare Zahl einsetzt, so stimmt dies, d. h. 71988 ≡ 1 mod 100. Daher gilt 71990 ≡ 49 mod 100. Beim Lesen des obenstehenden Satzes kann sich einem die Frage aufdrängen, ob eine entsprechende Aussage auch bei der Division gilt, also etwa ac ≡ db mod m. Hierzu muss man zunächst bedenken, dass die modulo-Denition nur für ganze Zahlen Sinn macht, d. h. die Division muss aufgehen. In diesem Sinne formulieren wir abgewandelt: Gegeben seien Zahlen k, m ∈ N und a, b ∈ Z mit k · a ≡ k · b mod m. Gilt dann auch a ≡ b mod m? Beispiel Für 9 · 4 ≡ 3 · 4 mod 8 gilt mit k = 3 die Aussage, denn es gilt 3 · 4 ≡ 1 · 4 mod 8. Mit k = 4 gilt die Aussage nicht, da die Aussage 9 · 1 ≡ 3 · 1 mod 8 falsch ist. Also gilt die oben formulierte Aussage nicht immer. In welchen Fällen gilt sie? Drücken wir die Kongruenzen entsprechend der Denition mittels Teilbarkeitsaussagen aus, so gilt: Aus der Teilbarkeit von 9·4−3·4 = (9−3)4 durch 8 folgt auch die Teilbarkeit von 3·4−1·4 = (3−1)4, aber nicht die Teilbarkeit von 9 · 1 − 3 · 1 = (9 − 3)1 durch 8. Der Unterschied ist, dass man im ersten Fall einen Faktor nämlich 3 entwendet, der für die Teilbarkeit durch 8 unerheblich ist, während der Faktor im zweiten Fall nämlich 4 für die Teilbarkeit durch 8 erheblich ist, durch diese Division geht die Teilbarkeit verloren. Der Faktor k muss also so beschaen sein, dass er für die Teilbarkeit durch m unerheblich ist, d. h. k und m dürfen keine gemeinsamen Teiler haben. Satz 3 Sind k, m ∈ N teilerfremd und a, b ∈ Z mit k · a ≡ k · b mod m, so gilt a ≡ b mod m. Dies Satz selbst wird im weiteren nicht ausdrücklich verwendet, sehr wohl aber die Argumentation des Beweises. Beweis Nach Voraussetzung gilt für die Zahlen a, b, k, m: k · a ≡ k · b mod m, d. h. m ist ein Teiler von k · a − k · b = k(a − b). m ist also ein Teiler dieses Produktes, hat aber mit dem einen Faktor, nämlich k, keinen gemeinsamen Teiler (auÿer 1). Dann muss m ein Teiler des anderen Faktors, also von (a − b) sein. Nach der Denition der Kongruenzen besagt dies gerade: a ≡ b mod m. Bemerkung Für den gröÿten gemeinsamen Teiler zweier Zahlen a und b schreiben wir kurz Sind zwei Zahlen teilerfremd, so schreiben wir hierfür also (a, b) = 1. Bemerkung Durch ≡ wird eine Äquivalenzrelation (symmetrisch, reexiv und transitiv) beschrieben. Weitere Übungen 1) Die Zahlen 151, 175, 295, 439 und 3487 sind bei der Wahl eines geeigneten Moduls m kongruent zueinander. Bestimme alle möglichen Moduln m. Was fällt auf? 2) Dividiert man 1992 durch n, so erhält man den Rest 111. Teilt man aber 2991 durch n, so erhält man den Rest 65. Bestimme die Zahl n. Schreibweise (a, b). 2.3 Restklassen Einstieg Welche Reste können bei der Division durch 5 auftreten? Nehmen wir einmal Rest 3, welche Zahlen haben diesen? · · · − 7, −2, 3, 8, 13 · · · All diese Zahlen fassen wir nun in einer Menge zusammen und schreiben hierfür 3. Dies sind all die Zahlen, die zu 3 kongruent sind (modulo 5). Welche Zahlen gehören dann wohl zu 1, zu 4? Welche Zahlen gehören dann wohl zu −1? . . . Man erkennt, dass das die selben Zahlen sind, die auch bei 4 aufgetreten sind, also können wir schreiben −1 = 4. Was könnten wir noch hinschreiben? . . . · · · = 19. . . 2.3 Restklassen 5 Verallgemeinern: Diese Mengen sind immer dann gleich, wenn die bezeichnende Zahlen den gleichen Rest (modulo 5) haben. Definition 2 Für Zahlen m ∈ N und a ∈ Z denieren wir a := {z ∈ Z|z ≡ a mod m} und bezeichnen diese Menge als Äquivalenzklasse von a. Bemerkung Statt Äquivalenzklasse spricht man auch von Restklassen oder Kongruenzklassen. a heiÿt Repräsentant der Restklasse. Satz 4 a) Zwei Äquivalenzklassen a und b stimmen genau dann überein, wenn b ≡ a mod m gilt. b) Zwei Äquivalenzklassen sind entweder gleich oder sie besitzen kein gemeinsames Element. Beweis a) Zunächst nehmen wir an, dass z ≡ a mod m gilt. Wegen b ∈ b gilt dann auch b ∈ a, d.h. b ≡ a mod m. Gilt umgekehrt b ≡ a mod m, so betrachten wir eine Zahl z ∈ a, d. h. es gilt z ≡ a mod m. Anders gesagt, m ist ein Teiler von z − a. Wegen z − b = (z − a) − (b − a) ist m auch ein Teiler von z − b, d. h. z ≡ b mod m, also gilt z ∈ b. Hieraus ergibt sich die Behauptung. b) Wir betrachten den Fall, dass die beiden Äquivalenzklassen gemeinsame Elemente besitzen. Zu zeigen ist für diesen Fall, dass die beiden Äquivalenzklassen übereinstimmen. Wir betrachten also z ∈ a ∩ b, d. h. es gilt z ≡ a mod m und z ≡ b mod m. Dann gilt aber wegen der Transitivität auch b ≡ a mod m. Nach der ersten schon bewiesenen Behauptung gilt dann aber a = b. Bemerkung Die wesentliche Idee dieses Satzes wird anhand von Beispielen klar, der Rest ist Formalismus. Mit dieser Eigenschaft ist die folgende Denition sinnvoll: Definition 3 a) a + b := a + b b) a · b := a · b Bemerkung Dieses Rechenzeichen + hat eigentlich nichts mit dem Additionszeichen zu tun, da links und rechts davon Mengen und keine Zahlen stehen! Trotzdem macht es Sinn, da der Repräsentant a + b der neuen Restklasse durch Addition der ursprünglichen Repräsentanten entsteht. Man könnte statt + auch irgend ein anderes Zeichen wählen, z. B. ⊕, um daran zu erinnern, dass es doch irgend etwas mit der Addition von Zahlen zu tun hat. In einer Tabelle sollen nun die Ergebnisse dieser Addition und Multiplikation zusammengestellt werden. Hierbei verwenden wir als Repräsentanten möglichst kleine nichtnegative Zahlen. Modulo 5 gilt: + 0 1 2 3 4 − 0 1 2 3 4 · 0 1 2 3 4 0 0 1 2 3 4 0 0 4 3 2 1 0 0 0 0 0 0 1 1 2 3 4 0 1 1 0 4 3 2 1 0 1 2 3 4 2 2 3 4 0 1 2 2 1 0 4 3 2 0 2 4 1 3 3 3 4 0 1 2 3 3 2 1 0 4 3 0 3 1 4 2 4 4 0 1 2 3 4 4 3 2 1 0 4 0 4 3 2 1 Beim Rechnen mit diesen Restklassen gelten dieselben Rechenregeln wie für natürliche Zahlen. Mittels dieser Verknüpfungstabellen können Gleichungen der Form a + x ≡ b mod m oder a · x ≡ b mod m gelöst werden. Um beispielsweise 3·x ≡ 1 mod 5 zu lösen, schauen wir in der Zeile der 3, wo eine 1 auftritt. Da dies 2.4 Eulersche φ-Funktion 6 die Spalte der 2 ist, heiÿt die Lösung x = 2. Anhand von mehreren solcher Beispiele merkt man, dass gerade bei Multiplikationsaufgaben das Aunden von Lösungen nicht ganz einfach ist. Bei Additionsaufgaben ndet man die Lösung in gewohnter Weise durch Subtraktion. Beispielsweise erhält man für 4 + x ≡ 2 mod 5 durch Addition von −4 auf beiden Seiten x ≡ −2 mod 5 ≡ 3 mod 5. Ob solche Gleichungen immer lösbar sind und ob gegebenenfalls die Lösungen eindeutig sind, soll hier nicht näher eingegangen werde (siehe Folgerung 1.2 weiter unten). Doch sollen, um einige zusätzliche Gesichtspunkte kennen zu lernen, noch für einen weiteren Fall die Verknüpfungstabellen erstellt werden, nämlich für den Fall m = 4: + 0 1 2 3 · 0 1 2 3 0 0 1 2 3 0 0 0 0 0 1 1 2 3 0 1 0 1 2 3 2 2 3 0 1 2 0 2 0 2 3 3 0 1 2 3 0 3 2 1 Was ist hier anders als im ersten Fall? Hier tritt, anders als bei der Multiplikation von natürlichen Zahlen, als Ergebnis 0 auf, obwohl keiner der beiden Faktoren 0 ist! Dies liegt daran, dass 2 · 2 = 4 ist. Im ersten Fall ist das nicht passiert, warum nicht? Gibt es das auch im Fall m = 6, m = 9, . . . ? Woran liegt das? Falls m keine Primzahl ist, lässt es sich als Produkt zweier kleinerer Zahlen schreiben, deren Produkt ist dann modulo m gleich 0. Will man keine solchen Nullteiler, so muss man fordern, dass m eine Primzahl ist. Bemerkung Die Gleichung 2 · x ≡ 1 mod 4 hat keine Lösung! 2.4 Eulersche φ-Funktion Welche Zahlen zwischen 1 und 12 sind zu 12 teilerfremd? 1, 5, 7, 11. Zu 12 gibt es also 4 Zahlen zwischen 1 und der Zahl selbst, die mit 12 teilerfremd sind. Entsprechend kann ich jeder natürlichen Zahl diesen Wert die Anzahl der teilerfremden, natürlichen Zahlen, die kleiner sind als diese Zahl zuordnen. Definition 4 Für eine natürliche Zahl n bezeichnet φ(n) die Anzahl der natürlichen Zahlen k mit 1 ≤ k ≤ n und (k, n) = 1. Diese Zuordnung φ heiÿt Eulersche φ-Funktion. Beispiele 1) φ(2) = 1 2) φ(4) = |{1; 3}| = 2, φ(6) = 2, φ(8) = 4, φ(11) = 10 Hilfssatz 2.1 Für Primzahlen p und q mit p 6= q gilt: a) φ(p) = p − 1, b) φ(p2 ) = p(p − 1), c) φ(p · q) = (p − 1)(q − 1). Beweis a) Zu der Primzahl p sind alle Zahlen auÿer p selbst teilerfremd, hieraus folgt: φ(p) = p−1. b) Die einzigen nicht teilerfremden Zahlen sind p, 2p, 3p, · · · , p2 , dies sind p Zahlen. Hieraus folgt: φ(p2 ) = p2 − p = p(p − 1). c) Die zu p · q nicht teilerfremden Zahlen sind p, 2p, 3p, · · · , q · p und q, 2q, 3q, · · · , p · q, dies sind einmal q, einmal p Zahlen, wobei p·q doppelt gezählt wurde. Hieraus folgt: φ(p·q) = p·q−p−q+1 = (p − 1)(q − 1). Einführung Die Bezeichnung φ(n) wurde von Carl Friedrich Gauÿ (1777-1855) in der Arbeit Disquisitiones Arithmeticae im Jahr 1801 erstmals verwendet. Euler selbst verwendete für diese Funktion bis 1870 keinerlei Symbol, danach schrieb er πn ([Int01]) Bemerkung 2.5 Repräsentantensysteme 7 2.5 Repräsentantensysteme Definition 5 Für ein m ∈ N bezeichnen wir eine Menge von Zahlen r1 , r2 , · · ·, rm als vollständiges Repräsentantensystem, falls jede natürliche Zahl zu einer und nur einer der Restklassen r1 , r2 , · · ·, rm (modulo m) gehört. r1 , r2 , · · ·, rφ(m) heiÿt reduziertes vollständiges Repräsentantensystem, falls alle rj (1 ≤ j ≤ φ(m)) zu m teilerfremd sind, und jede natürliche Zahl, die zu m teilerfremd ist, zu einer und nur einer der Restklassen r1 , r2 , · · ·, rφ(m) gehört. Eine Menge von m aufeinanderfolgenden ganzen Zahlen bildet ein vollständiges Repräsentantensystem modulo m. Hilfssatz 2.2 Wir betrachten die ganzen Zahlen a und m, die teilerfremd sind. Ist r1 , r2 , · · ·, rφ(m) ein reduziertes vollständiges Repräsentantensystem modulo m, so ist dies auch ar1 , ar2 , · · ·, arφ(m) . Beispiel Für m = 15 gilt φ(15) = φ(3·5) = 8. Ein reduziertes vollständiges Repräsentantensystem ist gegeben durch die Zahlen: Bemerkung r1 = 1 r2 = 2 r3 = 4 r4 = 7 r5 = 8 r6 = 11 r7 = 13 r8 = 14 Für a = 8 gilt (modulo 15): a · r 1 = 8 ≡ r5 a · r5 = 64 ≡ r3 a · r2 = 16 ≡ r1 a · r6 = 88 ≡ r7 a · r3 = 32 ≡ r2 a · r7 = 104 ≡ r8 a · r4 = 56 ≡ r6 a · r8 = 112 ≡ r4 Wie man sieht, entspricht jedem Repräsentanten des einen reduzierten vollständigen Repräsentantensystems genau ein Repräsentant des anderen reduzierten vollständigen Repräsentantensystems. Wie diese Zuordnung aussieht, ist nicht unmittelbar ersichtlich. Beweis Für alle 1 ≤ j ≤ φ(m) sind rj und m teilerfremd. Da auch a zu m teilerfremd ist, gilt dies auch für arj , 1 ≤ j ≤ φm. Wir sind fertig, wenn wir gezeigt haben, dass von den Repräsentanten ar1 , ar2 , · · ·, arφ(m) keine zwei dieselbe Restklasse repräsentieren: Angenommen es gebe zwei solche, d.h. arj ≡ ark mod m, so gilt: m ist ein Teiler von a(rj − rk ). Da a und m teilerfremd sind, folgt hieraus, dass m ein Teiler von rj −rk ist, d. h. es gilt: rj ≡ rk mod m. Dies kann aber nicht sein, da wir ja von einem reduzierten vollständigen Repräsentantensystem ausgingen. Also ist die Annahme falsch, was die Behauptung des Hilfssatzes beweist. 2.6 Der Satz von Euler Satz 5 Für teilerfremde Zahlen a, m ∈ N gilt: aφ(m) ≡ 1 mod m. 1) Für a = 3, m = 22 besagt der Satz: 310 ≡ 1 mod 22. Dies kann mit dem Taschenrechner überprüft werden. 2) Für a = 19, m = 22 besagt der Satz: 1910 ≡ 1 mod 22. Dies kann mit dem Taschenrechner nicht mehr direkt überprüft werden! Beweis Wir betrachten ein reduziertes vollständiges Repräsentantensystem r1 , r2 , · · ·, rφ(m) . Nach dem obigen Hilfssatz ist dann auch ar1 , ar2 , · · ·, arφ(m) ein reduziertes vollständiges Repräsentantensystem. Dies besagt, dass sowohl die Menge {r1 , r2 , · · ·, rφ(m) } als auch die Menge {ar1 , ar2 , · · ·, arφ(m) } jeweils modulo m dieselben Zahlen beinhalten (u. U. in anderer Reihenfolge), d. h. wenn man für jedes dieser Repräsentantensysteme alle Zahlen miteinander multipliziert, stimmen die beiden Produkte modulo m miteinander überein, es gilt (ar1 ) · (ar2 ) · . . . · (arφ(m) ) ≡ r1 · r2 · . . . · rφ(m) mod m. Beispiel 2.6 Der Satz von Euler 8 Klammern wir jeweils den Faktor a aus, so erhalten wir aφ(m) · r1 · r2 · . . . · rφ(m) ≡ r1 · r2 · . . . · rφ(m) mod m. Dies besagt gerade, dass m ein Teiler ist von aφ(m) − 1 · r1 · r2 · . . . · rφ(m) . Da aber alle Faktoren r1 , r2 , · · ·, rφ(m) zu m teilerfremd sind, muss m ein Teiler von aφ(m) − 1 sein, d. h. aφ(m) ≡ 1 mod m, was gerade die Behauptung war. Folgerung 2.1 gilt: Beweis Für zwei Zahlen a und p, von denen p eine Primzahl und kein Teiler von a ist, ap−1 ≡ 1 mod p. Nach der oben gemachten Vorausssetzung sind a und p teilerfremd. Auÿerdem gilt: Die Aussage ergibt sich somit unmittelbar aus dem Satz. φ(p) = p − 1. Für zwei Zahlen a und m, die zueinander teilerfremd sind, hat die Kongruenz für jedes b ∈ Z eine eindeutige Lösung modulo m. Beweis 1) Zunächst zeigen wir, dass es überhaupt eine Lösung gibt: Folgerung 2.2 ax ≡ b mod m x1 := aφ(m)−1 b ist eine Lösung, denn: ax1 = aφ(m) b ≡ 1 · b mod m ≡ b mod m. 2) Wir nehmen einmal an, es gäbe eine weitere Lösung x2 dieser Kongruenzgleichung. Dann muss gelten ax1 ≡ ax2 mod m, d. h. m ist ein Teiler von a(x1 −x2 ). Da a und m teilerfremd sind, muss m ein Teiler von (x1 − x2 ) sein, d. h. x2 ≡ x1 mod m. Folglich gibt es modulo m genau eine Lösung. Bemerkung Eine ganz andere Frage ist es, wie man diese (modulo m) eindeutige Lösung x ndet! 3 Verschlüsselung von Nachrichten mittels des RSA-Verfahrens Grundlage der Verschlüsselung ist eine Zahl n ∈ N, die sich darstellen lässt als Produkt n = p · q zweier Primzahlen. Um das Aunden der beiden Primteiler p und q in angemessener Zeit unmöglich zu machen, sollte p, q > 1010 gelten. Nun werden alle im Text verwendeten Zeichen, also unter anderem alle Buchstaben, Zahlen r1 , r2 , · · · < n zugeordnet, wobei für alle ri gilt: (ri , n) = 1, d. h. ri und n sind teilerfremd (was nicht allzu schwer ist, da n ja nur die beiden Primteiler p und q hat). Übersetzt in diese Zahlensprache hat nun eine Botschaft folgende Gestalt: Verschlüsselung: |r2 |r17 |r8 |r1 | · · · . Derjenige, der die Botschaft übermitteln soll, kennt nun neben n auch noch eine Zahl s ∈ N mit (s, φ(n)) = 1, wobei φ(n) = (p − 1)(q − 1) gilt. Übermittelt wird nun Übermittlung: |r2 s mod n|r17 s mod n|r8 s mod n|r1 s mod n| · · · . LITERATUR 9 Der Empfänger kennt nun neben n noch eine Zahl t ∈ N, für die gilt s · t = Entschlüsselung: 1 mod φ(n). Diese Bedingung hört sich zunächst sehr allgemein an, wegen (s, φ(n)) = 1 ist t jedoch modulo n eindeutig (siehe Folgerung 1.2 oben). Der Empfänger bildet nun t t t t |(r2 s mod n) |(r17 s mod n) |(r8 s mod n) |(r1 s mod n) | · · · und erhält wegen (ri )s t (∗) = ris·t = ri mod n die ursprüngliche Zahlenfolge |r2 |r17 |r8 |r1 | · · · . Beweis von (∗) s und t sind so gewählt, dass s · t ≡ 1 mod φ(n) gilt, d. h. s · t − 1 ist ein Vielfaches von φ(n), lässt sich also z. B. schreiben als s · t − 1 = k · φ(n) mit einer geeigneten Zahl k ∈ N. Gemäÿ dem Satz von Euler gilt ri φ(n) ≡ 1 mod n. Diese Kongruenz gilt weiterhin, wenn wir beide Seiten mit einer natürlichen Zahl k potenzieren, d. h. ri kφ(n) ≡ 1 mod n. Fügen wir beide Gedanken zusammen, so ergibt sich ri s·t−1 ≡ 1 mod n. Multiplizieren wir beide Seiten noch mit ri , so ergibt sich gerade die Behauptung der Gleichung (∗). Ein Vorteil dieses Verschlüsselungsverfahrens ist es, dass der Verschlüssler von s, ohne Kenntnis von p und q, nicht auf t schlieÿen kann (und umgekehrt), d. h. der Verschlüssler kennt zwar die aktuell zu verschlüsselnde Botschaft, sein Wissen bringt aber nichts zum Entschlüsseln anderer Botschaften! Bemerkung Dieses RSA-Verfahren1 ist ein sogenanntes Public-key-Verfahren: Die beiden Gröÿen n und s, die zum Verschlüsseln von Nachrichten benötigt werden, können allgemein bekannt sein. Trotzdem können Nachrichten nicht ohne Kenntnis von t entschlüsselt werden. Der Witz an der Sache ist, dass man ohne Kenntnis der Faktorisierung n = p · q von n und s nicht auf t schlieÿen kann zumindest nicht in realistischer Zeit, falls n hinreichend groÿ gewählt wurde. Bei der Suche nach möglichst groÿen Primzahlen untersucht man verschiedene Familien von Zahlen, so z. B. die Mersenneschen Zahlen, das sind Zahlen, die sich schreiben lassen als 2n − 1. Die gröÿte heutzutage veröentlichte Mersennesche Primzahl lautet Bemerkung 26 972 593 − 1. Sie hat 2 098 960 Stellen. Schon Leonhard Euler (1707 - 1783) wies nach, dass die 10-stellige Mersennesche Zahl 231 − 1 prim ist. Literatur [Bau97] F. L. Bauer. Entzierte Geheimnisse. Springer, Berlin, 1997. [Beu98] A. Beutelspacher, J. Schwenk, K.-D. Wolfenstetter. Moderne Verfahren der Kryptographie. Vieweg Verlag, Braunschweig, 1998. [Buc99] J. Buchmann. Einführung in die Kryptographie. Springer, Berlin, 1999. 1 benannt nach Rivest, Shamir, Adleman 1978 LITERATUR 10 [Int01] Earliest Uses of Symbols of Number Theory. http://members.aol.com/je570/nth.html. [Kip97] R. Kippenhahn. Verschlüsselte Botschaften. Rowohlt, Reinbek, 1997. [Sch93] R.-H. Schulz. Primzahlen in öentlichen Chirierverfahren. mathematik lehren, 61, 56-64, 1993.