RSA Beispiel: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(26 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
<span id="verschlüsselung"></span>
= Verschlüsselung =
= Verschlüsselung =


Bei der Verschlüsselung einer Nachricht werden folgende gebraucht, die wir wie folgt wählen:
Bei der Verschlüsselung einer Nachricht werden folgende Variabeln gebraucht, die wir wie folgt wählen:


* Nachricht <math>N</math>: ''B'' -&gt; 2
* Nachricht <math>N</math>: ''B'' -&gt; 2
Zeile 8: Zeile 7:
* erster Teil des öffentlichen Schlüssels <math>oS_{1}</math>: 14
* erster Teil des öffentlichen Schlüssels <math>oS_{1}</math>: 14


<!----->
test test test estes set set
test test test estes set set
test test test estes set set
test  test estes set set
test test test estes set set
test test test estes set set
Die Verschlüsselung erfolgt durch die folgende Formel:
Die Verschlüsselung erfolgt durch die folgende Formel:


Zeile 25: Zeile 17:
Wodurch man die verschlüsselte Nachricht <math>vN = 4</math> bekommt, die zum Buchstaben ''D'' übersetzt wird.
Wodurch man die verschlüsselte Nachricht <math>vN = 4</math> bekommt, die zum Buchstaben ''D'' übersetzt wird.


<span id="entschlüsselung"></span>
= Entschlüsselung =
= Entschlüsselung =


Zeile 33: Zeile 24:
* zweiter Teil des öffentlichen Schlüssels <math>oS_{2}</math>: 11
* zweiter Teil des öffentlichen Schlüssels <math>oS_{2}</math>: 11


<!----->
Damit kann man die Nachricht folgendermaßen entschlüsseln:
Damit kann man die Nachricht folgendermaßen entschlüsseln:


Zeile 40: Zeile 30:
Was mit der verschlüsselten Nachricht wie folgt aussieht:
Was mit der verschlüsselten Nachricht wie folgt aussieht:


<math>D ^ {11}\ \bmod\ 14 = 4 ^ {11}\ \bmod\ 14 = 2 = B</math>
<math> 4 ^ {11}\ \bmod\ 14 = 4 ^ {11}\ \bmod\ 14 = 2 = B</math>
 
<span id="schlüsselgeneration"></span>
= Schlüsselgeneration =
 
Für die Generierung der Schlüssel wählt man 2 nicht-identische Primzahlen ''p, q'' (in der Praxis hunderte von Stellen lang und “liegen nicht nahe beinander”). Dann kann man alle Teile wie folgt berechnen:
 
<math>oS_{1} = p \times q</math>
 
Wähle eine zu <math>(p - 1) \times (q - 1)</math> teilerfremde Zahl ''pS'', d.h. eine Zahl die beim Teilen einen Rest erzeugt. Diese Zahl wird private Schlüssel.
 
Wähle eine zufällige positive Zahl ''x'' und addiere ein Vielfaches von <math>oS_{1}</math> zu ''pS'':
 
<math>oS_{2} = pS + x \times oS_{1}</math>

Aktuelle Version vom 15. September 2025, 10:58 Uhr

Verschlüsselung

Bei der Verschlüsselung einer Nachricht werden folgende Variabeln gebraucht, die wir wie folgt wählen:

  • Nachricht N: B -> 2
  • privater Schlüssel pS: 5
  • erster Teil des öffentlichen Schlüssels oS1: 14

Die Verschlüsselung erfolgt durch die folgende Formel:

NpS mod oS1=vN

Was mit den gewählten Zahlen wie folgt aussieht:

25 mod 14=4

Wodurch man die verschlüsselte Nachricht vN=4 bekommt, die zum Buchstaben D übersetzt wird.

Entschlüsselung

Für die Entschlüsselung benötigt man zwei Zahlen, die zusammen einen öffentlichen Schlüssel bilden:

  • erster Teil des öffentlichen Schlüssels oS1: 14
  • zweiter Teil des öffentlichen Schlüssels oS2: 11

Damit kann man die Nachricht folgendermaßen entschlüsseln:

vNoS2 mod oS1=N

Was mit der verschlüsselten Nachricht wie folgt aussieht:

411 mod 14=411 mod 14=2=B