21
BBS Γεννήτριες Ψευδοτυχαίων Αριθμών Εισαγωγή στη κρυπτογραφία 2013 Δημητρέλλος Παναγιώτης

BBS Γεννήτριες Ψευδοτυχαίων Αριθμών

  • Upload
    walden

  • View
    56

  • Download
    0

Embed Size (px)

DESCRIPTION

BBS Γεννήτριες Ψευδοτυχαίων Αριθμών. Εισαγωγή στη κρυπτογραφία 2013 Δημητρέλλος Παναγιώτης. Εισαγωγή. Δημοσιεύτηκε το 1986 από τους L.Blum,M.Blum,M.Shub στο περιοδικό SIAM . - PowerPoint PPT Presentation

Citation preview

Page 1: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

BBS Γεννήτριες Ψευδοτυχαίων Αριθμών

Εισαγωγή στη κρυπτογραφία 2013Δημητρέλλος Παναγιώτης

Page 2: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Εισαγωγή

• Δημοσιεύτηκε το 1986 από τους L.Blum,M.Blum,M.Shub στο περιοδικό SIAM.

• Πραγματεύεται τη κατασκευή γεννητριών οι οποίες παράγουν ακολουθίες ψευδοτυχαίων αριθμών. (δηλαδή ακολουθίες που δε μπορούμε αποδοτικά να υπολογίσουμε χωρίς κάποια δεδομένα)

• Κατασκευή και απόδειξη ασφάλειας δύο γεννητριών.

A Simple Unpredictable Pseudo-Random Number Generator

Page 3: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Ορισμοί• Ορισμός: Γεννήτρια τυχαίων αριθμών ονομάζεται ένας

αλγόριθμος ο οποίος παράγει ανεξάρτητα και αντικειμενικά bits,ισοδύναμα με ένα «τίμιο» νόμισμα.

• Ορισμός: Γεννήτρια ψευδο-τυχαίων τυχαίων αριθμών ονομάζεται ένας αλγόριθμος ο οποίος με είσοδο ένα σύνολο seed (δυαδική ακολουθία n) παράγει μια επίσης διαδική ακολουθία I(n),μήκους poly(n),η οποία δε διακρίνεται από μια τυχαία,και δεν υπάρχει αποδοτικός τρόπος πρόβλεψης επόμενων και προηγούμενων όρων ενός όρου της ακολουθίας.

A Simple Unpredictable Pseudo-Random Number Generator

Page 4: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Ορισμοί• Σχόλιο: Η ψευδο-τυχαία ακολουθία δηλαδή,ενώ δεν είναι

πράγματι τυχαία,δε διακρίνεται αποδοτικά από μια τυχαία ακολουθία.

• Ορισμός: (Ισοδύναμα),μια γεννήτρια ψευδο-τυχαίων αριθμών λέγεται σε πολυωνυμικό χρόνο unpredictable αν και μόνο αν για κάθε πεπερασμένο τμήμα της ακολουθίας αυτής,αφαιρώντας αμερόληπτα ένα στοιχείο του, μια μηχανή Turing(ΤΜ) δε δύναται να αποφασίσει,σε πολυωνυμικό χρόνο,αποτελεσματικότερα από ένα «τίμιο» νόμισμα,πιο στοιχείο είναι αυτό.

A Simple Unpredictable Pseudo-Random Number Generator

Page 5: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Ιδιότητες

Οι επιθυμητές ιδιότητες μιας τέτοιας γεννήτριας είναι:

1) Να δέχονται «μικρό» σε μήκος input.2) Να εξάγουν πολυωνυμικά μεγαλύτερου μήκους

output.3) Να τερματίζουν σε πολυωνυμικό χρόνο (γρήγορα).4) Να είναι σε πολυωνυμικό χρόνο unpredictable.

A Simple Unpredictable Pseudo-Random Number Generator

Page 6: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Ορισμοί• Ορισμός: ‘Ενας πρώτος αριθμός P λέγεται πρώτος κατά

Blum αν P ≡3(mod 4)

• Ορισμός: Δοθείσης δυαδικής ακολουθίας xi ,η συνάρτηση parity(xi) δίνει ως έξοδο το τελευταίο ψηφίο της xi

• Ορισμός: ‘Ενας ακέραιος λέγεται τετραγωνικό υπόλοιπο mod n αν και μόνο αν υπάρχει κάποιο τέτοιο ώστε να ισχύει: .Το σύνολο των τετραγωνικών υπολοίπων συμβολίζεται ως QRn ,και το συμπλήρωμά του ως QΝRn .

A Simple Unpredictable Pseudo-Random Number Generator

Page 7: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Αλγόριθμος (BBS)

• Σχόλιο: Οι Blum,Blum,Shub σχεδίασαν το παρακάτω αλγόριθμο παραγωγής ψευδο-τυχαίων αριθμών και απέδειξαν τη κρυπτογραφική του ασφάλεια και τις «επιθυμητές» του ιδιότητες.Ο αλγόριθμος βασίζεται σε έναν επαναλαμβανόμενο τετραγωνισμό και εξαγωγή του τελευταίου bit.Η εκτέλεσή του έχει ως εξής:

Βήμα 1: Επιλέγουμε p,q πρώτους κατά Blum με p q. Βήμα 2: Υπολογίζουμε N=pq

A Simple Unpredictable Pseudo-Random Number Generator

Page 8: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Αλγόριθμος (BBS)

Βήμα 3: Επιλέγουμε αριθμό s και υπολογίζουμε

x0=s2 mod N Βήμα 4: Επαναλαμβάνουμε από i=1 μέχρι όσο

