Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Κρυπτογραφία Εντροπία & Τυχαιότητα, Γεννήτορες (Ψευδο-)Τυχαιότητας Κέρκυρα, 2012 Δρ. Ε. Μάγκος.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Κρυπτογραφία Εντροπία & Τυχαιότητα, Γεννήτορες (Ψευδο-)Τυχαιότητας Κέρκυρα, 2012 Δρ. Ε. Μάγκος."— Μεταγράφημα παρουσίασης:

1 Κρυπτογραφία Εντροπία & Τυχαιότητα, Γεννήτορες (Ψευδο-)Τυχαιότητας Κέρκυρα, 2012 Δρ. Ε. Μάγκος

2 Syllabus 1. Η Εντροπία ως μέτρο πληροφορίας και ως μέτρο αβεβαιότητας 2. Πλεονασμός φυσικής γλώσσας και Εντροπία 3. Εντροπία και Ασφάλεια Κρυπτοσυστήματος 4. Πού χρειαζόμαστε την Τυχαιότητα – Εφαρμοσμένη Τυχαιότητα 5. Γεννήτορες Τυχαιότητας και Ψευδοτυχαιότητας 6. Κρυπτογραφικώς Ασφαλείς Γεννήτορες Ψευδοτυχαιότητας

3 Θεωρία της Πληροφορίας και Κρυπτολογία Claude Shannon C.E. Shannon, "A Mathematical Theory of Communication", Bell System Technical Journal, vol. 27, pp , , July, October, 1948 Θεωρία Πληροφορίας και Κρυπτολογία Κρυπτανάλυση και πλεονασμός φυσικής γλώσσας Εντροπία και ασφάλεια κρυπτοσυστημάτων Θεωρία Πληροφορίας (Information Theory) Πώς οι μαθηματικοί νόμοι διέπουν τα συστήματα επικοινωνίας C.E. Shannon, “Communication Theory of Secrecy Systems”, Bell Systems Technical Journal,. Vol. 28, pp. 656–715, **

4 Ποσότητα Πληροφορίας, Εντροπία και Αβεβαιότητα Ποσότητα πληροφορίας (Amount of information) : O ελάχιστος αριθμός bit για την κωδικοποίηση όλων των πιθανών νοημάτων που μπορεί να έχει ένα μήνυμα Εντροπία Μηνύματος Μέτρο της ποσότητας πληροφορίας ενός μηνύματος Εντροπία = Αβεβαιότητα Πόσα είναι τα bit αβεβαιότητας του κρυπταναλυτή όταν το μ ή νυμα είναι κρυπτογραφημένο Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, n – o αριθμός των πιθανών τιμών του μηνύματος Μ Θεωρούμε ότι και οι n τιμές είναι ισοπίθανες Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003

5 Πλεονασμός, Εντροπία και Αβεβαιότητα John Hershey. Cryptography Demystified. McGraw-Hill Professional, 2003 Ένας γεννήτορας bit παράγει 60 bit πληροφορίας (από αριστερά προς δεξιά): Η παραπάνω συμβολοσειρά εμφανίζει πλεονασμό (redundancy). Μπορείτε να τον εντοπίσετε; Πόσα bit πραγματικής πληροφορίας (εντροπία) αντιπροσωπεύουν τα 60 bit της εικόνας;

6 H Εντροπία ως μέτρο αβεβαιότητας Πείραμα: μια τυχαία μεταβλητή X παίρνει τιμές σύμφωνα με μια κατανομή πιθανότητας 1. Ποια η ποσότητα πληροφορίας (σε bit) που κερδίζουμε παρατηρώντας την Χ; 2. Αλλιώς: Πόσα (ελάχιστα) bit χρειαζόμαστε για να κωδικοποι- ήσουμε κάθε πιθανή τιμή της Χ; 3. Αλλιώς: Ποια η αβεβαιότητα (σε bit) για την έξοδο του πειράματος (πριν το παρατηρήσουμε); Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 π.χ. Ρίξιμο νομίσματος Πιθ(κορώνα) = ½ Πιθ(γράμματα) = ½ Ρίξιμο n νομίσμάτων Πληροφορία = 1 bit Πιθ(κορώνα) = ½ Πιθ(γράμματα) = ½ Πληροφορία = n bit Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001

7 H Εντροπία ως μέτρο αβεβαιότητας Τυπικός Ορισμός Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Λογάριθμος: με βάση το 2*

