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

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

Factoring N=(p r )*q for large r. Εισαγωγή Ακέραιοι της μορφής N=(p r )*q Ακέραιοι της μορφής N=(p r )*q Παρατηρήθηκε ότι η RSA decryption γίνεται πιο.

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


Παρουσίαση με θέμα: "Factoring N=(p r )*q for large r. Εισαγωγή Ακέραιοι της μορφής N=(p r )*q Ακέραιοι της μορφής N=(p r )*q Παρατηρήθηκε ότι η RSA decryption γίνεται πιο."— Μεταγράφημα παρουσίασης:

1 Factoring N=(p r )*q for large r

2 Εισαγωγή Ακέραιοι της μορφής N=(p r )*q Ακέραιοι της μορφής N=(p r )*q Παρατηρήθηκε ότι η RSA decryption γίνεται πιο Παρατηρήθηκε ότι η RSA decryption γίνεται πιο γρήγορα όταν το Ν είναι αυτής της μορφής. Electronic cash scheme για Ν=p 2 q Electronic cash scheme για Ν=p 2 q

3 Δυο λόγια για τη μέθοδο Με τη μέθοδο αυτή Για p,q πρώτους σταθερού μήκους ο N=(p r )*q παραγοντοποιείται ευκολότερα όσο μεγαλώνει το r. Για p,q πρώτους σταθερού μήκους ο N=(p r )*q παραγοντοποιείται ευκολότερα όσο μεγαλώνει το r. Για r=O(logp) o αλγόριθμος παραγοντοποιεί το Ν σε πολυωνυμικό χρόνο. Για r=O(logp) o αλγόριθμος παραγοντοποιεί το Ν σε πολυωνυμικό χρόνο. Για r=O(log 1/2 p) o αλγόριθμος είναι γρηγορότερος από τον ταχύτερο μέχρι στιγμής ECM. Για r=O(log 1/2 p) o αλγόριθμος είναι γρηγορότερος από τον ταχύτερο μέχρι στιγμής ECM.

4 Lattices Έστω u i,i=1,2,…,d γραμμικά ανεξάρτητα διανύσματα που ανήκουν στο Ζ n.Το σύνολο όλων των ακέραιων γραμμικών συνδυασμών των u i λέγεται lattice.Είναι πλήρους βαθμού αν d=n. Έστω u i,i=1,2,…,d γραμμικά ανεξάρτητα διανύσματα που ανήκουν στο Ζ n.Το σύνολο όλων των ακέραιων γραμμικών συνδυασμών των u i λέγεται lattice.Είναι πλήρους βαθμού αν d=n. Ένα πλήρους διάστασης lattice έχει ορίζουσα ίση με την ορίζουσα ενός dxd πίνακα με στήλες τα διανύσματα βάσης u i. Ένα πλήρους διάστασης lattice έχει ορίζουσα ίση με την ορίζουσα ενός dxd πίνακα με στήλες τα διανύσματα βάσης u i. (LLL)Έστω L ένα lattice που παράγεται από τα.Τότε ο αλγόριθμος LLL θα μας δώσει ένα διάνυσμα u τέτοιο ώστε: (LLL)Έστω L ένα lattice που παράγεται από τα.Τότε ο αλγόριθμος LLL θα μας δώσει ένα διάνυσμα u τέτοιο ώστε: ||υ||<=2 d/2 det(L) 1/d ||υ||<=2 d/2 det(L) 1/d

