You are on page 1of 4

To Αφινικό Κρυπτοσύστημα

P= C =Z 26
K = {(a,b) ∈ (Z 26 ×Z 26) }. Αν K = (a,b) τότε ek (x) = ax+b

Έστω ax+b = y (mod 26) ⇒ ax=y-b(mod 26) ⇒ (a,26) :σχετικοί πρώτοι.


Θα πρέπει να μπορώ να λύσω ως προς x και μάλιστα να έχω μοναδική λύση.
Αυτό συμβαίνει αν και μόνο αν ΜΚΔ (a,26) =1.
Αν θεωρήσουμε την ισοδυναμία a⋅x=1(mod 26) και συμβολίσουμε τη λύση της με x=a-1
τότε dk(y) = a-1 (y-b) (mod 26).

ΠΑΡΑΔΕΙΓΜΑ
Έστω το κλειδί Κ=(7,3) και ο ΜΚΔ (7,26)=1 ισχύει ek (x) = 7x+3 (mod 26).
Για τη συνάρτηση αποκωδικοποίησης πρέπει 7-1 =15 αφού 7 x = 1 (mod 26). Επομένως
dk(y) = 15(y-3) =15 y -19 (mod 26)

!"Κωδικοποίηση
Textplain = hot
h → 7 ⇒ ek (7) = 7*7 +3 = 52 = 0 (mod 26)
o → 14 ⇒ ek (14) = 7*14+3 =101 =23(mod 26)
t → 19 ⇒ ek (19) = 7*19+3 =136 =6 (mod 26)
Άρα Cipher Text = AXG

!"Αποκωδικοποίηση
0 → A ⇒ dk(0) = 15*0 -19 = 7(mod 26)
23 → X ⇒ dk(23) = 15*23-19 = 14(mod 26)
6 → G ⇒ dk(6) = 15*6 – 19 = 19 (mod 26)
Άρα Textplain = hot

Σημείωση
Για να λύσουμε την 7x =1 (mod 26) :
Γνωρίζουμε ότι αν ΜΚΔ (a,b) = d τότε ∃ x0 , y0 ∈ Z :d= a x0+y0 και πρέπει να βρούμε τα
x0 , y0, d.
Π.χ 26 =7⋅3+5 και 7=5⋅1+2 και 5=2⋅2+1.
Προχωράμε ανάποδα:1=5-2⋅2 =5-2 (7-5)= -2⋅7 +3⋅5 = -2⋅7+3 (26-3⋅7) =3⋅26-11⋅7
Άρα 26⋅3+7(-11) όπου x0 =3 και y0 =7. Είναι 7(-11)=1 (mod 26) και –11=15 στο Ζ26
Δηλαδή a-1 =15.
To Κρυπτοσύστημα Vigenere
P= C =( Z 26 ) m = K
m ∈ N (m≠ 0)
k ∈ K = ( Z 26 ) m ⇒ K=(k1,k2,...,km ) με ki ∈ Z 26
ek (x1,x2,...,xm) =( x1+k1, x2+k2,..., xm +km )
dk (y1,y2,...,ym) =( y1-k1, y2-k2,..., ym -km )

Παρατηρήσεις

#"Το σύστημα είναι πολυαλφαβητικό άρα η κρυπτοανάλυση είναι πιο δύσκολη από ότι
στα προηγούμενα μονοαλφαβητικά συστήματα.
#"Το πλήθος των κλειδιών είναι 26m . Επειδή το m αυθαίρετο μπορούμε να φτιάξουμε
κρυπτοσύστημα με όσο αριθμό κλειδιών επιθυμώ.
#"Δεν χρειάζεται το κείμενο να έχει πλήθος γραμμάτων πολλαπλάσιο του m.

Παράδειγμα

Έστω m=6 και κλειδί η λέξη CIPHER , δηλαδή Κ=(2,8,15,7,4,17)

#"Κωδικοποίηση

Textplain = this cryptosystem is not secure