8 H Εντροπία ως μέτρο αβεβαιότητας Πλήρης Βεβαιότητα Έστω ότι μια Πηγή S παράγει μια τιμή με πλήρη βεβαιότητα – πιθανότητα 1 Ποια η εντροπία της πηγής; Εάν είμαστε βέβαιοι για ένα ενδεχόμενο, ποιο το νόημα να «ξοδέψουμε» bit για να το καταγράψουμε; Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall,2003 Πλήρης Αβεβαιότητα Έστω ότι μια πηγή S παράγει μια τιμή με πλήρη αβεβαιότητα – (ομοιόμορφη κατανομή: κάθε τιμή έχει πιθανότητα 1/n) Ποια η εντροπία της πηγής; Εάν είμαστε αβέβαιοι για ένα ενδεχόμενο, θα χρειαστούμε τόσα bits ώστε να καταγράψουμε κάθε πιθανή τιμή που θα προκύψει !

9 Ποια είναι η εντροπία της “πηγής” Alice: Αν η Alice και ο Bob εκτελέσουν το παραπάνω πρωτόκολλο n φορές, μπορούν να συμφωνήσουν σε μια ακολουθία αυθεντικής τυχαιότητας μήκους n-bit ! (Γιατί;) Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003

10 H Εντροπία ως μέτρο αβεβαιότητας Έστω επιλέγουμε ένα κρυπτογραφικό κλειδί n bit Αν τα κλειδιά είναι ισοπίθανα, (πιθανότητα 2 -n ) η εντροπία του πειράματος θα είναι μέγιστη: Εντροπία = μέτρο τυχαιότητας Τι θα γινόταν εάν κάποια κλειδιά ήταν «περισσότερο» πιθανά; Η εντροπία θα μειωνόταν ! Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Έστω η Χ παίρνει τιμές στο σύνολο { x 1, x 2, x 3,..., x 8 } με πιθανότητες { 1/2, 1/8,1/16,…, 1/16 } αντίστοιχα. Ποια είναι η πληροφορία (σε bit) στην έξοδο του πειράματος; Ποια η μέγιστη εντροπία αν όλα τα x i είναι ισοπίθανα: Log 2 8 =3

11 Ιδιότητες Εντροπίας Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Η ποσότητα Η(Χ|Υ) αποδίδει το μέγεθος της αβεβαιότητας που απομένει για την Χ, μετά από την παρατήρηση της Υ ! (για απόλυτη ασφάλεια, η τιμή θα πρέπει να είναι η μέγιστη – γιατί;) Stinson, D. Cryptography: Theory and Practice. CRC, 2005

12 H Εντροπία ως μέτρο αβεβαιότητας Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005

13 H Εντροπία ως μέτρο αβεβαιότητας Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Τι παρατηρείτε;

14 Εντροπία και Ασφάλεια Κρυπτοσυστήματος Κρυπτοσύστημα 1. Μήνυμα m. Παίρνει τιμές από μια τυχαία μεταβλητή Μ (σύμφωνα με μια κατανομή πιθανότητας) 2. Κλειδί k. Παίρνει τιμές από μια τυχαία μεταβλητή Κ (σύμφωνα με μια κατανομή πιθανότητας) 3. Κρυπτογράφημα c. Τιμές από μια τυχαία μεταβλητή C (σύμφωνα με μια κατανομή πιθανότητας) Στο παράδειγμα μας: Ομοίως, υπολογίζουμε: Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Άρα μπορούμε να υπολογίσουμε την εντροπία τους! *

15 Εντροπία και Ασφάλεια Κρυπτοσυστήματος

16 Πλεονασμός Φυσικής Γλώσσας και Εντροπία Απόλυτος Ρυθμός Γλώσσας (Absolute Rate): Η εντροπία ανά χαρακτήρα (για ισοπίθανους χαρακτήρες). Για μια τυχαία γλώσσα L με 26 χαρακτήρες, R ≈ 4.70 Για την Αγγλική γλώσσα, η εντροπία ανά χαρακτήρα Ρυθμός Γλώσσας (Rate): Έστω μια πηγή εξάγει λέξεις μήκους n μιας φυσικής γλώσσας L Ρυθμός r της L: Η εντροπία ανά χαρακτήρα της γλώσσας (λαμβάνοντας υπόψη συσχετίσεις και τον πλεονασμό της γλώσσας) π.χ. ο Shannon υπολόγισε: Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, < r(αγγλικά) < 1.5 bit/γράμμα Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003 * Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 χρησιμοποιώντας τον πίνακα:

17 Πλεονασμός Φυσικής Γλώσσας και Εντροπία Πλεονασμός Γλώσσας (Redundancy) Ο αριθμός των bit ανά χαρακτήρα που «περισσεύουν» (δηλαδή, δεν συνεισφέρουν στην εντροπία) Πλεονασμός = Απόλυτος ρυθμός - Ρυθμός Στα Αγγλικά, και για r = 1.25: Ποσοστό πλεονασμού: 3.45/4.70 ≈ 75% D = = 3.45 bit/χαρακτήρα Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003 Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005

18 Πλεονασμός Φυσικής Γλώσσας Πλεονασμός (Redundancy) Σε ένα μήνυμα υπάρχουν περισσότερα σύμβολα από αυτά που πραγματικά χρειάζονται για τη μετάδοση της πληροφορίας Που οφείλεται ο πλεονασμός σε μια φυσική γλώσσα; Γραμματική, συντακτικό, φωνητική, ιδιώματα, ετυμολογία, κουλτούρα,... Η Αγγλική γλώσσα εμφανίζει πλεονασμό ≈ 75% David. Kahn. The Codebreakers. Scribner, Παράδειγμα 1: Το γράμμα “u” που ακολουθεί το q είναι περιττό Παράδειγμα 2: Το “the” αυξάνει τον πλεονασμό του κειμένου “Officer present on active duty for an indefinite period” “Off pres on AD fr indef period”

19 Πλεονασμός Φυσικής Γλώσσας Κάθε φυσική γλώσσα εμφανίζει «πλεονασμό» (redundancy) Συχνότητες εμφάνισης χαρακτήρων Συχνότητες εμφάνισης διγράμμων, τριγράμμων Συχνότητες εμφάνισης λέξεων, εκφράσεων κλπ … John Hershey. Cryptography Demystified. McGraw-Hill Professional, 2003

20 Πλεονασμός Φυσικής Γλώσσας Ποιο κείμενο εμφανίζει το μεγαλύτερο πλεονασμό; Όσο μικρότερος είναι ο πλεονασμός, τόσο πιο δύσκολη γίνεται η κρυπτανάλυση ενός κρυπτογράμματος Επομένως, τόσο μεγαλύτερη γίνεται η ποσότητα κρυπτογραφήματος που πρέπει να αποκτήσει ο κρυπταναλυτής (ciphertext-only) David. Kahn. The Codebreakers. Scribner, “End here. Us then. Finn, again! Take. Bussoftlee, mememormee! Till thousendsthee. Lps. The keys to. Given! A way a lone a last a loved a long the.” “ And the disciples were full of wonder at his words. But Jesus said to them again, Children, how hard it is for those who put faith in wealth to come into the kingdom of God”

21 Πλεονασμός Φυσικής Γλώσσας David. Kahn. The Codebreakers. Scribner, 1996.

22 Εντροπία και Ασφάλεια Κρυπτοσυστήματος Απόσταση Μοναδικότητας (Unicity Distance)

23 Απόσταση Μοναδικότητας (U - unicity distance) Ποσότητα κρυπτογραφημένου κειμένου που απαιτείται ώστε ένας κρυπταναλυτής δοκιμάζοντας όλα τα πιθανά κλειδιά (brute force), να οδηγηθεί σε ένα μόνον αρχικό μήνυμα που να βγάζει νόημα Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, Communication Theory of Secrecy Systems, Bell Systems Technical Journal,. Vol. 28, pp. 656–715, c Eli Biham Ευθέως ανάλογη της εντροπίας Η(Κ) του κρυπτοσυστήματος… Αντιστρόφως ανάλογη του πλεονασμού D (bit ανά χαρακτήρα) της γλώσσας…

24 Εντροπία και Ασφάλεια Κρυπτοσυστήματος Απόσταση Μοναδικότητας (Unicity Distance) Ποια η απόσταση U αλγόριθμου Αντιμετάθεσης (αγγλικό κείμενο) με περίοδο t = 12 Δηλαδή, θεωρητικά, ένα κρυπτο- κείμενο 9 χαρ. είναι αρκετό για να κρυπταναλυθεί (μοναδικά) Ποια είναι η απόσταση U του αλγορίθμου Αντικατάστασης (αγγλικό κείμενο); Δηλαδή, θεωρητικά, ένα κρυπτο- κείμενο 29 χαρ. είναι αρκετό για να κρυπταναλυθεί (μοναδικά) Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001

25 Εντροπία και Ασφάλεια Κρυπτοσυστήματος Κρυπτογραφία και Συμπίεση Συμπίεση (Compression) Προσπαθεί να αφαιρέσει τον πλεονασμό (redundancy) από ένα μήνυμα Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, Όσο μεγαλύτερος είναι ο πλεονασμός, τόσο μικρότερη είναι η ποσότητα που (θεωρητικά) χρειάζεται ο κρυπταναλυτής