5 Ιστορική αναδρομή Ο Coppersmith έδειξε ότι γνωρίζοντας τα μισά πιο σημαντικά bits του π,δεχόμενοι ότι p και q έχουν το ίδιο μέγεθος,μπορούμε να παραγοντοποιήσουμε τον N=pq σε πολυωνυμικό χρόνο.(θεώρημα επίλυσης διμεταβλητών εξισώσεων στους ακεραίους). Ο Coppersmith έδειξε ότι γνωρίζοντας τα μισά πιο σημαντικά bits του π,δεχόμενοι ότι p και q έχουν το ίδιο μέγεθος,μπορούμε να παραγοντοποιήσουμε τον N=pq σε πολυωνυμικό χρόνο.(θεώρημα επίλυσης διμεταβλητών εξισώσεων στους ακεραίους). Ο Howgrave-Graham έφτασε με διαφορετικό τρόπο στα ίδια αποτελέσματα,με επίλυση εξισώσεων μίας μεταβλητής στους ακεραίους. Ο Howgrave-Graham έφτασε με διαφορετικό τρόπο στα ίδια αποτελέσματα,με επίλυση εξισώσεων μίας μεταβλητής στους ακεραίους. Εμείς χρησιμοποιούμε τη μέθοδο του Howgrave- Graham. Εμείς χρησιμοποιούμε τη μέθοδο του Howgrave- Graham.

6 Το θεώρημα Howgrave-Graham Έστω h(x)=Σ ι α ι χ ι,τότε ||h(x)|| 2 =Σ ι |α ι 2 |. Έστω h(x)=Σ ι α ι χ ι,τότε ||h(x)|| 2 =Σ ι |α ι 2 |. (HG98)Έστω h(x) ανήκει στο Ζ[x] πολυώνυμο βαθμού d.Υποθέτουμε ότι: (HG98)Έστω h(x) ανήκει στο Ζ[x] πολυώνυμο βαθμού d.Υποθέτουμε ότι: a. h(x 0 )=0modp rm για r,m θετικούς ακεραίους και |x 0 |<Χ b. ||h(xΧ)||<p rm /d 1/2 Τότε η h(x 0 )=0 ισχύει στους ακεραίους. Τότε η h(x 0 )=0 ισχύει στους ακεραίους.

7 Η βασική ιδέα Δίνονται: N=(p r )*q N=(p r )*q c,όπου q<p c c,όπου q<p c r Έστω ένας ακέραιος Ρ ώστε |Ρ-p|<X για κάποιο μεγάλο X και το πολυώνυμο f(x)=(P+x) r.Τότε το x 0 =p-P ικανοποιεί την f(x 0 )=0modp r,|x 0 |<X. Σχηματίζουμε ένα lattice με διανύσματα συντελεστές πολυωνύμων. Για κατάλληλο Χ ο LLL θα μας δώσει ένα διάνυσμα h(xX) ώστε ||h(xΧ)||<p rm /d 1/2.Αυτό μας δίνει την πολυωνυμική εξίσωση h(x 0 )=0modp rm.Από το θεώρημα HG έχουμε h(x 0 )=0 στους ακεραίους και λύνοντάς τη βρίσκουμε το x 0.Τέλος p=P+ x 0

8 Σχηματισμός lattice Έστω m,d θετικοί ακέραιοι.Θεωρούμε τα πολυώνυμα: g i,k (x)=N m-k x i f k (x), με k=0,…,m,i>=0. Έστω m,d θετικοί ακέραιοι.Θεωρούμε τα πολυώνυμα: g i,k (x)=N m-k x i f k (x), με k=0,…,m,i>=0. Το lattice L που θα χρησιμοποιήσουμε παράγεται από τα διανύσματα συντελεστών των πολυωνύμων: Το lattice L που θα χρησιμοποιήσουμε παράγεται από τα διανύσματα συντελεστών των πολυωνύμων: 1. g i,k (xΧ) για k=0,…,m-1 και i=0,…,r-1 2. g j,m (xX) για j=0,...,d-mr-1

