Zahlentheoretische Grundlagen für das RSA

Werbung
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.
Herunterladen