26 Εντροπία και Ασφάλεια Κρυπτοσυστήματος Σύγχυση και Διάχυση Σύγχυση (Confusion) Αποκρύπτουμε τη σχέση μεταξύ κρυπτογραφημένου κειμένου και κλειδιού π.χ. επαναλαμβανόμενες αντικαταταστάσεις & αναδιατάξεις Διάχυση (Diffusion) O πλεονασμός του αρχικού κειμένου κατανέμεται «ομοιόμορφα» στο κρυπτογραφημένο κείμενο Φαινόμενο Χιονοστιβάδας & αλγόριθμοι ομάδας (DES, AES) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, Από μόνες τους, οι τεχνικές αντικατάστασης και αναδιάταξης εμφανίζουν (τις γνωστές) αδυναμίες. Ωστόσο, αν συνδυαστούν, μπορούν υπό προϋποθέσεις να οδηγήσουν στη δημιουργία «ισχυρών» συμμετρικών αλγορίθμων !!!

27 Διάχυση - Παράδειγμα Επαναλαμβανόμενοι Αλγόριθμοι Ομάδας – Δίκτυα SPN J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, Για να ισχύει το φαινόμενο της χιονοστιβάδας, θα πρέπει: 1. Κάθε S-box σχεδιάζεται ώστε αλλάζοντας 1 bit εισόδου επηρεάζει τουλάχιστον 2 bit εξόδου του S-box 2. Οι αναδιατάξεις (mixes) σχεδιάζονται ώστε τα bit εξόδου κάθε S-box διαχέονται σε διαφορετικά S-box κατά τον επόμενο γύρο. Επιπλέον, θέλω όλα τα bit κλειδιού να επηρεάζουν όλα τα bit εξόδου !!! Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Τυπικά λοιπόν, θα πρέπει να εκτελούνται τουλάχιστον 7 γύροι (rounds)

28 Εφαρμοσμένη Τυχαιότητα Παραγωγή τυχαιότητας για Κρυπτογραφικά Πρωτόκολλα N. Ferguson, B. Schneier. Practical Cryptography. Wiley, π.χ. Η Eve για να «σπάσει» το πρωτόκολλο, αρκεί να «σπάσει» τον γεννήτορα τυχαιότητας Που χρειαζόμαστε τυχαιότητα; Δημιουργία κρυπτογραφικών κλειδιών: Κλειδί AES, DES κ.λπ Πρώτοι αριθμοί (π.χ. RSA) Κλειδιά ψηφιακής υπογραφής Αλγόριθμος One-time pad Τυχαιότητα σε πρωτόκολλα πρόκλησης-απάντησης (challenge-response) …

29 Εφαρμοσμένη Τυχαιότητα Παραγωγή τυχαιότητας για Κρυπτογραφικά Πρωτόκολλα Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001 Σενάριο: O Mallory, υποκλέπτει 2 εκτελέσεις, και μαντεύει την επόμενη «τυχαιότητα». Στη συνέχεια, 1. Πλαστοπροσωπεί (με κάποιο τρόπο) τον Bob στην Alice, αποστέλει την πρόκληση C= και λαμβάνει πίσω το E K (C) 2. Αποδεικνύει στον Bob ότι είναι η Alice Οι αριθμοί σας φαίνονται τυχαίοι; Ένα πρωτόκολλο ταυτοποίησης της Alice (Challenge-Response) Ε Κ [ ]

30 Εφαρμοσμένη Τυχαιότητα Παραγωγή Κλειδιού Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001 Κάθε λογισμικό κρυπτογράφησης χρειάζεται ένα κλειδί Κλειδί = σειρά αριθμών Πόσο τυχαίο μπορεί να θεωρηθεί αυτό το κλειδί; Μια επίθεση λεξικού δοκιμάζει αρχικά τα πλέον πιθανά κλειδιά 1.Χρειαζόμαστε ένα κλειδί 128 bit 2.Δημιουργούμε το κλειδί πληκτρο- λογώντας 16 «τυχαίους» χαρακτήρες π.χ

31 Εφαρμοσμένη Τυχαιότητα Παραγωγή Κλειδιού Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Έστω χρειαζόμαστε ένα κλειδί 128 bit για τον αλγόριθμο AES Εάν το κλειδί επιλεγεί με έναν γεννήτορα (αληθινής) τυχαιότητας, τότε η Eve θα χρειαστεί κατά μέσο όρο υπολογισμούς για να το «σπάσει» Τι θα γίνει εάν ένα seed 16-bit δοθεί ως είσοδος σε μια π.χ. συνάρτηση hash, δίνοντας στην έξοδο 128 bit «τυχαιότητας»; Περίπτωση Η Eve θα χρειαστεί κατά μέσο όρο 2 15 υπολογισμούς !! Υποθέτουμε ότι ο αλγόριθμος hash είναι γνωστός

