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
Kommentare zum Post (Atom)
Keine Kommentare:
Kommentar veröffentlichen