Whitfield Diffie und Martin Hellman hatten in den 1970er Jahren eine Theorie zur Public-Key-Krytographie veröffentlicht. Die drei Mathematiker Rivest, Shamir und Adleman versuchten diese Theorie zu widerlegen. Dabei stiessen sie auf ein Verfahren, bei dem sie keine Angriffspunkte fanden.
Aus diesem Verfahren entstand 1977 RSA, das erste veröffentlichte Verschlüsselungsverfahren.
RSA basiert auf einem privaten Schlüssel (private key) und einem öffentlichen Schlüssel (public key).
Beide Schlüssel bestehen aus jeweils zwei Zahlen, die mit den Variablen d
, e
und N
bezeichnet werden:
e
und N
d
und N
RSA-Modul
genannt.Um die Schlüssel zu berechnen, geht man wie folgt vor:
p
und q
.p = 11
und q = 13
N = p * q
.N
: ϕ(N) = (p-1) * (q-1)
d
mit Hilfe des erweiterten euklidischen Algorithmus anhand der Formel e * d + k * ϕ(N) = 1
.Somit erhalten wir den private key (47, 143) und den public key (23, 143).
Der Absender möchte die Klartext-Nachricht t
verschlüsseln und dabei den Chiffre-Text c
erhalten.
Er berechnet c = ( t
e
) mod N
Der Absender möchte die Zahl 7 verschlüsselt senden.
c = ( 7
23
) mod 143 = 2
Der Empfänger erhält den Chiffre-Text c
und möchte den Klartext t
erhalten.
Er berechnet t = ( c
d
) mod N
.
Der Empfänger erhält den Chiffre-Text 2
.
t = ( 2
47
) mod 143 = 7