1 / 25

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

Εισαγωγή στην Κρυπτογραφία. Stream ciphers. Γενικά χαρακτηριστικά. Keystream Generator. Δουλεύουν πάνω σε ένα ρεύμα από bytes/bits Απαιτούν μία γεννήτρια ψευδοτυχαίας ακολουθίας bits, που θα είναι το κλειδί

sook
Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

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

  4. Ασύγχρονοι 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 του κρυπτογράμματος, άρα οι στατιστικές ιδιότητες του μηνύματος «χάνονται» μέσα στο κρυπτόγραμμα

  5. Κλειδί μιας χρήσης (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) • Στην πράξη δεν μπορούμε να έχουμε τυχαίες ακολουθίες, παρά μόνο ψευδοτυχαίες (που προέρχονται από ντετερμινιστικές μηχανές).

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

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

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

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

  10. Θεωρία 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.

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

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

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

  14. Γραμμικοί καταχωρητές ολίσθησης με ανάδραση Σχηματικό διάγραμμα (καταχωρητής L θέσεων) Πολυώνυμο ανάδρασης: P(x) = 1+ c1x + c2x2 + c3x3 +…+ cLxL  Z2(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}

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

  16. Τι είναι αλγεβρική ομάδα (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

  17. Πεπερασμένα Σώματα - 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).

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

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

  20. Πεπερασμένα Σώματα (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).

  21. Πεπερασμένα Σώματα (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] συνιστά τη διανυσματική αναπαράσταση του πεδίου.

  22. Πεπερασμένα Σώματα (Galois Fields) (IΙI) Παράδειγμα: Σώμα 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

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

  24. Ιδιότητες ψευδοτυχαίων ακολουθιών (Αξιώματα 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

  25. 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)

More Related