32 Τυχαιότητα και Ψευδοτυχαιότητα Παράδειγμα: Πηγή Δεδομένων Bernoulli Τυχαιότητα Πηγής - Συνίσταται στα εξής: 1. Ισοπίθανα bit (Balanced) Η πιθανότητα ένα bit να είναι 0 (ή 1) είναι ½ 2. Αμνήμονα Πηγή: (memoryless) Η γνώση των bit έως τον χρόνο t, δεν βοηθά τον κρυπταναλυτή να προβλέψει το bit στον χρόνο t+1 Παράδειγμα Η Ρουλέτα στο Καζίνο John Hershey. Cryptography Demystified. McGraw-Hill Professional, 2003 Πόσο τυχαία σας φαίνεται η ακολουθία : Πόσο τυχαία σας φαίνεται η συμβολοσειρά :

33 Τυχαιότητα και Ψευδοτυχαιότητα Παράδειγμα: Πηγή Δεδομένων Bernoulli John Hershey. Cryptography Demystified. McGraw-Hill Professional, 2003 Οι ακολουθίες 3-bit δεν φαίνονται και τόσο τυχαίες… Πόσο τυχαία σας φαίνεται η συμβολοσειρά;

34 Γεννήτορες Τυχαιότητας Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996 Δυσκολία-Αδυναμία παραγωγής τυχαιότητας από έναν Η/Υ Πεπερασμένος αριθμός καταστάσεων στις οποίες μπορεί να βρεθεί ένας Η/Υ Μεγάλος αριθμός μεν, πεπερασμένος δε. Οι Η/Υ είναι ντετερμινιστικά όντα π.χ. Όλοι οι γεννήτορες αριθμών είναι περιοδικοί Ο,τιδήποτε είναι περιοδικό, είναι προβλέψιμο ( = μη τυχαίο) ! Ένας γεννήτορας τυχαίων αριθμών απαιτεί τυχαία είσοδο (random input) Ένας Η/Υ δεν (?) μπορεί να δημιουργήσει τυχαία δεδομένα… “Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin“ Donald Knuth

35 Γεννητόρες Τυχαιότητας Κατηγοριοποιήσεις Α. Γεννήτορες τυχαιότητας (HW) Συσκευές που αξιοποιούν την μη προβλεψιμότητα φυσικών φαινομέ- νων για παραγωγή bit τυχαιότητας Ραδιενεργός διάσπαση (radioactive decay), Θερμικός θόρυβος (thermal noise) από ημιαγωγό ή αντίσταση, Χρόνος πρόσβασης στο σκληρό δίσκο … Συχνά, τα bit που εξάγονται από φυσικά φαινόμενα ενδέχεται να: Είναι πολωμένα (biased) π.χ. H πιθανότητα η πηγή να εξάγει 1 δεν είναι ½ Αυτοσυσχετιζόμενα (correlated) π.χ. H πιθανότητα η πηγή να εξάγει 1 εξαρτάται από την τιμή προηγούμενου (-ων) bit Συχνά, τα bit που εξάγονται από φυσικές πηγές υποβάλλονται σε Τεχνικές διόρθωσης (de-skewing) Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 *

36 B. Γεννήτορες τυχαιότητας (SW) O γεννήτορας σχεδιάζεται εξ’ ολοκλήρου σε λογισμικό και εξάγει εντροπία από (π.χ.): Το ρολόι συστήματος Χρόνος-ταχύτητα πληκτρολόγησης και κίνηση ποντικιού Περιεχόμενα θέσεων μνήμης και I/O buffers Είσοδος από τον χρήστη Παράμετροι Λ.Σ. π.χ. φόρτος διεργασιών, δεδομένα δικτύου κ.λ.π Γεννητόρες Τυχαιότητας Κατηγοριοποιήσεις Οι γεννήτορες αυτής της κατηγορίας θεωρούνται χαμηλής εντροπίας Μπορούν να επηρεαστούν από παράγοντες όπως π.χ. η υπολογιστική πλατφόρμα Ο εχθρός μπορεί να επιδράσει ή να παρατηρήσει τις διεργασίες… Πολλές τέτοιες πηγές μπορούν να συνδυαστούν (pooling). Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001