θέλουμε:

return bi

A Simple Unpredictable Pseudo-Random Number Generator

Page 9: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Αλγόριθμος (BBS)

• Σχόλιο: ‘Οπως παρατηρούμε ο αλγόριθμος έχει πολυωνυμική πολυπλοκότητα ως προς το μήκος της εισόδου,και συμπεραίνουμε πως δοθέντος ενός όρου η εύρεση του προηγουμένου βασίζεται στο πρόβλημα των τετραγωνικών υπολοίπων (QRP).

• Θεώρημα 1: Αν N=PQ και P≡Q≡ 3(mod 4).Τότε κάθε τετραγωνικό υπόλοιπο mod N ,έστω x ,έχει ακριβώς τέσσερις (4) τετραγωνικές ρίζες από τις οποίες μια ακριβώς αποτελεί τετραγωνικό υπόλοιπο mod N .Ας το συμβολίσουμε ως .

A Simple Unpredictable Pseudo-Random Number Generator

Page 10: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Επεξήγηση

A Simple Unpredictable Pseudo-Random Number Generator

Page 11: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Είναι ασφαλές;

• Υπόθεση: (QR Assumption) Κάθε πιθανοτικός αλγόριθμος πολυωνυμικού χρόνου που δοθέντος κάποιου (+1) ,όπου N=PQ με P,Q primes,έχει πιθανότητα να αποφανθεί σωστά για το αν το x είναι τετραγωνικό υπόλοιπο mod N μέχρι

+ε, όπου το ε είναι αμελητέο ως προς length(N). Δηλαδή η χρήση του αλγορίθμου αυτού είναι σχεδόν

το ίδιο αποτελεσματική με τη ρίψη ενός «τίμιου» νομίσματος και απόφαση σύμφωνα με το αποτέλεσμά του.

A Simple Unpredictable Pseudo-Random Number Generator

Page 12: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Είναι ασφαλές;

• Ορισμός:’Εστω p περιττός πρώτος αριθμός.Για

το σύμβολο Legendre ορίζεται:

• Ορισμός: ‘Εστω n περιττός αριθμός με . Για το σύμβολο Jacobi ορίζεται:

Page 13: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Είναι ασφαλές;

• Λήμμα: Χωρίς τη γνώση των P,Q η αναπαραγωγή της ακολουθίας προς τους προηγούμενους όρους είναι δυσκολότερη από τη παραγοντοποίηση του N=PQ.

Απόδειξη: ‘Εστω με =-1.Υπολογίζουμε το x0=x2 mod N και έστω με κάποιο αλγόριθμο βρίσκουμε το x-1.Τότε μπορούμε μέσω του ευκλείδιου αλγορίθμου να βρούμε πολυωνυμικά το gcd(x+ x-1,N) ,και επειδή N=PQ έχουμε gcd(x+ x-1,N)=P ή Q συνεπώς γνωρίζοντας τον έναν

A Simple Unpredictable Pseudo-Random Number Generator

Page 14: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Είναι ασφαλές;

από τους δύο παράγοντες έχουμε λύσει το πρόβλημα της παραγοντοποίησης του Ν.Συνεπώς:

• Λήμμα: Αν N=PQ , με P,Q primes έχουμε: QRN x mod P QRN και x mod Q QRN

• Λήμμα: p πρώτος κατά Blum

A Simple Unpredictable Pseudo-Random Number Generator

Page 15: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Είναι ασφαλές;

• Λήμμα: ‘Εστω 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

Page 16: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Τελικά είναι...

• Θεώρημα: Υποθέτουμε ότι διαθέτουμε αλγόριθμο Α ο οποίος υπολογίζει την ισοτιμία του ,τότε μπορούμε να κατασκευάσουμε αλγόριθμο Β ο οποίος θα αποφασίζει με την ίδια πιθανότητα να επιτυχίας με τον Α για το αν το x είναι τετραγωνικό υπόλοιπο.

Ιδέα:Κατασκευάζουμε τον Β έτσι ώστε και το ζητούμενο προκύπτει σχετικά εύκολα.

A Simple Unpredictable Pseudo-Random Number Generator

Page 17: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Χαρακτηριστικά

• Η ακολουθία που προκύπτει χαρακτηρίζεται από καθορισμένη περίοδο ανάλογη με το μήκους του input ίση με λ(λ(Ν)),όπου λ είναι η συνάρτηση του Carmichael και ορίζεται ως:

και

A Simple Unpredictable Pseudo-Random Number Generator

Page 18: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Εφαρμογές

• Κρυπτογραφία δημοσίου κλειδιού: Ο Bob θέλει να στείλει ένα εμπιστευτικό μύνημα m

στην Αλίκη.Η Αλίκη δημοσιεύει τον αριθμό όπου πρώτοι κατά Blum,και ισχύει Κρυπτογράφηση: Ο Bob επιλέγει κάποιο το εισάγει στη γεννήτρια BBS και λαμβάνει z ίδιου

μήκους με το m.’Ετσι εφαρμόζει one-time pad στο m με κλειδί το z και στέλνει στην Αλίκη τα εξής:

A Simple Unpredictable Pseudo-Random Number Generator

Page 19: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Εφαρμογές

Αποκρυπτογράφηση: Η Αλίκη μέσω του ιδιωτικού της κλειδιού υπολογίζει τα και μέσω της XOR αποκρυπτογραφεί το μύνημα.

Συμπερασματικά:

Αλίκη Bob

Page 20: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών

Βιβλιογραφία

• [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, in Advances 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

Page 21: BBS  Γεννήτριες Ψευδοτυχαίων Αριθμών