Κρυπτανάλυση

advertisement
Κρυπτογραφία
3. Κλασσικοί Αλγόριθμοι
Κέρκυρα, 2012
Ε. Μάγκος
Syllabus
Α. Αλγόριθμοι Αντικατάστασης (Μονοαλφαβητικοί):
3.1. Αλγόριθμος Ολίσθησης (Shift Cipher) + Κρυπτανάλυση
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης (Substitution Cipher)
+ Κρυπτανάλυση
3.3. Αλγόριθμος Affine (Affine Cipher) + Κρυπτανάλυση
Β. Αλγόριθμοι Αντικατάστασης (Πολυαλφαβητικοί):
3.4. Αλγόριθμος Vigenere (Vigenere Cipher) + Κρυπτανάλυση
3.5. Αλγόριθμος Hill (Hill Cipher) + Κρυπτανάλυση
Γ. Αλγόριθμοι Αναδιάταξης:
3.6. Αλγόριθμος Αντιμετάθεσης (Permutation Cipher)
J. Katz, Y. Lindell. Introduction to Modern
Cryptography. Chapman & Hall/CRC, 2008.
Κρυπτοσύστημα
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
Αλγόριθμοι Αντικατάστασης
Schneier, Bruce. Applied
Cryptography. John Wiley
& Sons, Inc., 2nd edition,
1996.
Κλασσικοί (Μονοαλφαβητικοί και Πολυαλφαβητικοί)

1.
Κάθε χαρακτήρας του αρχικού κειμένου (plaintext) αντικαθίσταται
από κάποιον χαρακτήρα στο κρυπτογραφημένο κείμενο (ciphertext)
Μονοαλφαβητικοί Αλγόριθμοι

2.
Ένας χαρακτήρας κρυπτογραφεί πάντα τον ίδιο αρχικό χαρακτήρα
Πολυαλφαβητικοί Αλγόριθμοι

Ένας χαρακτήρας κρυπτογραφεί περισσότερους από έναν αρχικούς χαρακτήρες

Ουσιαστικά αποτελείται από πολλούς
απλούς αλγόριθμους (μονοαλφαβητικούς) !
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
Α. Αλγόριθμοι Αντικατάστασης (Μονοαλφαβητικοί)
*
3.1 Αλγόριθμος Ολίσθησης
(Shift Cipher) *
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.1 Αλγόριθμος Ολίσθησης
Τhe Shift Cipher
Έστω ότι Κ = 11 και το μήνυμα: we will meet at midnight
1. Μετατρέπουμε το μήνυμα σε αριθμούς από το 0-25 (στο Z26)
we will meet at midnight
2.
Προσθέτουμε το 11 (modulo 26) σε κάθε αριθμό
3.
Μετατρέπουμε σε αλφαβητικούς χαρακτήρες
HPHTWWXPPELEXTOYTRSE
4.
Αποκρυπτογράφηση: Μετατρέπουμε το κρυπτοκείμενο
σε αριθμό στο Z26 και αφαιρούμε το 11 (modulo 26)
3.1 Αλγόριθμος Ολίσθησης
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
Κρυπτανάλυση – Μέθοδος Α

O αλγόριθμος shift δεν είναι ασφαλής



Αριθμός υποψήφιων κλειδιών: 26 κλειδιά
Ο «εχθρός» μπορεί εύκολα να δοκιμάσει όλα τα κλειδιά
(brute force, exhaustive key search)
Παράδειγμα: Κρυπτανάλυση της φράσης m j a i a m w l x s v i t p e g i
p i x x i v που έχει κρυπτογραφηθεί με τον αλγόριθμο Shift
3.1 Αλγόριθμος Ολίσθησης
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
Κρυπτανάλυση

Ο «εχθρός» μπορεί εύκολα να δοκιμάσει όλα τα κλειδιά

Κρυπτογράφημα (ciphertext) – mjaiamwlxsvitpegipixxiv

Δοκιμή 1: lizhzlvkwruhsodfhohwwhu (αποκρυπτογράφηση με Κ=1)

Δοκιμή 2: khygykujvotgrncegngvvgt (αποκρυπτογράφηση με Κ=2)