37 Γεννητόρες Τυχαιότητας Απόσταξη Τυχαιότητας (Distilling Randomness) Συλλογή και Εξαγωγή τυχαιότητας (distilling randomness) 1. Καταγραφή πολλών «τυχαίων» γεγονότων, και εξαγωγή bit τυχαιότητας 2. Διατήρηση των bit σε μια δεξαμενή τυχαιότητας (randomness pool) 3. Χρήση μιας συνάρτησης one-way hash για την εξαγωγή των bit τυχαιότητας που τελικά θα χρησιμοποιηθούν Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996

38 Γεννητόρες Τυχαιότητας Απόσταξη Τυχαιότητας (Distilling Randomness) A. Young, M. Yung. Malicious Cryptography – Exploring CryptoVirology. Wiley, 2004 Συνδυάζοντας πολλές πηγές τυχαιότητας Σε κάθε πηγή μπορούν να εφαρμοστούν τεχνικές διόρθωσης Στη συνέχεια όλες οι ακολουθίες γίνονται XOR

39 Γεννητόρες Τυχαιότητας Απόσταξη Τυχαιότητας (Distilling Randomness)

40 Γεννήτορες Τυχαιότητας... στην πράξη: ένας τρόπος να παράξεις το αρχικό seed Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001

41 Γεννητόρες Τυχαιότητας Απόσταξη Τυχαιότητας (Distilling Randomness) John Hershey. Cryptography Demystified. McGraw-Hill Professional, 2003

42 Γεννήτορες Τυχαιότητας Τεχνικές Διόρθωσης (de-skewing, unbiasing, entropy extractors) Έστω έχουμε στη διάθεση μας ένα «πολωμένο» (biased) νόμισμα Μπορώ από ένα «πολωμένο» νόμισμα να πάρω μια ακολουθία τυχαίων bit; Ο αλγόριθμος του Von Neumann A. Young, M. Yung. Malicious Cryptography – Exploring CryptoVirology. Wiley, 2004 Πιθανότητα [Κορώνα] = 5/8 Πιθανότητα [Γράμματα] = 3/8 1 2 P 1 =P 2

43 Τυχαιότητα vs Ψευδοτυχαιότητα 1. Ιδανικά, η τυχαιότητα που δίνεται ως είσοδος σε κρυπτογραφικούς αλγορίθμους είναι αληθινή 2. Σε αυτή την περίπτωση & εφόσον τηρούνται “τα πρέποντα”, π.χ.: |K|=|M| Όχι επαναχρησιμοποίηση κλειδιού 3. … έχω απόλυτη ασφάλεια έναντι εχθρού με “άπειρους υπολογιστικούς πόρους” Σχετιζόμενοι όροι: Perfect Secrecy, Unconditional security, information-theoretic security 1. Στην πράξη, σε έναν κρυπτογραφικό αλγόριθμο δίνεται ως είσοδος μια ψευδο-τυχαία ακολουθία “Μοιάζει” να είναι τυχαία 2. & Επειδή δε τηρούνται τα “πρέποντα”: |Κ|<<|Μ| Επαναχρησιμοποίηση κλειδιών 3... θέλω υπολογιστική ασφάλεια έναντι ενός πολυωνυμικού εχθρού Στην πράξη, ο εχθρός έχει μικρή (αμελητέα) πιθανότητα επιτυχίας Μετά από “αρκετό χρόνο”, το σχήμα θα σπάσει οπωσδήποτε (π.χ. Brute force σε επίθεση known-plaintext) Ωστόσο ο χρόνος είναι “πολύς” ! J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008.

44 Γεννήτορες Ψευδο-Τυχαιότητας (Pseudo-Random Number Generator - PRNG) Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001 PRNG: αλγόριθμος που παράγει ακολουθίες αριθμών που «μοιάζουν» τυχαίες Indistinguishability: «δύσκολο» να διακρίνει κάποιος μια τυχαία από μια ψευδοτυχαία συμβολοσειρά Ωστόσο, ο αλγόριθμος είναι ντετερμινιστικός Αν δώσουμε την ίδια είσοδο, ο αλγόριθμος δίνει ίδιο αποτέλεσμα ! Στην είσοδο δέχεται μια (αληθινά) τυχαία ακολουθία bit μήκους k Το «seed» (σπόρος) του αλγορίθμου Στην έξοδο, δίνει μια «ψευδο-τυχαία» ακολουθία bit μήκους L >> k

45 Γεννήτορες Ψευδο-Τυχαιότητας (Pseudo-Random Number Generator - PRNG) O. Goldreigh. Foundations of Cryptography, Vol I Basic Tools, CUP, 2004.

