Εισαγωγή στην Κρυπτογραφία

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια.
Advertisements

Γραφήματα & Επίπεδα Γραφήματα
Βασικές έννοιες αλγορίθμων
Συνδυαστικα κυκλωματα με MSI και LSI
1. Να γραφτεί αλγόριθμος που θα υπολογίζει το ελάχιστο πλήθος (χαρτο)νομισμάτων που απαιτούνται για τη συμπλήρωση ενός συγκεκριμένου ποσού. Για παράδειγμα.
Ασύγχρονοι Απαριθμητές
ΓΡΑΜΜΑΤΙΚΕΣ ΧΩΡΙΣ ΣΥΜΦΡΑΖΟΜΕΝΑ I
Βασικές Συναρτήσεις Πινάκων
Απαντήσεις Προόδου II.
-Στοίβα-Ουρά - Πλεονεκτήματα πινάκων -Δομές δεδομένων δευτερεύουσας μνήμης -Πληροφορική και δεδομένα -Παραδείγματα-Προβλήματα ψευδοκώδικα.
Πιθανοκρατικοί Αλγόριθμοι
BBS Γεννήτριες Ψευδοτυχαίων Αριθμών
Ασκήσεις Συνδυαστικής
Τα στοιχειώδη περί γεωδαιτικών υπολογισμών
Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA.
ΘΕΩΡΙΑ ΔΙΑΛΕΞΗ 4 Αριθμητικές εκφράσεις και πράξεις Εντολές ανάθεσης
Εισαγωγή στην Κρυπτογραφία
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Δυναμικός Κατακερματισμός.
Παράσταση αριθμών «κινητής υποδιαστολής» floating point
Εισαγωγή στην Κρυπτογραφία
Εισαγωγικές Έννοιες Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Αναγνώριση Προτύπων.
Κεφάλαιο 2ο Πεπερασμένα αυτόματα.
Γραφήματα & Επίπεδα Γραφήματα
© 2002 Thomson / South-Western Slide 4A-1 Κεφάλαιο 4, Μέρος A Πιθανότητες.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
Απαντήσεις Θεωρίας - Ασκήσεων
1 Θεματική Ενότητα Γραφήματα & Επίπεδα Γραφήματα.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Αριθμοθεωρητικοί Αλγόριθμοι TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Αλγόριθμοι που επεξεργάζονται.
HY 120 ΨΗΦΙΑΚΗ ΣΧΕΔΙΑΣΗ Ασυγχρονα ακολουθιακα κυκλωματα.
Γιάννης Σταματίου Ακολουθίες και Σειρές
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ» Β΄ τάξης Γενικού Λυκείου
Ηλεκτρονική Ενότητα 5: DC λειτουργία – Πόλωση του διπολικού τρανζίστορ
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τρίτο Συστήματα.
Η αλληλουχία των ενεργειών δεν είναι πάντα μία και μοναδική!!!
Ο ΗΛΕΚΤΡΟΝΙΚΟΣ ΥΠΟΛΟΓΙΣΤΗΣ
Αλγόριθμοι και Πολυπλοκότητα
Τεχνολογία ΛογισμικούSlide 1 Αλγεβρική Εξειδίκευση u Καθορισμός τύπων αφαίρεσης σε όρους σχέσεων μεταξύ τύπων λειτουργιών.
ΗΥ120 ΨΗΦΙΑΚΗ ΣΧΕΔΙΑΣΗ Συναρτησεις Boole.
Εισαγωγή στην Κρυπτογραφία
Συνδυαστικά Κυκλώματα
Η Αρχή Συμπερίληψης - Εξαίρεσης
Σέρρες,Ιούνιος 2009 Τίτλος: Αυτόματος έλεγχος στο Scilab: Ανάπτυξη πακέτου για εύρωστο έλεγχο. Ονοματεπώνυμο Σπουδάστριας: Ευαγγελία Δάπκα Επιβλέπων Καθηγητής.
ANAKOINWSH H 2η Ενδιάμεση Εξέταση μεταφέρεται στις αντί για , την 24 Νοεμβρίου στις αίθουσες ΧΩΔ και 110 λόγω μη-διαθεσιμότητας.
2-1 Ανάλυση Αλγορίθμων Αλγόριθμος Πεπερασμένο σύνολο εντολών που, όταν εκτελεστούν, επιτυγχάνουν κάποιο επιθυμητό αποτέλεσμα –Δεδομένα εισόδου και εξόδου.
Ενότητα Α.4. Δομημένος Προγραμματισμός
ΑΝΙΧΝΕΥΣΗ ΚΑΙ ΔΙΟΡΘΩΣΗ ΣΦΑΛΜΑΤΩΝ
Probabilistically Checkable Proofs Theorem (PCP THEOREM) Ομιλητής Ασημακόπουλος (Ευ)Άγγελος.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών – Τμήμα Πληροφορικής και Τηλεπικοινωνιών 1 Κεφάλαιο 3 Η Σημασιολογία των Γλωσσών Προγραμματισμού Προπτυχιακό.
Κ. Μόδη: Γεωστατιστική και Εφαρμογές της (Κεφάλαιο 4) 1 Από κοινού κατανομή πολλών ΤΜ Ορίζεται ως από κοινού συνάρτηση κατανομής F(x 1, …, x n ) n τυχαίων.
Δομές Δεδομένων - Ισοζυγισμένα Δυαδικά Δένδρα (balanced binary trees)
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 4: Συνδεσμικότητα Data Engineering Lab 1.
Ασυμπτωτικός Συμβολισμός
Κρυπτογραφία Ρεύματος «Οι Αλγόριθμοι SEAL, RC4 και A5/1»
Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Ροές Δεδομένων (3 ο Μέρος)
Ενότητα 2 η Σήματα και Συστήματα. Σήματα Γενικά η πληροφορία αποτυπώνεται και μεταφέρεται με την βοήθεια των σημάτων. Ως σήμα ορίζουμε την οποιαδήποτε.
{ Ψηφιακή Σχεδίαση εργαστήριο Γιάννης Νικολουδάκης.
Σήματα και Συστήματα 11 10η διάλεξη. Σήματα και Συστήματα 12 Εισαγωγικά (1) Έστω γραμμικό σύστημα που περιγράφεται από τη σχέση: Αν η είσοδος είναι γραμμικός.
Προχωρημένα Θέματα Δικτύων
ΣΤΑΤΙΣΤΙΚΑ ΜΕΤΡΑ ΔΙΑΣΠΟΡΑΣ - ΑΣΥΜΜΕΤΡΙΑΣ - ΚΥΡΤΩΣΕΩΣ
Τρίτο μάθημα Ψηφιακά Ηλεκτρονικά.
ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΚΩΔΙΚΕΣ-ΚΕΦΑΛΑΙΟ 1ο
Συστήματα CAD Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών
ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ
Δυναμικός Κατακερματισμός
Μεταγράφημα παρουσίασης:

Εισαγωγή στην Κρυπτογραφία Stream ciphers

Γενικά χαρακτηριστικά Keystream Generator Ki Pi Ci Δουλεύουν πάνω σε ένα ρεύμα από bytes/bits Απαιτούν μία γεννήτρια ψευδοτυχαίας ακολουθίας bits, που θα είναι το κλειδί Τα bits του κλειδιού γίνονται XOR με τα bits του μηνύματος για να προκύψει έτσι το κρυπτόγραμμα, και αντίστροφα Η περίοδος της ακολουθίας του κλειδιού πρέπει αν είναι όσο γίνεται πιο μεγάλη Άλλες επιλογές Τα bits του κλειδιού μπορούν να εξαρτώνται από προηγούμενα bits του κρυπτογράμματος (ασύγχρονο σύστημα)

Σύγχρονοι stream ciphers Κρυπτογράφηση Αποκρυπτογράφηση σi+1 = f(σi,k), zi = g(σi , k), ci = h(mi, zi) Αποστολέας και παραλήπτης πρέπει να είναι συγχρονισμένοι. Αν κάποιο τμήμα του κρυπτογράμματος χαθεί κατά τη μετάδοσή του, ο συγχρονισμός χάνεται και απαιτούνται πρόσθετες τεχνικές επανασυγχρονισμού. Η παραποίηση (αλλοίωση) ενός ψηφίου του κρυπτογράμματος κατά τη μετάδοση δεν έχει ως αποτέλεσμα περαιτέρω λανθασμένη αποκρυπτογράφηση επόμενων ψηφίων (no error propagation) “Ενεργές επιθέσεις” προκαλούν σοβαρά προβλήματα (π.χ. έλλειψη συγχρονισμού), για αυτό απαιτούνται τεχνικές για πιστοποίηση της γνησιότητας και της ακεραιότητας του μηνύματος

Ασύγχρονοι stream ciphers Αποκρυπτογράφηση Κρυπτογράφηση σi = (ci-t, ci-t+1, …., ci-1) zi = g(σi , k), ci = h(mi, zi) Τα ασύγχρονα συστήματα ανακτούν από μόνα τους το συγχρονισμό όταν αυτό χαθεί, μετά από την παρέλευση κάποιων λανθασμένων αποκρυπτογραφήσεων (self – synchronization) Αν συμβεί μία λάθος αποκρυπτογράφηση, αυτή διαδίδεται για ορισμένα επόμενα ψηφία και μετά στο σύστημα επανέρχεται σε σωστή λειτουργία (limited error propagation) «Ενεργές επιθέσεις» ανιχνεύονται πιο δύσκολα από ό,τι στα σύγχρονα συστήματα – απαιτούνται επίσης τεχνικές για πιστοποίηση γνησιότητας και ακεραιότητας του μηνύματος Κάθε bit του μηνύματος επιδρά σε πολλά bits του κρυπτογράμματος, άρα οι στατιστικές ιδιότητες του μηνύματος «χάνονται» μέσα στο κρυπτόγραμμα

Κλειδί μιας χρήσης (One-time pad) Ως one-time pad αποκαλείται το ιδανικό εκείνο κρυπτοσύστημα, όπου το κλειδί είναι τυχαία σειρά bits με απεριόριστα μεγάλη περίοδο. Ο Shannon (1948) απέδειξε ότι το one-time pad είναι απεριόριστα ασφαλές. (“Communication Theory of Secrecy Systems”, Claude Shannon, Bell Syst. Tech. J. 28, 656-715, 1949) Στην πράξη δεν μπορούμε να έχουμε τυχαίες ακολουθίες, παρά μόνο ψευδοτυχαίες (που προέρχονται από ντετερμινιστικές μηχανές).

Βασικά στοιχεία Θεωρίας Πληροφορίας Αν X τυχαία μεταβλητή, με τιμές στο σύνολο {x1, x2, …, xn} και αντίστοιχες πιθανότητες p1, p2, …, pn, η εντροπία της ορίζεται ως: Η μέγιστη τιμή της εντροπίας είναι log2n και εμφανίζεται αν και μόνο αν pi=1/n για κάθε i. Η συνδυασμένη εντροπία δύο τυχαίων μεταβλητών X, Y δίνεται από:

Βασικά στοιχεία Θεωρίας Πληροφορίας (II) Η εντροπία H(X) εκφράζει το ποσό της πληροφορίας που αποκτούμε από μία παρατήρηση του X. Η συνδυασμένη εντροπία H(X|Y) εκφράζει την αβεβαιότητα που έχουμε για το X μετά από μια παρατήρηση του Y.

Θεωρία Shannon Η υπό συνθήκη πιθανότητα να εστάλη κτυπτόγραμμα c, δοθέντος του αρχικού μηνύματος m, ισούται με: Όπου το κλειδί θεωρείται τυχαία μεταβλητή K, που μπορεί να πάρει διάφορες τιμές k με αντίστοιχες πιθανότητες pk. Η πιθανότητα να εστάλη κτυπτόγραμμα c ισούται με:

Θεωρία Shannon (II) Η υπό συνθήκη πιθανότητα να εστάλη μήνυμα m, δοθέντος του λαμβανομένου κρυπτογράμματος c, ισούται με: Αν M συμβολίζει την τυχαία μεταβλητή που αντιστοιχεί στα πιθανά μηνύματα, τότε η υπό συνθήκη εντροπία του M δοθέντος συγκεκριμένου κρυπτογράμματος c (p(c) > 0) ισούται με: (είναι γενίκευση του κλασικού ορισμού της εντροπίας, για υπό συνθήκη πιθανότητες)

Θεωρία Shannon (III) Η υπό συνθήκη εντροπία του M δοθέντος C (όπου C συμβολίζει την τυχαία μεταβλητή που αντιστοιχεί στα κρυπτογράμματα) ισούται με: Η διαφορά H(M) – H(M|C) εκφράζει την ελάττωση της αβεβαιότητας του μηνύματος, που προέρχεται από γνώση του κρυπτογράμματος. Ονομάζεται και αμοιβαία πληροφορία (mutual information) και συμβολίζεται με I(M|C) Ένα σύστημα χαρακτηρίζεται ως απολύτως ασφαλές αν γνώση του κρυπτογράμματος δεν προσφέρει καμία πληροφορία για το αρχικό μήνυμα. Αυτό σημαίνει p(m|c) = p(m) για όλα τα m και c. Με άλλα λόγια, οι μεταβλητές M, C είναι ανεξάρτητες, που σημαίνει I(M|C)=0.

Απόδειξη του Shannon για το one-time pad Για το one-time pad: Για κάθε μήνυμα m=m1m2...mn και κρυπτόγραμμα c=c1c2…cn υπάρχει ένα μοναδικό κλειδί k=k1k2…kn τέτοιο ώστε Ek(m)=c. Συνεπώς: αφού pk=1/2n για όλα τα k και

One-time pad (σχηματική αναπαράσταση)  plaintext ciphertext Το να στείλει ο αποστολέας στον παραλήπτη από την αρχή το κλειδί, έτσι ώστε ο δεύτερος να μπορεί να αποκρυπτογραφήσει το μήνυμα, είναι πρακτικά το ίδιο πρόβλημα με το να του στείλει το ίδιο το μήνυμα

Συστήματα στην πράξη Ως γεννήτρια ψευδοτυχαίων bits χρησιμοποιείται συνήθως ένας γραμμικός καταχωρητής ολίσθησης με ανάδραση (LFSR) Έχουν καλή μαθηματική περιγραφή και οι ιδιότητές τους αναλύονται εύκολα Message stream Shift register ⊕ Cipher stream ⊕ Key stream

Γραμμικοί καταχωρητές ολίσθησης με ανάδραση Σχηματικό διάγραμμα (καταχωρητής L θέσεων) Πολυώνυμο ανάδρασης: P(x) = 1 + c1x + c2x2 + c3x3 +…+ cLxL  Z 2(x) sj = (c1 sj-1 + c2 sj-2 + c3 sj-3 +…+ cL sj-L) mod 2 για j  L Με αρχική κατάσταση του LFSR : [sL-1 , … , s1, , s0 ] με si  {0,1}

Ιδιότητες LFSRs Ένα LFSR μήκους L μπορεί να περάσει από 2L-1 διαφορετικές καταστάσεις, άρα μπορεί να γεννήσει ακολουθίες με μέγιστη περίοδο 2L-1. Η έξοδος ενός LFSR εξαρτάται τόσο από την ανάδρασή του όσο και από την αρχική του κατάσταση. LFSRs που επιτυγχάνουν μέγιστη περίοδο ονομάζονται πρωταρχικοί (primitive). Οι ακολουθίες που παράγονται από τέτοιους καταχωρητές ονομάζονται μέγιστου μήκους (m-sequences).

Τι είναι αλγεβρική ομάδα (algebraic group) Mια ομάδα είναι ένα αλγεβρικό σύστημα αποτελούμενο από ένα σύνολο G και μια πράξη  τέτοια ώστε για όλα τα στοιχεία a, b και c στο G ικανοποιούνται οι ακόλουθες συνθήκες: Κλειστότητα (Closure): a  b πρέπει να ανήκει στο G Προσεταιριστική ιδιότητα (Associativity): a  (b  c) = (a  b)  c Ουδέτερο στοιχείο: a  e = e  a = a Αντίστροφο στοιχείο: a  a' = a'  a = e Αντιμεταθετικότητα (Commutativity): a  b = b  a (Αβελιανή ομάδα - Abelian Group) Παραδείγματα: Πρόσθεση: <R, +> e = 0 , a' = -a Πολλαπλασιασμός: <R-{0}, · > e = 1 , a' = a-1

Πεπερασμένα Σώματα - Finite Fields Ένα πεπερασμένο σώμα (finite field) είναι ένα αλγεβρικό σύστημα που αποτελείται από ένα πεπερασμένο σύνολο F μαζί με δύο δυαδικές πράξεις + και · , ορισμένες στο F, και ικανοποιεί τα ακόλουθα αξιώματα : Το F είναι μια αβελιανή ομάδα με την πράξη “+” Το F είναι μια αβελιανή ομάδα με την πράξη “· ” Επιμεριστική ιδιότητα Υπάρχει ένα πεπερασμένο σώμα με q στοιχεία πεδίου αν και μόνο αν το q είναι δύναμη ενός πρώτου, και για κάθε τέτοιο q υπάρχει ακριβώς ένα πεπερασμένο σώμα. Πεπερασμένο σώμα με q στοιχεία :Fq ή GFq Θα ασχοληθούμε με δυο τύπους πεπερασμένων σωμάτων Fq που χρησιμοποιούνται στην κρυπτογραφία Fp, p περιττός πρώτος prime finite fields F2m για κάποιο m  1 binary finite fields (χαρακτηριστικό 2) Λέγονται χαρακτηριστικά πεπερασμένα σώματα (characteristic finite fields).

Πεπερασμένα πεδία - Fp Πολλοί τρόποι αναπαράστασης των στοιχείων του Fp. σύνολο από ακεραίους {0, 1, 2, …, p-1} με : Πρόσθεση πρόσθεση modulo p Πολλαπλασιασμός πολλαπλασιασμός modulo p Βολικό να οριστούν Αφαίρεση προσθετικός αντίστροφος (additive inverse) (αρνητικό στοιχείο) Διαίρεση πολλαπλασιαστικός αντίστροφος (multiplicative inverse) στοιχείων πεδίου

Πεπερασμένα πεδία - F2m χαρακτηριστικό 2, περιέχει 2m elements. Οι πράξεις πρόσθεσης και πολλαπλασιασμού ορίζονται για την πολυωνυμική αναπαράσταση modulo ανάγωγο πολυώνυμο f(x) (ιrreducible polynomial ) Βολικό και εδώ να οριστούν Αφαίρεση προσθετικός αντίστροφος (additive inverse) (αρνητικό στοιχείο) Διαίρεση πολλαπλασιαστικός αντίστροφος (multiplicative inverse m  {113,131,163,193,233,239,283,409,571}

Πεπερασμένα Σώματα (Galois Fields) (I) Κάθε πεπερασμένο σώμα έχει pn στοιχεία (GF(pn)), όπου p πρώτος αριθμός (η πιο συνηθισμένη περίπτωση: p=2). Σε κάθε σώμα GF(2n) υπάρχει τουλάχιστον ένα πολυώνυμο f(x) με συντελεστές στο GF(2) το οποίο έχει τις εξής ιδιότητες: Είναι ανάγωγο (irreducible) Ο μικρότερος αριθμός k που έχει την ιδιότητα το f(x) να διαιρεί το xk+1 είναι ο 2n-1. Τότε το f(x) ονομάζεται πρωταρχικό πολυώνυμο (primitive).

Πεπερασμένα Σώματα (Galois Fields) (IΙ) Ένα στοιχείο που είναι ρίζα πρωταρχικού πολυωνύμου ονομάζεται πρωταρχικό. Παράδειγμα: στο GF(24), το πολυώνυμο f(x)=x4+x+1 είναι πρωταρχικό. Άρα, αν a το πρωταρχικό στοιχείο, τότε ισχύει a4=a+1 Αυτή η σχέση καθορίζει όλα τα στοιχεία του σώματος. Έτσι, a5=a · a4 = a2 + a κ.ο.κ Με βάση το παραπάνω, όλα τα στοιχεία του σώματος μπορούν να γραφτούν στη μορφή c0 + c1a + c2a2 + c3a3 όπου τα ci, i=0,1,2,3 είναι είτε 0 είτε 1. Η παραπάνω αναπαράσταση λέγεται πολυωνυμική αναπαράσταση. Η τετράδα [c0c1c2c3] συνιστά τη διανυσματική αναπαράσταση του πεδίου.

Πεπερασμένα Σώματα (Galois Fields) (IΙI) Εκθετική αναπαράσταση Διανυσματική αναπαράσταση 000 1 100 a 010 a2 001 a3 110 a4 011 a5 111 a6 101 Παράδειγμα: Σώμα GF(23) πρωταρχικό πολυώνυμο: f(x)=x3 + x + 1. Πρόσθεση στο σώμα: a3 + a6 = (110) + (101)= = (011) = a 4 Πολλαπλασιασμός στο σώμα: a3 · a6 = a9 = a2 Τάξη ενός στοιχείου b του σώματος GF(2n) είναι ο μικρότερος ακέραιος k με την ιδιότητα bk=1. Για κάθε πρωταρχικό στοιχείο, η τάξη είναι 2n-1

Ακολουθίες μέγιστης περιόδου παραγόμενες από LFSR Θεώρημα: Έστω f(x) το πολυώνυμο ανάδρασης ενός καταχωρητή με L βαθμίδες. Τότε, αν το πολυώνυμο είναι ανάγωγο, η περίοδος της παραγόμενης ακολουθίας είναι ίδια με την τάξη των ριζών του πολυωνύμου στο GF(2L). Άμεση συνέπεια αυτού είναι το παρακάτω: Έστω ένας LFSR με L βαθμίδες. Αν τo πολυώνυμο ανάδρασης ενός τέτοιου καταχωρητή είναι πρωταρχικό ως προς το πεπερασμένο σώμα GF(2L), η έξοδος έχει πάντα μέγιστη περίοδο 2L-1 (η ακολουθία δηλαδή είναι m-sequence), ανεξάρτητα της αρχικής κατάστασης (εκτός φυσικά της μηδενικής). Το μήκος του ελάχιστου LFSR που μπορεί να γεννήσει μία συγκεκριμένη ακολουθία ονομάζεται γραμμική πολυπλοκότητα (linear complexity) της ακολουθίας. Προφανώς, για κάθε m-sequence περιόδου 2L-1, η γραμμική πολυπλοκότητα ισούται με L.

Berlekamp – Massey αλγόριθμος Ο ελάχιστος LFSR που μπορεί να παράγει μία ακολουθία υπολογίζεται σε πολυωνυμικό χρόνο με το γνωστό αλγόριθμο Berlekamp-Massey (υπολογιστικής πολυπλοκότητας O(n2) για ακολουθία μήκους n). Αν η γραμμική πολυπλοκότητα μίας ακολουθίας είναι n, τότε ο Berlekamp-Massey χρειάζεται μόνο 2n bits για να υπολογίσει τον ελάχιστο LFSR που την παράγει!! Συμπέρασμα: Μία ακολουθία για να χρησιμοποιηθεί ως κλειδί στην κρυπτογραφία, πρέπει να έχει όσο γίνεται υψηλότερη γραμμική πολυπλοκότητα. Άρα, οι m-sequences καθίστανται ακατάλληλες για άμεση κρυπτογραφική χρήση (έχουν τη μικρότερη δυνατή γραμμική πολυπλοκότητα). Αναφορές: “Algebraic Coding Theory”, E. R. Berlekamp, New York: McGraw-Hill, 1968 “Shift Register Sequences and BCH Decoding”, J. L. Massey, IEEE Trans. On Information Theory, vol. IT-15, pp. 122-127, Jan. 1969 Handbook of Applied Cryptography (chapter 6) Τεράστιο πλήθος ιστοσελίδων στο διαδίκτυο, σχετικά με τον αλγόριθμο (περιγραφή, υλοποιήσεις κτλ.)

Βάση του Αλγορίθμου Berlekamp-Massey

Αλγόριθμος Berlecamp-Massey

Παράδειγμα Sn = 0, 0, 1, 1, 0, 1, 1, 1, 0, n=9

Βιβλιογραφία LFSRs “Shift Register Synthesis”, S.W. Golomb, Holden-Day, San Francisco, 1969 “Finite Fields”, R. Lidl and H. Niederreiter, vol. 20 of Encyclopedia of Mathematics and its Applications, Cambridge University Press, 1996 (chapter 8).

Γεννήτριες ψευδοτυχαίων ακολουθιών Γραμμικοί καταχωρητές ολίσθησης με ανάδραση (LFSRs) Εφαρμογή μη γραμμικής συνάρτησης στις βαθμίδες ενός LFSR (filter function generators – Key (1973)), με στόχο την αύξηση της γραμμικής πολυπλοκότητας της ακολουθίας: Η μέγιστη τιμή που μπορεί να έχει η γραμμική πολυπλοκότητα του παραγόμενου κλειδιού (keystream) είναι: όπου m το μέγιστο πλήθος βαθμίδων του LFSR που συνδυάζονται σε ένα γινόμενο από την f

Γεννήτριες ψευδοτυχαίων ακολουθιών (II) Οι έξοδοι πολλών LFSRs περνούν από μία μη γραμμική συνάρτηση (combinatorial function generators – Groth (1971)) Αν L1, L2,…,Ln είναι οι γραμμικές πολυπλοκότητες (ανά δύο διαφορετικές μεταξύ τους) των ακολουθιών που παράγονται από τους καταχωρητές, τότε η γραμμική πολυπλοκότητα του παραγόμενου κλειδιού (keystream) ισούται με: f(L1,L2,…,Ln) Για παράδειγμα, αν n=4 και f=x1x3 + x2 + x2x3x4, τότε: Lkeystream=L1L3 + L2 + L2L3L4

Παράδειγμα – Geffe generator Ο κάθε LFSR έχει μήκος LI, i=1,2,3, πρώτα μεταξύ τους, και μέγιστη περίοδο 2Li-1 Έξοδος z(t)=x1x2  (1+x2)x3 = x1x2  x2x3  x3 Η ακολουθία εξόδου z έχει μεγάλη περίοδο: Η γραμμική πολυπλοκότητα της εξόδου ισούται με: L=L1L2 + L2L3 + L3

Ασφάλεια Geffe generator Όχι ασφαλής: Ας παρατηρήσουμε ότι η πιθανότητα συσχέτισης: Υπόκειται σε correlation κρυπτανάλυση λόγω της παραπάνω παρατήρησης (Μέθοδος που στηρίζεται στην εξάρτηση της εξόδου κάποιας συνάρτησης από κάποιες συγκεκριμένες εισόδους). Βασική της ιδέα είναι η εξής: αν η έξοδος ταυτίζεται με την έξοδο κάποιου από τους καταχωρητές με πιθανότητα p > ½, τότε αν ένα ικανοποιητικά μεγάλο τμήμα του κλειδιού είναι γνωστό, μπορεί να ευρεθεί η αρχική κατάσταση του εν λόγω καταχωρητή. Συμπέρασμα: η συνάρτηση f σε τέτοιου τύπου γεννήτριες ψευδοτυχαίων ακολουθιών δεν πρέπει να εμφανίζει στατιστική εξάρτηση της εξόδου με κάποιο υποσύνολο των εισόδων της. (αυτές οι συναρτήσεις χαρακτηρίζονται ως ανεπηρέαστες στη συσχέτιση – correlation immune) ) Ομοίως μπορεί να δειχτεί ότι P(z(t)=x3(t))=3/4

Γεννήτριες ψευδοτυχαίων ακολουθιών (III) To ρολόι ενός LFSR είναι η έξοδος κάποιου άλλου LFSR (clocked-controlled generators – Beth and Piper (1984)) Η περίοδος ισούται με 2L1(2L2-1)(2L3-1) εάν L2,L3 πρώτοι μεταξύ τους H γραμμική πολυπλοκότητα (L2+L3)2L1-1 < L(x)  (L2+L3)2L1 Για καλή έξοδο, οι καταχωρητές πρέπει να είναι όλοι πρωταρχικοί, παραπλήσιου μεγέθους και ανά δύο πρώτοι μεταξύ τους.

Γεννήτριες ψευδοτυχαίων ακολουθιών (IV) Ένας LFSR καθορίζει το αν θα λαμβάνεται ή όχι υπ’όψιν η έξοδος ενός άλλου LFSR (shrinking generator – Coppersmith – Krawczys – Mansour (1993)) Αν L1, L2 οι γραμμικές πολυπλοκότητες των R1, R2 αντιστοίχως, τότε Η περίοδος είναι (2L2-1)2L1-1 εάν L1, L2 πρώτοι μεταξύ τους Για τη γραμμική πολυπλοκότητα L του παραγομένου κλειδιού ισχύει η σχέση:

Αναφορές (για τις προηγούμενες μεθόδους) Αναφορές (για τις προηγούμενες μεθόδους) “Generation of binary sequences with controllable complexity”, E. J. Groth, IEEE Trans. Information Theory, vol. 17, pp. 288-296, 1971 “An analysis of the structure and complexity of nonlinear binary key generators”, E. L. Key, IEEE Trans. Information Theory, vol. 22, pp. 732-736, 1976. “The stop-and-go generator”, T. Beth and F. C. Piper, Proceedings of Eurocrypt 84, pp. 88-92, 1985. “The shrinking generator”, Coppersmith – Krawczys – Mansour, Advances in Cryptology – Crypto ’93, pp. 22-94, 1994

Ιδιότητες ψευδοτυχαίων ακολουθιών (Αξιώματα Golomb) Μεγάλη περίοδος Ισοκατανεμημένο πλήθος 0 και 1 (Balance property) Μεγάλη γραμμική πολυπλοκότητα Αν ως run ορίζουμε μία ακολουθία 0 ή 1, τότε, σε μία περίοδο, τα μισά runs έχουν μήκος 1, τα ¼ έχουν μήκος 2, τα 1/8 μήκος 3 κ.ο.κ. (Run property) Η συνάρτηση αυτοσυσχέτισης yια την ακολουθία a0a1… περιόδου N μπορεί να πάρει μόνο δύο τιμές (two-level autocorrelation) N, για τ=0 Κ, για 1≤ τ ≤ Ν-1

Stream ciphers που χρησιμοποιούνται σήμερα SEAL (το paper υπάρχει στο: http://www.cs.ucdavis.edu/~rogaway/papers/seal-abstract.html) RC4 (χρησιμοποιείται σε πολλά προϊόντα, όπως Oracle Secure SQL, Apple’s Computer’s AOCE) (http://www.ncat.edu/~grogans/references_and_links.htm) για περιγραφή και περαιτέρω αναφορές A5/1 (χρησιμοποιείται στις GSM επικοινωνίες) (http://cryptome.org/a51-bsw.htm)