Μετατρέπουμε το μήνυμα σε αριθμούς, ομαδοποιούμε ανά 6 και προσθέτουμε το κλειδί
στο Z26

Μήνυμα 19 7 8 18 2 17 24 15 19 14 18 24 18 19 4 12 8 18 13 14 19 18 4 2 20 17 4
Κλειδί 2 8 15 7 4 17 2 8 15 7 4 17 2 8 15 7 4 17 2 8 15 7 4 17 2 8 15
Άθροισμα 21 15 23 25 6 8 0 23 8 21 22 15 20 1 19 19 12 9 15 22 8 25 8 19 22 25 19
Κρυπτο/μα V P X Z G I A X I V W P U B T T M J P W I Z I T W Z T
To Κρυπτοσύστημα του Hill
P= C =( Z 26 ) m = K
m ∈ N (m≠ 0)
K = Μ mxm (= Z 26 )
Αν Χ= (x1,x2,...,xm) ∈ P και Κ=(ki,j) | 1 ≤ i ≤ m , 1≤ j ≤ m
Τότε y= ek (x) = (y1,y2,...,ym) =x⋅K
Πρέπει να ορίσουμε το K-1 οπότε ορίζουμε dk (y)=y K-1
Για να υπάρχει ο αντίστροφος πίνακας του K θα πρέπει ΜΚΔ (det K,26) =1

Παράδειγμα

11 8
Κλειδί Κ=   και det K =53 = 1(mod 26)
3 7 

Plaintext: july

#"Κωδικοποίηση
Είναι m=2 άρα
11 8
ju → (9,20) ⇒ (9,10)   = (99+60,72+140)=(3,4) =DE
3 7 

11 8 
ly → (11,24) ⇒ (11,24)   = (121+72,88+168)=(11,22) =LW
3 7 
δηλαδή το κρυπτογραφημένο μήνυμα είναι DELW.

#"Αποκωδικοποίηση

7 − 8 7 18 
Κ-1 =  =   (mod 23)
− 3 11   23 11 

7 18 
DE → (3,4) ⇒ (3,4)   = (9,20) = ju
 23 11 

7 18 
LW→ (11,22) ⇒(11,22)   = (11,24)= ly
 23 11 

Παρατηρήσεις

Αν det K ≠ 1 τότε (det K)-1 συμβολίζει τον αντίστροφο της det K στον δακτύλιο Z26
Δηλαδή θα πρέπει να λύσουμε την ισοδυναμία (det K)⋅x= 1 (mod 26)
6.To Κρυπτοσύστημα μεταθέσεων
Ειδική περίπτωση του κρυπτοσυστήματος του Hill

Έστω π μετάθεση του συνόλου S=1,2,…,m


Στη μετάθεση π αντιστοιχεί ένας πίνακας (πίνακας διαμεταθέσεων ) Κπ ο οποίος ορίζεται ως
εξής: Κπ= ki,j με ki,j= 1, αν i = π ( j )

 0 , αλλι ώ ς
P= C =( Z 26 ) m
eπ (x1,x2,...,xm) =( xπ(1), xπ(2),..., xπ(m) )
dπ (y1,y2,...,ym) =( yπ(1)-1, yπ(2)-1,..., yπ(m) -1 )

ΠΑΡΑΔΕΙΓΜΑ

Kλειδί π 1 2 3 4 5 6 και m=6


3 5 1 6 4 2

Textplain : shesellsseashellsbytheseashore

#"Κωδικοποίηση
Παίρνουμε ανά 6 τα γράμματα της ακολουθίας του μηνύματος και τα αντιστοιχούμε
σύμφωνα με τον πίνακα μεταθέσεων του κλειδιού

textplain s hes e l l s s e a s h e l l s b ………


μετάθεση 3516 4 2 3 516 4 2 3 51 6 4 2 ……….
New textplain ee sl s h s a l s e s l s h b l e ............

#"Αποκωδικοποίηση
Για την αποκρυπτογράφηση πρέπει να ξέρουμε τον π-1
Είναι π-1
1 2 3 4 5 6
3 5 1 6 4 2

You might also like