210 likes | 382 Views
BBS Γεννήτριες Ψευδοτυχαίων Αριθμών. Εισαγωγή στη κρυπτογραφία 2013 Δημητρέλλος Παναγιώτης. Εισαγωγή. Δημοσιεύτηκε το 1986 από τους L.Blum,M.Blum,M.Shub στο περιοδικό SIAM .
E N D
BBS Γεννήτριες Ψευδοτυχαίων Αριθμών Εισαγωγή στη κρυπτογραφία 2013 Δημητρέλλος Παναγιώτης
Εισαγωγή • Δημοσιεύτηκε το 1986 από τους L.Blum,M.Blum,M.Shubστο περιοδικό SIAM. • Πραγματεύεται τη κατασκευή γεννητριώνοι οποίες παράγουν ακολουθίες ψευδοτυχαίων αριθμών. (δηλαδή ακολουθίες που δε μπορούμε αποδοτικά να υπολογίσουμε χωρίς κάποια δεδομένα) • Κατασκευή και απόδειξη ασφάλειας δύο γεννητριών. A Simple Unpredictable Pseudo-Random Number Generator
Ορισμοί • Ορισμός:Γεννήτρια τυχαίων αριθμών ονομάζεται ένας αλγόριθμος ο οποίος παράγει ανεξάρτητακαι αντικειμενικά bits,ισοδύναμα με ένα «τίμιο» νόμισμα. • Ορισμός:Γεννήτρια ψευδο-τυχαίων τυχαίων αριθμών ονομάζεται ένας αλγόριθμος ο οποίος με είσοδο ένα σύνολο seed(δυαδική ακολουθίαn) παράγει μια επίσης διαδική ακολουθία I(n),μήκουςpoly(n),η οποία δε διακρίνεται από μια τυχαία,και δεν υπάρχει αποδοτικός τρόπος πρόβλεψης επόμενων και προηγούμενων όρων ενός όρου της ακολουθίας. A Simple Unpredictable Pseudo-Random Number Generator
Ορισμοί • Σχόλιο: Η ψευδο-τυχαία ακολουθία δηλαδή,ενώ δεν είναι πράγματι τυχαία,δε διακρίνεται αποδοτικά από μια τυχαία ακολουθία. • Ορισμός: (Ισοδύναμα),μια γεννήτρια ψευδο-τυχαίων αριθμών λέγεται σε πολυωνυμικό χρόνο unpredictable αν και μόνο αν για κάθε πεπερασμένο τμήμα της ακολουθίας αυτής,αφαιρώντας αμερόληπτα ένα στοιχείο του, μια μηχανή Turing(ΤΜ)δε δύναται να αποφασίσει,σε πολυωνυμικό χρόνο,αποτελεσματικότερα από ένα «τίμιο» νόμισμα,πιο στοιχείο είναι αυτό. A Simple Unpredictable Pseudo-Random Number Generator
Ιδιότητες Οι επιθυμητές ιδιότητες μιας τέτοιας γεννήτριας είναι: • Να δέχονται «μικρό» σε μήκος input. • Να εξάγουν πολυωνυμικά μεγαλύτερου μήκους output. • Να τερματίζουν σε πολυωνυμικό χρόνο (γρήγορα). • Να είναι σε πολυωνυμικό χρόνο unpredictable. A Simple Unpredictable Pseudo-Random Number Generator
Ορισμοί • Ορισμός:‘Ενας πρώτος αριθμός P λέγεται πρώτος κατά Blum αν P ≡3(mod 4) • Ορισμός: Δοθείσης δυαδικής ακολουθίαςxi ,η συνάρτηση parity(xi) δίνει ως έξοδο το τελευταίο ψηφίο της xi • Ορισμός: ‘Ενας ακέραιος λέγεται τετραγωνικό υπόλοιπο mod n αν και μόνο αν υπάρχει κάποιο τέτοιο ώστε να ισχύει: .Το σύνολο των τετραγωνικών υπολοίπων συμβολίζεται ως QRn ,και το συμπλήρωμά του ως QΝRn. A Simple Unpredictable Pseudo-Random Number Generator
Αλγόριθμος (BBS) • Σχόλιο: Οι Blum,Blum,Shubσχεδίασαν το παρακάτω αλγόριθμο παραγωγής ψευδο-τυχαίων αριθμών και απέδειξαν τη κρυπτογραφική του ασφάλεια και τις «επιθυμητές» του ιδιότητες.Ο αλγόριθμος βασίζεται σε έναν επαναλαμβανόμενο τετραγωνισμό και εξαγωγή του τελευταίου bit.Η εκτέλεσή του έχει ως εξής: Βήμα 1: Επιλέγουμε p,qπρώτους κατά Blumμε pq. Βήμα 2: Υπολογίζουμε N=pq A Simple Unpredictable Pseudo-Random Number Generator
Αλγόριθμος (BBS) Βήμα 3: Επιλέγουμε αριθμό s και υπολογίζουμε x0=s2mod N Βήμα 4: Επαναλαμβάνουμε από i=1μέχρι όσο θέλουμε: returnbi A Simple Unpredictable Pseudo-Random Number Generator
Αλγόριθμος (BBS) • Σχόλιο: ‘Οπως παρατηρούμε ο αλγόριθμος έχει πολυωνυμική πολυπλοκότητα ως προς το μήκος της εισόδου,και συμπεραίνουμε πως δοθέντος ενός όρου η εύρεση του προηγουμένου βασίζεται στο πρόβλημα των τετραγωνικών υπολοίπων (QRP). • Θεώρημα 1: Αν N=PQκαι P≡Q≡ 3(mod 4).Τότε κάθε τετραγωνικό υπόλοιπο mod N ,έστω x ,έχει ακριβώς τέσσερις (4) τετραγωνικές ρίζες από τις οποίες μια ακριβώς αποτελεί τετραγωνικό υπόλοιπο mod N .Ας το συμβολίσουμε ως . A Simple Unpredictable Pseudo-Random Number Generator
Επεξήγηση A Simple Unpredictable Pseudo-Random Number Generator
Είναι ασφαλές; • Υπόθεση:(QR Assumption)Κάθε πιθανοτικός αλγόριθμος πολυωνυμικού χρόνου που δοθέντος κάποιου (+1) ,όπου N=PQ με P,Q primes,έχει πιθανότητα να αποφανθεί σωστά για το αν το xείναι τετραγωνικό υπόλοιπο mod Nμέχρι +ε,όπου το ε είναι αμελητέο ως προς length(N). Δηλαδή η χρήση του αλγορίθμου αυτού είναι σχεδόν το ίδιο αποτελεσματική με τη ρίψη ενός «τίμιου» νομίσματος και απόφαση σύμφωνα με το αποτέλεσμά του. A Simple Unpredictable Pseudo-Random Number Generator
Είναι ασφαλές; • Ορισμός:’Εστω pπεριττός πρώτος αριθμός.Για το σύμβολο Legendre ορίζεται: • Ορισμός: ‘Εστω nπεριττός αριθμός με . Για το σύμβολο Jacobi ορίζεται:
Είναι ασφαλές; • Λήμμα: Χωρίς τη γνώση των P,Q η αναπαραγωγή της ακολουθίας προς τους προηγούμενους όρους είναι δυσκολότερη από τη παραγοντοποίηση του N=PQ. Απόδειξη: ‘Εστω με =-1.Υπολογίζουμε το x0=x2mod N και έστω με κάποιο αλγόριθμο βρίσκουμε το x-1.Τότε μπορούμε μέσω του ευκλείδιου αλγορίθμου να βρούμε πολυωνυμικά το gcd(x+ x-1,N),και επειδή N=PQέχουμε gcd(x+ x-1,N)=P ή Q συνεπώς γνωρίζοντας τον έναν A Simple Unpredictable Pseudo-Random Number Generator
Είναι ασφαλές; από τους δύο παράγοντες έχουμε λύσει το πρόβλημα της παραγοντοποίησης του Ν.Συνεπώς: • Λήμμα: Αν N=PQ , με P,Q primes έχουμε: QRNx mod P QRN καιx mod Q QRN • Λήμμα:pπρώτος κατά Blum A Simple Unpredictable Pseudo-Random Number Generator
Είναι ασφαλές; • Λήμμα: ‘Εστω N=PQ , με P,Q Blum primes.Τότε οι αριθμοίx,-x έχουν το ίδιο σύμβολο Jacobi. • Λήμμα: ‘Εστω N=PQ , με P,Q Blum primes.Tότε για κάθε έχουμε: QRN • Λήμμα: Αν κάποιος γνωρίζει τα P,Qκαι έναν όρο της ακολουθίας μπορεί αποδοτικά δοθέντος ενός x0να υπολογίσει το x-1 . A Simple Unpredictable Pseudo-Random Number Generator
Τελικά είναι... • Θεώρημα: Υποθέτουμε ότι διαθέτουμε αλγόριθμο Α ο οποίος υπολογίζει την ισοτιμία του ,τότε μπορούμε να κατασκευάσουμε αλγόριθμο Β ο οποίος θα αποφασίζει με την ίδια πιθανότητα να επιτυχίας με τον Α για το αν το x είναι τετραγωνικό υπόλοιπο. Ιδέα:Κατασκευάζουμε τον Βέτσι ώστε και το ζητούμενο προκύπτει σχετικά εύκολα. A Simple Unpredictable Pseudo-Random Number Generator
Χαρακτηριστικά • Η ακολουθία που προκύπτει χαρακτηρίζεται από καθορισμένη περίοδο ανάλογη με το μήκους του input ίση με λ(λ(Ν)),όπου λ είναι η συνάρτηση του Carmichael και ορίζεται ως: και A Simple Unpredictable Pseudo-Random Number Generator
Εφαρμογές • Κρυπτογραφία δημοσίου κλειδιού: Ο Bobθέλει να στείλει ένα εμπιστευτικό μύνημα m στην Αλίκη.Η Αλίκη δημοσιεύει τον αριθμό όπου πρώτοι κατά Blum,και ισχύει Κρυπτογράφηση: Ο Bob επιλέγει κάποιο το εισάγει στη γεννήτρια BBS και λαμβάνει z ίδιου μήκους με το m.’Ετσι εφαρμόζει one-time pad στο mμε κλειδί το zκαι στέλνει στην Αλίκη τα εξής: A Simple Unpredictable Pseudo-Random Number Generator
Εφαρμογές Αποκρυπτογράφηση: Η Αλίκη μέσω του ιδιωτικού της κλειδιού υπολογίζει τα και μέσω της XOR αποκρυπτογραφεί το μύνημα. Συμπερασματικά: ΑλίκηBob
Βιβλιογραφία • [1] L. ADLEMAN, On distinguishing prime numbers from composite numbers, Proc. 21st IEEE Symposium on Foundations of Computer Science, 1980, pp. 387-408. • [2] E. BACH, How to generate random integers with known factorization, submitted for publication. • [3] P. BILLINGSLEY, Ergodic Theory and Information, John Wiley, New York, 1965. • [4] M. BLUM, Coin flipping by telephone, in Proc. IEEE Spring COMPCON, 1982, pp. 133-137. • [5] M. BLUM AND S. MICALI, How to generate cryptographically strong sequences of pseudo random bits,IEEE 23rd Symposium on the Foundations of Computer Science (1982), pp. 112-117. • [6] G. BRASSARD, On computationally secure authentication tags requiring short secret shared keys, inAdvances in Cryptology, Proc. of Crypto 82, ed. D. Chaum, R. L. Rivest and A. T. Sherman,Plenum Press, New York, 1983, pp. 79-86. • [7] R. SOLOVAY AND V. STRASSEN, A fast Monte-Carlo test for primality, this Journal, 6 (1977), pp.84-85. • [8] J. VON NEUMANN, Various techniques used in connection with random digits, Collected Works, vol.5, Macmillan, New York, 1963, pp. 768-770. A Simple Unpredictable Pseudo-Random Number Generator