Δοκιμή 3: jgxfxjtiupsfombdfmfuufs (αποκρυπτογράφηση με Κ=3)

Δοκιμή 4: ifwewishtoreplaceletter (αποκρυπτογράφηση με Κ=4)
Επομένως, Κ=4
J. Katz, Y. Lindell. Introduction to Modern
Cryptography. Chapman & Hall/CRC, 2008.
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.1 Αλγόριθμος Ολίσθησης
Κρυπτανάλυση
Παράδειγμα Νο 2:

Υποκλαπέν Μήνυμα:
Κατά μέσο όρο, το αρχικό μήνυμα
θα κρυπταναλυθεί μετά από
|Κ|/2 δοκιμές, όπου |Κ| είναι ο
αριθμός των κλειδιών !
Αναγκαία Συνθήκη: Το πλήθος των κλειδιών πρέπει να αποτρέπει επιθέσεις εξαντλητικής αναζήτησης
J. Katz, Y. Lindell. Introduction to Modern
Cryptography. Chapman & Hall/CRC, 2008.
3.1. Αλγόριθμος Ολίσθησης (Shift cipher)
Κρυπτανάλυση – Μέθοδος Β

mjaiamwlxsvitpegipixxiv
Μία διαφορετική τεχνική κρυπτανάλυσης
1.
Κάθε γράμμα του (π.χ. Αγγλικού) αλφαβήτου αντιστοιχίζεται στο [0,25]
2.
Έστω
pi
όπου
0  i  25
η πιθανότητα εμφάνισης του
γράμματος. Χρησιμοποιώντας γνωστές τιμές του
pi
25
i -οστού
:
 pi  0.065
2
i 0
3. Έστω κρυπτογράφημα με
qi
τη
πιθανότητα του i -οστού γράμματος στο
κρυπτογράφημα (εμφανίσεις/πλήθος)
4. Αν το κλειδί είναι
αναμένουμε
qi k
k τότε
 pi για κάθε i
J. Katz, Y. Lindell. Introduction to Modern
Cryptography. Chapman & Hall/CRC, 2008.
3.1. Αλγόριθμος Ολίσθησης (Shift cipher)
Κρυπτανάλυση – Μέθοδος Β
mjaiamwlxsvitpegipixxiv
25
 pi  0.065
i 0
2
5. Ισοδύναμα, υπολογίζουμε
25
I k   pi qi  k
i 0
για κάθε
k {0,...,25}
6. Το πείραμα δίνει στην έξοδο
k
όταν
I k  0.065
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
Αλγόριθμοι Αντικατάστασης (Μονοαλφαβητικοί)
3.2. Γενικευμένος Αλγόριθμος Αντικατάτασης (Substitution cipher)
Stinson, D. Cryptography: Theory and Practice.
Third Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
(Substitution cipher)

Κάθε γράμμα αντικαθίσταται με ένα άλλο μοναδικό γράμμα

Η αντιστοιχία είναι 1-1
Πίνακας
Κρυπτογράφησης
Πίνακας
Αποκρυπτογράφησης

Αριθμός πιθανών κλειδιών

Όσες οι αντιμεταθέσεις 26 στοιχείων: Κ= 26! (4 Χ 1026 πιθανά κλειδιά)
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης $
(Substitution cipher)

Αποκρυπτογραφείστε το ακόλουθο μήνυμα:
MGZVYZLGHCMHJMYXSSFMNHAHYCDLMHA
που έχει κρυπτογραφηθεί με τον Αλγόριθμο Αντικατάστασης, όπου το κλειδί
κρυπτογράφησης είναι η μετάθεση που περιγράφεται από τον πίνακα:
Mao, W. Modern Cryptography: Theory
and Practice. Prentice Hall, 2003
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
(Substitution cipher)

Αρχικό κείμενο:

Κρυπτογραφημένο κείμενο:
J. Katz, Y. Lindell. Introduction to Modern
Cryptography. Chapman & Hall/CRC, 2008.
Αλγόριθμοι Αντικατάστασης (Μονοαλφαβητικοί)
Υπολογιστική Ασφάλεια και Κρυπτανάλυση
Κάθε ΑΣΦΑΛΕΣ κρυπτοσύστημα θα πρέπει να έχει
ένα σύνολο κλειδιών ανθεκτικό σε επιθέσεις
εξαντλητικής αναζήτησης (σήμερα: > 260 κλειδιά)

