RSA Beispiel: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
= 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 der 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>
= Verschlüsselung =
= Verschlüsselung =


Zeile 31: Zeile 43:


<math>D ^ {11}\ \bmod\ 14 = 4 ^ {11}\ \bmod\ 14 = 2 = B</math>
<math>D ^ {11}\ \bmod\ 14 = 4 ^ {11}\ \bmod\ 14 = 2 = B</math>
= 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>

Version vom 21. März 2023, 00:23 Uhr

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:

oS1=p×q

Wähle eine zu (p−1)×(q−1) teilerfremde Zahl pS, d.h. eine Zahl die beim Teilen einen Rest erzeugt. Diese Zahl wird der private Schlüssel.

Wähle eine zufällige positive Zahl x und addiere ein Vielfaches von oS1 zu pS:

oS2=pS+x×oS1

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:

D11 mod 14=411 mod 14=2=B