46 Γεννήτορες Ψευδο-Τυχαιότητας Ασφάλεια Γεννητόρων PRNG Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996 Συνέπεια του Β: Ο γεννήτορας εμφανίζει «μεγάλη» περίοδο π.χ. Αν απαιτούμε 1 δισ. bit, μια ακολουθία με περίοδο 16 χιλ. bit δεν είναι ασφαλής ! π.χ περίοδος Ιδιότητες ακολουθίας ασφαλών Γεννητόρων PRNG A. «Μοιάζει» να είναι τυχαία Δηλαδή, οι ακολουθίες που παράγει περνούν με επιτυχία όλα τα στατιστικά τεστ τυχαιότητας B. Μη προβλεψιμότητα Υπολογιστικά αδύνατο για την Eve να προβλέψει (με πιθανότητα μη αμελητέα) το επόμενο bit

47 Γεννήτορες Ψευδο-Τυχαιότητας Α. Στατιστικοί Έλεγχοι Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996 A. Στατιστικά τεστ «αξιολόγησης» (ψευδο-) τυχαιότητας 1. «περίπου» ίδιος αριθμός 0 και 1 2. «περίπου» οι μισές εκτελέσεις ακολουθούνται από διαφορετικό bit (π.χ. 0,1 ή 1,0) 3. Κάθε πιθανή ακολουθία δύο bit θα πρέπει να εμφανίζεται στο ¼ περίπου των εκτελέσεων 4. Κάθε πιθανή ακολουθία τριών bit θα πρέπει να εμφανίζεται στο 1/8 περίπου των εκτελέσεων

48 Γεννήτορες Ψευδο-Τυχαιότητας Α. Στατιστικοί Έλεγχοι Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001 Πόσο τυχαία μπορεί να είναι η ακολουθία:

49 Γεννήτορες Ψευδο-Τυχαιότητας Α. Στατιστικοί Έλεγχοι John Hershey. Cryptography Demystified. McGraw-Hill Professional, 2003 Έστω ο γεννήτορας (ψευδο) τυχαιότητας που ορίζεται από τη σχέση: Ο γεννήτορας αυτός έχει πολύ μικρή περίοδο (18) Δεν είναι ασφαλής !!!

50 Γεννήτορες Ψευδο-Τυχαιότητας Α. Στατιστικοί Έλεγχοι Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Η ποιότητα ενός γεννήτορα μπορεί να αξιολογηθεί με στατιστικά τεστ Τα τεστ εντοπίζουν αν μια ακολουθία έχει χαρακτηριστικά που συναντώνται σε ακολουθίες (αληθινά) τυχαίων αριθμών Ένα τεστ μπορεί να αποφανθεί εάν η συγκεκριμένη ακολουθία «μοιάζει» τυχαία … Κανένα τεστ ωστόσο δεν μπορεί να αποδείξει ότι μια ακολουθία είναι τυχαία !! Η διεξαγωγή στατιστικών τεστ είναι λοιπόν αναγκαία αλλά όχι και ικανή συνθήκη για την ασφάλεια ενός γεννήτορα ψευδοτυχαιότητας

51 Γεννήτορες Ψευδο-Τυχαιότητας Β. Μη Προβλεψιμότητα Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996 Ένας αλγόριθμος PRNG δέχεται συνήθως ως είσοδο ένα seed To seed καθορίζει την αρχική κατάσταση (state) του γεννήτορα Ασφάλεια (υπολογιστική): Δυσκολία εύρεσης του seed από την Eve Ιδανικά, για τη δημιουργία του seed η Alice χρειάζεται αληθινή τυχαιότητα !! Το μήκος k του seed πρέπει να είναι επαρκώς μεγάλο ώστε να ανθίσταται έναντι επιθέσεων brute force Τουλάχιστον 128 bit εντροπίας B. Μη προβλεψιμότητα (unpredictability) Στόχος: Η eve έχει πλήρη γνώση των: - Αλγόριθμος παραγωγής - «Υλικό» που χρησιμοποιείται - Όλα τα bit έως τη στιγμή t Είναι υπολογιστικά αδύνατο για την Eve να προβλέψει ποιο θα είναι το επόμενο bit (με πιθανότητα > ½ ) N. Ferguson, B. Schneier. Practical Cryptography. Wiley, 2003.

