|
|
|
Παράρτημα
: Παράδειγμα Κρυπτογράφησης RSA
Απλοϊκό Εκπαιδευτικό Παράδειγμα Αλγορίθμου Κρυπτογράφησης
RSA
Αλγόριθμος
υπολογισμού
κλειδιών |
Αλγόριθμος
Κρυπτο-Αποκρυπτογράφησης |
Ορίζω Πρώτο
Ακέραιο : p = 11 |
Plain
Text |
|
Cipher |
|
Plain
Text |
Ορίζω Πρώτο
Ακέραιο : q = 3 |
P |
Pe |
C
= Pe
mod n |
Cd |
P
= Cd
mod n |
Υπολογίζω :
n = p*q = 33 |
A |
1 |
1 |
1 |
A |
1 |
1 |
A |
Υπολογίζω :
z = (p-1)*(q-1) = 20 |
B |
2 |
128 |
29 |
] |
24389 |
2 |
B |
Ορίζω Πρώτο
ως προς z Ακέραιο: d = 3 |
C |
3 |
2187 |
9 |
I |
729 |
3 |
C |
Λύνω ως προς
e την
e*d = 1 mod z : e = 7 |
D |
4 |
16384 |
16 |
P |
4096 |
4 |
D |
Ορισμός
Ζεύγους
Κλειδιών
|
E |
5 |
78125 |
14 |
N |
2744 |
5 |
E |
Δημόσιο :
(e,n) = (7,33) |
F |
6 |
279936 |
30 |
^ |
27000 |
6 |
F |
Μυστικό :
(d,n) = (3,33) |
G |
7 |
823543 |
28 |
\ |
21952 |
7 |
G |
|
H |
8 |
2097152 |
2 |
B |
8 |
8 |
H |
|
I |
9 |
4782969 |
15 |
O |
3375 |
9 |
I |
|
J |
10 |
10000000 |
10 |
J |
1000 |
10 |
J |
|
K |
11 |
19487171 |
11 |
K |
1331 |
11 |
K |
|
L |
12 |
35831808 |
12 |
L |
1728 |
12 |
L |
|
M |
13 |
62748517 |
7 |
G |
343 |
13 |
M |
|
N |
14 |
105413504 |
20 |
T |
8000 |
14 |
N |
|
O |
15 |
170859375 |
27 |
[ |
19683 |
15 |
O |
|
P |
16 |
268435456 |
25 |
Y |
15625 |
16 |
P |
|
Q |
17 |
410338673 |
8 |
H |
512 |
17 |
Q |
|
R |
18 |
612220032 |
6 |
F |
216 |
18 |
R |
|
S |
19 |
893871739 |
13 |
M |
2197 |
19 |
S |
|
T |
20 |
1280000000 |
26 |
Z |
17576 |
20 |
T |
|
U |
21 |
1801088541 |
21 |
U |
9261 |
21 |
U |
|
V |
22 |
2494357888 |
22 |
V |
10648 |
22 |
V |
|
W |
23 |
3404825447 |
23 |
W |
12167 |
23 |
W |
|
X |
24 |
4586471424 |
18 |
R |
5832 |
24 |
X |
|
Y |
25 |
6103515625 |
31 |
_ |
29791 |
25 |
Y |
|
Z |
26 |
8031810176 |
5 |
E |
125 |
26 |
Z |
RSA Encryption
Ο λήπτης ενός μηνύματος παράγει δύο (μεγάλους) πρώτους ακεραίους
p, q και έναν ακέραιο d, ο οποίος είναι πρώτος προς τον z
= (p-1)*(q-1). Υπολογίζει τον n = p*q και τον αντίστροφο e
του d modulo z [από την εξίσωση : (e*d) = 1 (mod z)]. To ζεύγος
(e,n), δημόσιο κλειδί, τοποθετείται στον δημόσιο κατάλογο
κλειδιών και το ζεύγος (d,n), ιδιωτικό κλειδί, κρατείται μυστικό.
Ο αποστολέας μηνύματος P κάνει χρήση του ζεύγους (e,n) του
παραλήπτη και μετασχηματίζει το μήνυμα P σε C σύμφωνα με το
γνωστό σχήμα : C = Pe mod n. Η παραγόμενη ακολουθία αριθμών
ή χαρακτήρων διαβιβάζεται στον παραλήπτη.
Ο παραλήπτης επανασυνθέτει το μήνυμα P από το C με εφαρμογή
του τύπου : P = Cd mod n.
Η ασφάλεια της απόκρυψης βασίζεται στο γεγονός της μη ύπαρξης
γρήγορων αλγορίθμων για την παραγοντοποίηση αριθμών. Αν οι
p, q είναι αρκετά μεγάλοι, το γινόμενό τους n δεν μπορεί να
παραγοντοποιηθεί μέσα σε λογικό χρόνο (ή ισοδύναμα : δεν μπορούμε
να υπολογίσουμε το z = (p-1)*(q-1) και άρα πιθανές τιμές των
d, e).
|
|
|
|