9 LLL det(L)=det(M)<N rm(m+1)/2 X b/2,b=d 2 det(L)=det(M)<N rm(m+1)/2 X b/2,b=d 2 Από τον LLL έχουμε ότι υπάρχει u στο L ώστε:||u|| d <=2 b/2 det(L)<=2 b/2 N rm(m+1)/2 X b/2 (1). Από τον LLL έχουμε ότι υπάρχει u στο L ώστε:||u|| d <=2 b/2 det(L)<=2 b/2 N rm(m+1)/2 X b/2 (1). Το u είναι το διάνυσμα συντελεστών κάποιου πολυωνύμου h(xX) με ||h(xX)||=||u||.Ακόμα το h(xX) είναι ακέραιος γρ.συνδυασμός των g i,k (xX),άρα h(x 0 )=0modp rm. Το u είναι το διάνυσμα συντελεστών κάποιου πολυωνύμου h(xX) με ||h(xX)||=||u||.Ακόμα το h(xX) είναι ακέραιος γρ.συνδυασμός των g i,k (xX),άρα h(x 0 )=0modp rm.

10 X,m,d Για να εφαρμόσουμε το θ.HG πρέπει ||h(xΧ)||<p rm /d 1/2 <p rm.Από (1) παίρνουμε : Για να εφαρμόσουμε το θ.HG πρέπει ||h(xΧ)||<p rm /d 1/2 <p rm.Από (1) παίρνουμε : (2X) b/2 <p rmd N -rm(m+1)/2.Όμως N<p r+c άρα (2X) b/2 <p rmd-r(r+c)m(m+1)/2. Θέλουμε το μεγαλύτερο Χ που ικανοποιεί το φράγμα.Οι βέλτιστες τιμές για τα m,d είναι m 0 =d/(r+c)-1/2 και d 0 τέτοιο ώστε d 0 /(r+c)-1/2 να είναι μεταξύ 1/2r+c από ακέραιο. Θέλουμε το μεγαλύτερο Χ που ικανοποιεί το φράγμα.Οι βέλτιστες τιμές για τα m,d είναι m 0 =d/(r+c)-1/2 και d 0 τέτοιο ώστε d 0 /(r+c)-1/2 να είναι μεταξύ 1/2r+c από ακέραιο. Έτσι παίρνουμε X<p 1-c/(r+c)-2r/d. Έτσι παίρνουμε X<p 1-c/(r+c)-2r/d. d=2r(r+c)? d=2r(r+c)?

11 Πολυπλοκότητα exp(n)=2 n exp(n)=2 n Θεώρημα:Έστω N=p r q και q<p c για κάποιο c.Ο παράγοντας p μπορεί να βρεθεί από τα N,r,c από τον αλγόριθμο σε χρόνο: Θεώρημα:Έστω N=p r q και q<p c για κάποιο c.Ο παράγοντας p μπορεί να βρεθεί από τα N,r,c από τον αλγόριθμο σε χρόνο: exp(logp(c+1/r+c))O(γ) exp(logp(c+1/r+c))O(γ) όπου γ είναι ο χρόνος που χρειάζεται o LLL για lattice διάστασης O(r 2 ) με στοιχεία μεγέθους O(rlogN).Ο αλγόριθμος είναι ντετερμινιστικός και ανήκει στο PSPACE. όπου γ είναι ο χρόνος που χρειάζεται o LLL για lattice διάστασης O(r 2 ) με στοιχεία μεγέθους O(rlogN).Ο αλγόριθμος είναι ντετερμινιστικός και ανήκει στο PSPACE.

12 Παρατηρήσεις Όταν c=1 τότε η πολυπλοκότητα είναι της τάξης O(1/r).Έτσι όσο μεγαλύτερο το r,τόσο ευκολότερη η παραγοντοποίηση.Για r=εlogp,ε σταθερά,o αλγόριθμος τρέχει σε πολυωνυμικό χρόνο. Όταν c=1 τότε η πολυπλοκότητα είναι της τάξης O(1/r).Έτσι όσο μεγαλύτερο το r,τόσο ευκολότερη η παραγοντοποίηση.Για r=εlogp,ε σταθερά,o αλγόριθμος τρέχει σε πολυωνυμικό χρόνο. Για μικρό r ή για μεγάλο c o αλγόριθμος τρέχει σε εκθετικό χρόνο. (Πάντως οι περισσότερες εφαρμογές έχουν c=1 ή μικρό).