H παραπάνω αρχή αποτελεί αναγκαία αλλά όχι ικανή συνθήκη

Αλγόριθμος Ολίσθησης (Shift)


Μικρό πλήθος υποψήφιων κλειδιών (key set)  Όχι ασφάλεια
(Γενικευμένος) Αλγόριθμος Αντικατάστασης (Substitution cipher)

Μεγάλο πλήθος κλειδιών, μονοαλφαβητικός αλγόριθμος  Όχι ασφάλεια
26! = 403,291,461,126,605,635,584,000,000 (περίπου 288 κλειδιά)
Menezes, Oorschot, Vanstone, Handbook
of Applied Cryptography, CRC, 2001
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση
Συχνότητα Εμφάνισης (Αγγλικοί χαρακτήρες)
3.2. Γενικευμένος Αλγόριθμος
Αντικατάστασης - Κρυπτανάλυση


Πιθανότητες εμφάνισης γραμμάτων

E, - με πιθανότητα ~ 0.120

T, A, O, I, N, S, H, R - με πιθανότητα (0.06-0.09)

D, L – με πιθανότητα ~ 0.04

C, U, M, W, F, G, Y, P, B - με πιθανότητα (0.015 – 0.028)

V, K, J, X, Q, Z – με πιθανότητα < 0.01
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
Δίψηφων


*
TH ,HE, IN, ER, AN, RE, ED, ON, ES, ST, EN, AT, TO, NT, HA, ND, OU, EA,
NG, AS, OR, TI, IS, ET, IT, AR, TE, SE, HI, OF
Τρίψηφων

THE, ING, AND, HER, ERE, END,

THA NTH, WAS, ETH, FOR, DTH
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

Φτιάχνουμε έναν πίνακα συχνοτήτων εμφάνισης

Ο πιο «συχνός» χαρακτήρας: Ζ


Οι αμέσως πιο «συχνοί» χαρακτήρες


Υποθέτουμε ότι D(‘Z’) = ‘e’
{M, C, D, F, J, R, Y, N}
Συνέχεια εξετάζουμε τα δίψηφα που εμφανίζονται πιο συχνά

ZW, DZ (4 φορές)

Το ZW εμφανίζεται συχνά, το WZ καθόλου, ενώ το W σπάνια


Αρα, «ίσως» D(‘W’)= ‘d’
ΝΖ, ΖU (3 φορές)

…
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

Ίσως D(‘C’) = ‘A’

…
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

Ίσως D(‘M’) = ‘i’ ή D(‘M’) = ‘ο’

…
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

…
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

…
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

…
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

…
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

…
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

…
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

…
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.2. Γενικευμένος Αλγόριθμος Αντικατάστασης
Κρυπτανάλυση

*
Θέλετε να δοκιμάσετε την κρυπτανάλυση του;
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
Αλγόριθμοι Αντικατάστασης (Μονοαλφαβητικοί)
3.3. O αλγόριθμος Affine $

Αριθμός κλειδιών = Φ(26) x 26 = 12 x 26 = 312
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.3. Ο αλγόριθμος Affine
Από τη θεωρία αριθμών, είναι γνωστό ότι ο a έχει πολλαπλασιαστικό αντίστροφο στο
Zm μόνον και μόνον όταν οι a και m είναι πρώτοι μεταξύ τους, δηλαδή:
Παρακάτω δίνονται οι αριθμοί και οι αντίστροφοι τους στο Z26
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.3. Ο αλγόριθμος Affine

