Das RSA-Verfahren

Ein schwieriges Problem
Betrachten wir noch mal die Situation von Alice, Bob und Eva.[br]Die bisherigen Schlüsselverfahren verlangten , dass Alice und Bob den [br]gleichen[br]Schlüssel haben. Das heißt, sowohl bei der Caesar- als auch bei der [br]Vigenère-Verfahren als auch beimDiffie-Hellman Verfahren müssen alle [br]Kommunikationspartner den gleichen Schlüssel kennen.[br][br]Dies stellt doch manchmal ein Problem dar, überlege dir warum ?
Was nun?
Die Lösung heißt asymmetrische Verschlüsselung.[br][br]Die [color=#ff0000][i][u]asymmetrische Verschlüsselun[/u][/i]g[/color] basiert darauf, dass beide Kommunikationspartner einen [color=#ff0000][u]öffentlichen [/u][/color]und einen [color=#ff0000][u]privaten Schlüsse[/u]l[/color][br] verwenden. [br]Dabei muss der öffentliche Schlüssel sich mittels Einwegfunktion [br]berechnen lassen und dieser Schlüssel darf publik gemacht werden.[br]Zusätzlich muss der private Schlüssel geheim gehalten werden.Die [br]verschlüsselte Nachricht ist dann eine Kombination aus geheimen [br]Schlüssel des Senders als auch öffentlichen Schlüssel des Senders ,sowie[br]die zu verschlüsselnde Klartextnachricht.[br]Dabei dürfen öffentliche Schlüssel und die verschlüsselte Nachricht in [br]die Hände dritter, in unserem Fall Eva gelangen. [br]Ein sehr modernes und bekanntes Verfahren ist deshalb das RSA [br]Verfahren, das auf der asymmetrischen Verschlüsselung basiert.[br][br]Folgendes Schaubild soll die Schlüsselerzeugung demonstrieren:
Schaubild zur Schlüsselerzeugung
Wie funktioniert die Schlüsselerzeugung?
Die Schlüsselerzeugung funktioniert in 3 Schritten:[br][br][br]1. Man wählt zwei Primzahlen [math]p[/math] und [math]q[/math]. Beachte aber, dass diese beiden Primzahlen sollen möglichst groß gewählt werden.[br][br][br]2. Dann berechnet man [math]n=p+q[/math] und [math]\phi(n)=(p-1)(q-1)[/math][br][br][br]3. Dann wählt man zwei natürliche Zahlen [math]e[/math] und [math]d[/math], sodass der größte gemeinsame Teiler [math]ggT(e,\phi(n))=1[/math] und [math]\text{d mod \phi(n) = 1 }[/math]gilt.[br][br]Zusammenfassend ist [math]d[/math] der privaten Schlüssel, [math]e[/math] und [math]n[/math] bilden den öffentlichen Schlüssel. [br]Des Weiteren sind [math]p,q[/math] und [math]\phi(n)[/math] möglichst vernichtet werden.[br][br]Ein weiteres Schaubild zu Visualisierung sollte helfen:[br]
Schaubild Schlüsselerzeugung Algorithmus
Beispielhafte Berechnung
Wähle [math]p=17[/math] und [math]q=11[/math].[br][br]Dann gilt[br][math]\text{n=p+q=17*11=187}[/math].[br][br]Des Weitern bestimme ich[br][math]\phi\text{(n)=(p-1)*(q-1)=(17-1)*(11-1)[br]=16*10 = 160}[/math].[br][br]Wir wählen nun [math]e=19[/math] und überprüfen, ob e teilerfremd zu [math]160[/math] ist. Dazu gebrauchen wir den erweiterten euklidischen Algorithmus.[br][math]160=8*19+8[/math][br][math]19=2*8+3[/math][br][math]8=2*3+2[/math][br][math]3=1*2+1[/math][br][br]Daraus folgt, dass [math]e[/math] und [math]160[/math] teilerfremd sind.[br][br][br]Nun bestimmen wir mittels Bézout-Koeffizienten das [math]d[/math].[br][math]1=3-(1*2)[/math][br][math]=3-(8-2*3)[/math][br][math]=3*3-8*1[/math][br][math]=3*(19-2*8)-8*1[/math][br][math]=3*19-7*8[/math][br][math]=3*19-7(160-8*19)[/math][br][math]=59*19-7*16.[/math][br][br]Dabei ist der Koeffizient vor der [math]19[/math] das zu suchende [math]d[/math]. Also [math]d=59[/math].[br][br]
Aufgabe 1
[u]Berechne[br][br][/u]für [math]p=31,q=53[/math] und [math]e=19[/math][br][br]den Teil des öffentlichen Schlüssels [math]n[/math] und den geheimen Schlüssel [math]d[/math].
Aufgabe 2
[u]Berechne[br][br][/u]für [math]p=17,q=43[/math] und [math]e=45[/math][br][br]den Teil des öffentlichen Schlüssels [math]n[/math] und den geheimen Schlüssel [math]d[/math].
Ver- und Entschlüsselung
Möchte man nun konkrete Nachrichten verschlüsseln, gelingt dies wie [br]folgt: [br][br]Wie verwenden nun die öffentlichen Schlüssel unseres Kommunikationspartners [math]e,n[/math]. Dann nehmen wir ein Klartext [math]m[/math] in den natürlichen Zahlen und dieser kann wie folgt verschlüsselt werden:[br][br]Unser Kommunikationspartner erhält dann die verschlüsselte[br]Nachricht [math]c[/math]und kann diese wie folgt entschlüsseln: [br][br]Formel zu Verschlüsselung:[math]\text{c=m^e mod n}[/math][br][br]Unser Kommunikationspartner entschlüsselt dann die Nachricht wie folgt: [math]\text{m = c^d mod n}[/math][br][br][br]Folgendes Schaubild illustriert dies ganz gut:
Schaubild Ver- und Entschlüsselung
Aufgabe 3
[u]Verschlüssele[/u] [br][br]die Nachricht [math]m=4[/math] mit [math]e=13[/math] und[math]n=77[/math] und gib das resultierende [math]c[/math] an.
Aufgabe 4
[u]Entschlüssele [br][/u][br]die Nachricht [math]c=15[/math] mit [math]d=59[/math] und [math]n=133[/math] und gib das resultierende [math]m[/math] an.
Close

Information: Das RSA-Verfahren