13 Σύγκριση με άλλες μεθόδους Method Method Lattice Factoring Lattice Factoring Elliptic Curve Elliptic Curve Number Field Sieve Number Field Sieve Asymptotic running time exp((logp) 1-ε ) exp(1.414(logp) 1/2 (loglog p) 1/2 ) exp(1.902(logN) 1/3( loglog N) 2/3

14 Στην πράξη όμως Για μικρούς ακεραίους και οι δύο άλλες μέθοδοι είναι ταχύτερες. Για μικρούς ακεραίους και οι δύο άλλες μέθοδοι είναι ταχύτερες. Όταν ο ακέραιος που θέλουμε να παραγοντοποιήσουμε έχει μέγεθος πάνω από 1000 bits τότε το Number Field Sieve δεν είναι πρακτικό.Όμως το ECM υπερτερεί αισθητά. Όταν ο ακέραιος που θέλουμε να παραγοντοποιήσουμε έχει μέγεθος πάνω από 1000 bits τότε το Number Field Sieve δεν είναι πρακτικό.Όμως το ECM υπερτερεί αισθητά. Αλλά:ο χρόνος του ECM αυξάνει εκθετικά όσο αυξάνεται το μέγεθος του ακεραίου,ενώ του LFM πολυωνυμικά.Εικάζεται ότι το LFM θα είναι ταχύτερο στην πράξη για p,q τουλάχιστον 400 bits και r>=20.(Δηλαδή πολύ μεγάλους ακέραιους) Αλλά:ο χρόνος του ECM αυξάνει εκθετικά όσο αυξάνεται το μέγεθος του ακεραίου,ενώ του LFM πολυωνυμικά.Εικάζεται ότι το LFM θα είναι ταχύτερο στην πράξη για p,q τουλάχιστον 400 bits και r>=20.(Δηλαδή πολύ μεγάλους ακέραιους)

15 Συμπεράσματα Για ακεραίους της μορφής N=p r q το πρόβλημα της παραγοντοποίησης γίνεται πιο εύκολο όσο μεγαλώνει το r,και για ορισμένες τιμές του r λύνεται σε πολυωνυμικό χρόνο.Επομένως οι ακέραιοι αυτοί πρέπει να χρησιμοποιούνται με προσοχή. Για ακεραίους της μορφής N=p r q το πρόβλημα της παραγοντοποίησης γίνεται πιο εύκολο όσο μεγαλώνει το r,και για ορισμένες τιμές του r λύνεται σε πολυωνυμικό χρόνο.Επομένως οι ακέραιοι αυτοί πρέπει να χρησιμοποιούνται με προσοχή. Ο αλγόριθμος δεν είναι ταχύτερος στην πράξη από τον ECM.Μπορεί να γίνει για μεγάλες τιμές των p,q,r. Ο αλγόριθμος δεν είναι ταχύτερος στην πράξη από τον ECM.Μπορεί να γίνει για μεγάλες τιμές των p,q,r. Μειονέκτημα του αλγόριθμου:Για κάθε προσέγγιση P του p πρέπει να ξανατρέξουμε τον LLL.Εάν δεν δίνεται η προσέγγιση πρέπει να την βρούμε ψάχνοντας εξαντλητικά. Μειονέκτημα του αλγόριθμου:Για κάθε προσέγγιση P του p πρέπει να ξανατρέξουμε τον LLL.Εάν δεν δίνεται η προσέγγιση πρέπει να την βρούμε ψάχνοντας εξαντλητικά. Ανοικτό πρόβλημα:Γενίκευση αλγορίθμου για ακεραίους της μορφής N=p r q s. Ανοικτό πρόβλημα:Γενίκευση αλγορίθμου για ακεραίους της μορφής N=p r q s.


Κατέβασμα ppt "Factoring N=(p r )*q for large r. Εισαγωγή Ακέραιοι της μορφής N=(p r )*q Ακέραιοι της μορφής N=(p r )*q Παρατηρήθηκε ότι η RSA decryption γίνεται πιο."

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


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