Was ist RSA
RSA ist ein asymetrisches Verschlüsselungsverfahren. Das heißt, dass man für das Verschlüsseln und für's Entschlüsseln jeweils einen eigenen Schlüssel braucht - den Privaten und den Öffentlichen.
Ein kleine Beispiel
Wenn wir nun diesen Text verschlüsseln wollen:
TEST
Dann müssen wir ihn zuerst in Zahlen umwandeln...
Als Beispiel vl. so:
a = 01
b = 02
c = 03
..
Wir fassen den Text in 2er-Paketen zusammen. Also:
TE ST
2005 1920
Schlüsselerzeugung
Für eine RSA Entschlüsselung und Verschlüsselung brauchen wir einige Vars (=Variablen ^^):
p //Privater
q //Privater
d //Privater
N //Öffentlicher
e //Öffentlicher
N muss größer sein als 2626 (weil der größte Wert den wir verschlüsseln können - ZZ - in Zahlen 2626 ist)
N = p*q
p = 47 //Eine Primzahl - weil es nur ein Beispiel ist klein aber sonst sollte sie ein paar 1000 Stellen haben ^^
q = 59 //gleiche wie bei p. p und q dürfen/sollen aber nicht gleich sein
N = 47*59
N = 2773
phi(N) = (p-1)*(q-1) //Somit finden wir eine Teilerfremde Zahl
phi(N) = 46*58
phi(N) = 2668
e = 17 //zufällig. Muss aber Teilerfremd zu phi(N) sein. Also ggT(phi(N), e) = 1
d = e mod phi(N)
d = 157
Verschlüsselung
K = Klartext
C = chiffrierter Text/Verschlüsselter Text
C= K^e mod N
C(1) = 2005^17 mod 2773 = 0117
C(2) = 1920^17 mod 2773 = 2109
C = 0017 2109
C=_Q UI
Entschlüsselung
K = C^d mod N
K(1) = 0117^157 mod 2773 = 2005
K(2) = 2109^157 mod 2773 = 1920
K = 2005 1920
K = te st
K = test
und es hat funktioniert.
Das nächste Mal erkläre ich vielleicht, wie man das Dokument auch noch Siginiert
Liebe Grüße
Philipp9494
Mittwoch, 5. Dezember 2007
Abonnieren
Posts (Atom)