52 Γεννήτορες Ψευδο-Τυχαιότητας Κρυπτογραφικοί Αλγόριθμοι Παραγωγής Ψευδοτυχαιότητας O αλγόριθμος εξαγωγής συχνά χρησιμοποιεί μια μονόδρομη κρυπτογραφική συνάρτηση hash 1. Μονόδρομη (one-way) 2. Κρυπτογραφική: Σύγχυση: Απόκρυψη σχέσης μεταξύ εξόδου / εισόδου, Διάχυση: Φαινόμενο χιονοστιβάδας Στόχοι Ασφάλειας 1. Προστασία του seed 2. Στατιστικά τεστ 3. Μη προβλεψιμότητα Περίπτωση 1. To seed προστατεύεται 2. θα περάσει τα στατιστικά test 3. ΑΛΛΑ: Γνωρίζοντας κάποιο state π.χ. τo C 3, o κακός μπορεί να φτιάξει όλα τα C i, για i>3. C. Kaufman, et al. Network Security – Private Communication in a Public World. Prentice Hall, 2002 Πόσο ασφαλές σας φαίνεται το PRNG που χρησιμοποιεί τη συνάρτηση (hash) H;

53 Γεννήτορες Ψευδο-Τυχαιότητας Κρυπτογραφικοί Αλγόριθμοι Παραγωγής Ψευδοτυχαιότητας ΛΥΣΗ: Σε κάθε βήμα, κάνουμε hash το προηγούμενο state μαζί με το seed του αλγορίθμου C. Kaufman, et al. Network Security – Private Communication in a Public World. Prentice Hall, 2002

54 Γεννήτορες Ψευδο-Τυχαιότητας Κρυπτογραφικώς Ασφαλείς Αλγόριθμοι Παραγωγής Ψευδοτυχαιότητας Ασφάλεια Κρυπτογραφικώς Ασφαλών Αλγορίθμων PRNG Μπορεί να αναχθεί στη δυσκολία επίλυσης ενός «δύσκολου» προβλήματος (π.χ. πρόβλημα παραγοντοποίησης μεγάλων αριθμών) Η ασφάλεια αποδεικνύεται με μαθηματικό τρόπο Ωστόσο. οι PRNG της κατηγορίας είναι λιγότερο αποδοτικοί από τις κοινές (ad hoc) υλοποιήσεις Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001

55 Γεννήτορες Ψευδο-Τυχαιότητας Κρυπτογραφικώς Ασφαλείς Αλγόριθμοι Παραγωγής Ψευδοτυχαιότητας Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001

56 Γεννήτορες Ψευδο-Τυχαιότητας Εφαρμογή: Αλγόριθμοι Ροής (Stream Ciphers) Στην πράξη, οι γεννήτορες PRNG χρησιμοποιούνται για την παραγωγή ψευδοτυχαιότητας που θα χρησιμοποιηθεί ως κλειδί σε συμμετρικούς αλγόριθμους ροής (stream ciphers) O. Goldreigh. Foundations of Cryptography, Vol I Basic Tools, CUP, 2004.

57 Γεννήτορες Ψευδο-Τυχαιότητας Εφαρμογή: Αλγόριθμοι Ροής (Stream Ciphers) N. Ferguson, B. Schneier. Practical Cryptography. Wiley, Ασφάλεια Αλγορίθμου Αν |Μ|>|seed| δεν έχουμε απόλυτη ασφάλεια (unconditional-perfect secrecy), αλλά υπολογιστική (computational security) π.χ. Ασφάλεια 128-bit 1. H Alice και o Bob ανταλλάσουν μέσω ενός ασφαλούς καναλιού, ένα τυχαίο seed κατάλληλου μήκους Π.χ. 128 bit τυχαιότητας 2. Εισάγουν και οι δύο ως είσοδο το seed σε ένα γεννήτορα PRNG 3. Κρυπτογραφούν τα μηνύματα τους (XOR με την ακολουθία που παράγει ο PRNG) [Seed] P XOR K

58 Βιβλιογραφία Διάλεξης Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001 John Hershey. Cryptography Demystified. McGraw-Hill Professional, 2003 Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 N. Ferguson, B. Schneier. Practical Cryptography. Wiley, Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003 Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 A. Young, M. Yung. Malicious Cryptography – Exploring CryptoVirology. Wiley, 2004 David. Kahn. The Codebreakers. Scribner, J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, O. Goldreigh. Foundations of Cryptography, Vol I Basic Tools, CUP, C. Kaufman, R. Perlman, M. Speciner. Network Security – Private Communication in a Public World. 2 nd edition, Prentice Hall, 2002.


Κατέβασμα ppt "Κρυπτογραφία Εντροπία & Τυχαιότητα, Γεννήτορες (Ψευδο-)Τυχαιότητας Κέρκυρα, 2012 Δρ. Ε. Μάγκος."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google