Παράδειγμα: Κρυπτογράφηση της λέξης “hot” με τον αλγόριθμο Affine,
έχοντας ως κλειδί: (a, b) = (7, 3). Όλες οι πράξεις γίνονται modulo 26
1.
Η συνάρτηση κρυπτογράφησης δίνεται από τον τύπο
2.
H συνάρτηση αποκρυπτογράφησης δίνεται από τον τύπο
3.
Μετατρέπουμε τη λέξη hot σε αριθμούς στο Z26:
h o t = 7, 14, 19
4.
Στη συνέχεια κρυπτογραφούμε:
Η λέξη που
αντιστοιχεί στους
χαρακτήρες 0, 23, 6
είναι η “AXG”
3.3. Ο αλγόριθμος Affine *
Αποκρυπτογραφείστε τη
λέξη AYR που έχει
κρυπτογραφηθεί με τον
αλγόριθμο Affine,
χρησιμοποιώντας ως κλειδί
το (a, b) = (3, 8). Όλες οι
πράξεις να γίνουν στο Z26
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.3. Ο αλγόριθμος Affine
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
Κρυπτανάλυση

Έστω η Eve έχει υποκλέψει το παρακάτω κείμενο
FMXVEDKAPHFERBNDKRXRSREFMORUDSDKDVSHVUFEDK
APRKDLYEVLRHHRH

Η Eve γνωρίζει ότι το κείμενο
έχει κρυπτογραφηθεί με τον
αλγόριθμο Affine

Η Εve καταγράφει τη
συχνότητα εμφάνισης των
χαρακτήρων στο κείμενο
FMXVEDKAPHFERBNDKRXRSREFMORUDSDKDVSHVUFEDKAPRKDLYEVLRHHRH
3.3. Ο αλγόριθμος Affine
Κρυπτανάλυση
1.
Η Eve πιθανολογεί ότι το R κρυπτογραφεί το e, και ότι το D κρυπτογραφεί το
t. Εφόσον η συνάρτηση κρυπτογράφησης του Affine είναι γνωστή, και με
δεδομένη την αντιστοίχιση R = 17, e=4, t=19, D=3, η Eve μπορεί να επιλύσει:
.. Όπου οι άγνωστοι α και b είναι το κλειδί του αλγορίθμου. Στην προκειμένη
περίπτωση, η Eve βρίσκει ότι a=6 και b=19
2.
Η Eve γνωρίζει ότι ΔΕΝ μάντεψε σωστά αφού gcd(6,26)=2 >1, και
επιστρέφει στο βήμα 1.
FMXVEDKAPHFERBNDKRXRSREFMORUDSDKDVSHVUFEDKAPRKDLYEVLRHHRH
3.3. Ο αλγόριθμος Affine
Κρυπτανάλυση
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005


Η Eve μαντεύει την επόμενη αντιστοίχηση: π.χ. R=e και Κ=t. Όμοίως με το
βήμα 1, βρίσκει ότι
, το οποίο είναι ένα έγκυρο κλειδί !!
Γνωρίζοντας τα a,b, Η Εve δημιουργεί τη συνάρτηση αποκρυπτογράφησης:
… και προσπαθεί να αποκρυπτογραφήσει το μήνυμα. Πράγματι, το αποτέλεσμα
τη δικαιώνει:
* Σε περίπτωση που το κείμενο δεν έβγαζε νόημα, τότε η Eve θα επέστρεφε
στο βήμα 1 ώστε να «μαντέψει» την επόμενη αντιστοίχιση.
Mao, W. Modern Cryptography: Theory
and Practice. Prentice Hall, 2003
Κλασσικοί Κρυπτογραφικοί Αλγόριθμοι
Μονοαλφαβητικοί Αλγόριθμοι Αντικατάστασης



Οι περισσότεροι μονοαλφαβητικοί αλγόριθμοι (ως τώρα) αποτελούν
ειδικές περιπτώσεις του γενικευμένου αλγόριθμου αντικατάστασης !!!
Shift Cipher
3
Ceasar
3

Affine
=
+
Shift
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
Β. Αλγόριθμοι Αντικατάστασης (Πολυαλφαβητικοί)
3.4. O αλγόριθμος Vigenere

Ένα σύνολο από Shift Ciphers !!!!

Αριθμός κλειδιών: 26m (π.χ. για m=5, το εύρος του συνόλου κλειδιών: 1.1x107)
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.4. Τhe Vigenere Cipher


Παράδειγμα: Έστω κλειδί είναι η λέξη CIPHER, δηλαδή Κ=(2,8,15,7,4,17)
Έστ
και επιθυμούμε να κρυπτογραφήσουμε τη φράση
thiscryptosystemisnotsecure.
Mao, W. Modern
Cryptography: Theory and
Practice. Prentice Hall, 2003
3.4. Τhe Vigenere Cipher

Παράδειγμα: Κρυπτογραφήστε τη φράση
με τον αλγόριθμο Vigenere, χρησιμοποιώντας ως κλειδί τη λέξη
gold
Δίνεται η αντιστοίχιση των χαρακτήρων σε αριθμούς. Όλες οι πράξεις γίνονται modulo 26
J. Katz, Y. Lindell. Introduction to Modern
Cryptography. Chapman & Hall/CRC, 2008.
3.4. Τhe Vigenere Cipher
Κρυπτανάλυση

Κρυπτανάλυση Vigenere


Δυσχερέστερη σε σχέση με τους μονοαλφαβητικούς
ΠΩΣ ΓΙΝΕΤΑΙ
A. Εύρεση της περιόδου m του αλγορίθμου:
1.
Η Μέθοδος του Kasiski (Babbage, 1854), ή
2.
Η Μέθοδος Δείκτη Σύμπτωσης
(Index of Coincidence) - (Friedman, 1920)
B. Εφαρμογή Κρυπτανάλυσης αλγόριθμου ολίσθησης
(Μέθοδος Β)
D. Kahn. The CodeBreakers,
Scribner, 1996
J. Katz, Y. Lindell. Introduction to Modern
Cryptography. Chapman & Hall/CRC, 2008.
D. Kahn. The
CodeBreakers,
Scribner, 1996
3.4. Τhe Vigenere Cipher
Κρυπτανάλυση – Α1. Η Μέθοδος του Kasiski
Παράδειγμα 1
Παράδειγμα 2
1.
Η επίθεση αξιοποιεί το γεγονός ότι ορισμένα διγράμματα ή τριγράμματα
εμφανίζονται συχνά σε κείμενα φυσικής γλώσσας.
2.
Όταν δύο ή περισσότερες εμφανίσεις του “the” βρεθούν σε θέσεις j,
m+j, 2m+j,… θα κρυπτογραφηθούν με το ίδιο μπλοκ χαρακτήρων.
3.
Ο Kasiski παρατήρησε ότι η απόσταση μεταξύ παρόμοιων μπλοκ είναι
ένας αριθμός πολλαπλάσιος της περιόδου του αλγορίθμου

Η περίοδος είναι ο μέγιστος κοινός διαιρέτης (gcd) των αποστάσεων
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.4. Τhe Vigenere Cipher
Κρυπτανάλυση – Α2. Δείκτης Σύμπτωσης (Index of Coincidence)
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.4. Τhe Vigenere Cipher
Κρυπτανάλυση – Α2. Δείκτης Σύμπτωσης (Index of Coincidence)
LIVITCSWPIYVEWHEVSRIQMXLEYVEOIEWHRXEXIPFEM VEWHKV
π.χ. m=6
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.4. Τhe Vigenere Cipher
Κρυπτανάλυση – Υπολογισμός Περιόδου (Παράδειγμα)
1. Μέθοδος Kasiski

Αποστάσεις μεταξύ των εμφανίσεων της ακολουθίας CHR:
2. Δείκτης Σύμπτωσης

m=1; Δείκτης 0.045

m=2; 0.046, 0.041

165, 235, 275, 285

m=3; 0.043, 0.050, 0.047

ΜΚΔ: Πέντε (5)

m=4; 0.042, 0.039, 0.045, 0.040

m=5; 0.063, 0.068, 0.069, 0.061, 0.063
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.4. Τhe Vigenere Cipher
Κρυπτανάλυση
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.4. Τhe Vigenere Cipher
Κρυπτανάλυση
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
Αλγόριθμοι Αντικατάστασης (Πολυαλφαβητικοί)
3.5. O αλγόριθμος Hill
*

Lester Hill, 1929

Ιδέα: Κάθε χαρακτήρας κρυπτοκειμένου
είναι γραμμικός μετασχηματισμός όλων
των χαρακτήρων του αρχικού κειμένου!
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.5. O αλγόριθμος Hill
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.5. O αλγόριθμος Hill
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.5. O αλγόριθμος Hill
W. Stallings. Cryptography and Network Security –
Principles and Practice, 5th Edition. Pearson, 2011
3.5. O αλγόριθμος Hill
Πλήρες Παραδειγμα (1/2)
W. Stallings. Cryptography and Network Security –
Principles and Practice, 5th Edition. Pearson, 2011
3.5. O αλγόριθμος Hill
Πλήρες Παραδειγμα (2/2)
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
3.5. O αλγόριθμος Hill
Κρυπτανάλυση (Τύπος: known-plaintext)
1.
2.

Ο εχθρός γνωρίζει/ έχει μάθει το m
O εχθρός έχει τουλάχιστον m ζεύγη
μηνυμάτων – κρυπτογραφημάτων
Κρυπτανάλυση: Λύνουμε Y  XK
ως προς K αν η Χ αντιστρέφεται!
x j  ( x1, j , x2, j ,..., xm, j )
y j  ( y1, j , y2, j ,..., ym, j )
όπου y j  Enck (x j ) , 1  j  m
K  X 1Y , X  ( xi , j ),Y  ( yi , j )
Γ. Αλγόριθμοι Αναδιάταξης
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.6. Αλγόριθμος Αντιμετάθεσης (Permutation Cipher)

Γνωστός και ως Ο Αλγόριθμος Αναδιάταξης (Transposition Cipher)
Stinson, D. Cryptography:
Theory and Practice. Third
Edition, CRC, 2005
3.6. Αλγόριθμος Αντιμετάθεσης





Έστω m=6 με κλειδί
την αντιμετάθεση π :
x’
1 2 3 4 5 6
p(x’) 3 5 1 6 4 2
Έστω το αρχικό μήνυμα:
She sells sea shells by the sea shore
Το μήνυμα διαμερίζεται σε
ομάδες των 6 στοιχείων
shesel lsseas hellsb ythese ashore
Το μήνυμα, κρυπτογραφείται
(αναδιατάσσεται) με βάση την π :
Αποκρυπτογράφηση με κλειδί
την αντίστροφη αντιμετάθεση π-1 :
EESLSH SALSES LSHBLE HSYEET HRAEOS
x
1 2 3 4 5 6
p1(x) 3 6 1 5 2 4
3.6. Αλγόριθμος Αντιμετάθεσης
Παράδειγμα 2ο:

Plaintext:

Ciphertext: BRCFEYMLOAUR
x’
CYBERFORMULA
1 2 3 4 5 6
p(x’) 3 5 1 6 4 2
π-1(x) 3 6 1 5 2 4
plaintext
C
Y
B
E
R
F
O
R
M
U
L
A
ciphertext
B
R
C
F
E
Y
M
L
O
A
U
R
x’
3.6. Αλγόριθμος Αντιμετάθεσης
Ειδική περίπτωση του αλγόριθμου Hill
Σπίτι: Μπορείτε να τσεκάρετε την κρυπτογράφηση & αποκρυπτογράφηση
στο Παράδειγμα 2, χρησιμοποιώντας τις μήτρες Κπ και
Κπ-1;
1 2 3 4 5 6
p(x’) 3 5 1 6 4 2
π-1(x) 3 6 1 5 2 4
Stinson, D. Cryptography: Theory and
Practice. Third Edition, CRC, 2005
Mao, W. Modern
Cryptography: Theory and
Practice. Prentice Hall, 2003
3.6. Αλγόριθμος Αντιμετάθεσης

Παράδειγμα 3ο: Κρυπτογράφηση της φράσης
με τον αλγόριθμο αντιμετάθεσης, χρησιμοποιώντας ως κλειδί τη λέξη
Hint: Η αντιμετάθεση-κλειδί μπορεί να υπολογιστεί αριθμώντας
τα γράμματα του κλειδιού (βάσει της αλφαβητικής τους σειράς).
Παράδειγμα: MARKOS  (3, 1, 5, 2, 4, 6)
CRAD
Βιβλιογραφία Διάλεξης

Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996.

John Hershey. Cryptography Demystified. McGraw-Hill, 2003

Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001

W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition.
Pearson, 2011

Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005

Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003

D. Kahn. The CodeBreakers, Scribner, 1996

J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008.

O. Goldreigh. Foundations of Cryptography, Vol II Basic Applications, 2004.
Download