RSA Beispiel: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(35 dazwischenliegende Versionen desselben Benutzers 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
* privater Schlüssel <math>pS</math>: 5+ <span style="color:#ff0000">erster</span> Teil des öffentlichen Schlüssels <math>oS_{1}</math>: 14
+
* privater Schlüssel <math>pS</math>: 5
 +
* erster Teil des öffentlichen Schlüssels <math>oS_{1}</math>: 14
  
<!----->
 
 
Die Verschlüsselung erfolgt durch die folgende Formel:
 
Die Verschlüsselung erfolgt durch die folgende Formel:
  
Zeile 18: 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 =
  
 
Für die Entschlüsselung benötigt man zwei Zahlen, die zusammen einen öffentlichen Schlüssel bilden:
 
Für die Entschlüsselung benötigt man zwei Zahlen, die zusammen einen öffentlichen Schlüssel bilden:
  
* erster Teil des öffentlichen Schlüssels <math>oS_{1}</math>: 14+ zweiter Teil des öffentlichen Schlüssels <math>oS_{2}</math>: 11
+
* erster Teil des öffentlichen Schlüssels <math>oS_{1}</math>: 14
 +
* 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 33: Zeile 31:
  
 
<math>D ^ {11}\ \bmod\ 14 = 4 ^ {11}\ \bmod\ 14 = 2 = B</math>
 
<math>D ^ {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 10. Mai 2023, 00:36 Uhr

Verschlüsselung

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

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

Die Verschlüsselung erfolgt durch die folgende Formel:

Was mit den gewählten Zahlen wie folgt aussieht:

Wodurch man die verschlüsselte Nachricht 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 : 14
  • zweiter Teil des öffentlichen Schlüssels : 11

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

Was mit der verschlüsselten Nachricht wie folgt aussieht: