Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και...

50
Lattices και κρυπτογραφία: ένα εργαλείο για κρυπτανάλυση κρυπτοσυστημάτων και κρυπτογράφηση δεδομένων Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π. Επιβλέπων : A. Παπαϊωάννου 2005

description

Lattices και κρυπτογραφία: ένα εργαλείο για κρυπτανάλυση κρυπτοσυστημάτων και κρυπτογράφηση δεδομένων. Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π. Επιβλέπων : A . Παπαϊωάννου 2005. Το Knapsack Problem. Δεδομένα : Ένα σακίδιο χωρητικότητας Μ - PowerPoint PPT Presentation

Transcript of Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και...

Page 1: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Lattices και κρυπτογραφία:ένα εργαλείο για κρυπτανάλυση

κρυπτοσυστημάτων και κρυπτογράφηση δεδομένων

Γαλάνης ΒασίλειοςΣχολή Εφαρμοσμένων Μαθηματικών και Φυσικών

ΕπιστημώνΕ.Μ.Π.

Επιβλέπων : A. Παπαϊωάννου2005

Page 2: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το Knapsack Problem

Δεδομένα : • Ένα σακίδιο χωρητικότητας Μ• ν συνεχή αντικείμενα βάρους το καθένα wi και αξίας pi

όπου pi>0 και wi>0 (xi το κλάσμα των αντικειμένων που μπαίνει στο σακίδιο)

Ζητούμενα :

Η μεγιστοποίηση του ολικού κόστους ,ενώ

πρέπει να ικανοποιούνται και οι εξής περιορισμοί :

i inp x

,

0 1

0 0

i in

i

i i

w x M

x

p w

Page 3: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το Knapsack Problem

O greedy αλγόριθμος που εφαρμόζεται για τη λύση

του Knapsack Problem δίνει βέλτιστη λύση με

πολυπλοκότητα O(nlogn). ,

Page 4: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το Discrete Knapsack Problem

Δεδομένα: • Ένα σακίδιο χωρητικότητας Μ• n διακριτά αντικείμενα βάρους το καθένα wi και αξίας pi

όπου U={u1,u2,…,un} αντικείμενα με ακολουθία αποφάσεων αποφάσεων x1,x2,…,xn με xi{0,1} , που αντιστοιχούν στα u1,u2,…,un .

Ζητούμενα:

Η βέλτιστη ακολουθία αποφάσεων x1,x2,…,xn που

αντιστοιχούν στα u1,u2,…,un έτσι ώστε : i i

i i

x w M

p x MAXIMUM

Page 5: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το Discrete Knapsack Problem

To DKP επιλύεται με τον greedy αλγόριθμο

merge-discard με τη βοήθεια της διαδικασίας

Traceback. O αλγόριθμος έχει πολυπλοκότητα

χώρου Ο(2n) όπως επίσης και χρονική

πολυπλοκότητα Ο(2n) . Άρα, ο παραπάνω

αλγόριθμος δεν είναι αποδοτικός.

Page 6: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

DKP και πολυπλοκότητα

Για να αποδείξουμε ότι το DKP ανήκει στην κλάση

NP-complete θα το ανήξουμε στο πρόβλημα SAT

ακολουθώντας την εξής πορεία :

SAT 3SAT TRIPARTITEMATCHING

EXACT COVER BY 3-SETS

DISCRETEKNAPSACK

Page 7: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

DKP και πολυπλοκότητα

Κάθε στιγμιότυπο του DKP μπορεί να λυθεί σε Ο(nΜ) χρόνο ,όπου n ο αριθμός των αντικειμένων και Μ το όριο του βάρους.Το DKP είναι πρόβλημα που έχει πλήρως πολυωνυμικούχρόνου σχήμα προσέγγισης με κατώφλι προσέγγισης 0.Άρα το DKP περιέχεται στην υποκλάση των ΝΡΟ προβλημάτων FPTAS.

Page 8: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Merkle-Hellman

O αλγόριθμος δημιουργίας κλειδιών για τo βασικό M-H κρυπτοσύστημα :

Περιληπτικά : κάθε οντότητα δημιουργεί ένα δημόσιο κλειδί και ένα αντίστοιχο ιδιωτικό κλειδί.

1. Ένας ακέραιος n σταθεροποιείται ως μια κοινή παράμετρος του συστήματος.

2. Κάθε οντότητα Α πρέπει να εκτελέσει τα παρακάτω βήματα 3-7.

3. Επιλέγουμε μια υπεραυξητική ακολουθία (b1,b2,…,bn) και modulus M τέτοιο ώστε Μ > b1+b2+…+bn

4. Επιλέγουμε ένα τυχαίο ακέραιο W , 1 ≤ W ≤ M-1, τέτοιο ώστε gcd(W,M)=1

Page 9: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Merkle-Hellman

5. Επιλέγουμε μια τυχαία μετάθεση π των ακεραίων {1,2,...,n}

6. Υπολογίζουμε για i=1,2,…,n

7. Το δημόσιο κλειδί του Α είναι (α1,α2,...,αn) και το ιδιωτικό κλειδί της Α είναι το (π,Μ,W(b1,b2,…,bn))

Page 10: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Merkle-Hellman

O αλγόριθμος κρυπτογράφησης και αποκρυπτογράφησης του απλού Μ-Η κρυπτοσυστήματος :

Περιληπτικά : ο Β κρυπτογραφεί ένα μήνυμα m για τον Α και ο Α το αποκρυπτογραφεί.

1. Κρυπτογράφηση : ο Β πρέπει να κάνει τα ακόλουθα : (α) Να πάρει το αυθεντικό δημόσιο κλειδί του Α. (β) Να αναπαραστήσει το μήνυμα m ως μια δυαδική

συμβολοσειρά (string) μήκους n , m=m1m2…mn

(γ) Να υπολογίσει τον ακέραιο c=m1α1+m2α2+...+mnαn

(δ) Να στείλει το κρυπτοκείμενο c στον Α

Page 11: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Merkle-Hellman

2. Αποκρυπτογράφηση : για να ανακτήσει το απλό κείμενο m από το c , ο Α πρέπει να κάνει τα ακόλουθα :

(α) Να υπολογίσει (β) Λύνοντας ένα υπεραυξητικό knapsack βρίσκει ακεραίους

τέτοιους ώστε (γ) Τα bits του μηνύματος είναι

Υπάρχει και το επαναληπτικό M-H κρυπτοσύστημα το οποίοχρησιμοποιεί μια σειρά από modular πολλαπλασιασμούςαντί για έναν για να κρύψει την υπεραυξητική ακολουθία.

1 modd W c M

1 2, ,..., , {0,1}n ir r r r 1 1 2 2 ... n nd rb r b r b ( ) , i=1,2,...,ni im r

Page 12: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Chor-Rivest

Κατασκευή κλειδιών για το κρυπτοσύστημα C-HΠεριληπτικά : κάθε οντότητα δημιουργεί ένα δημόσιο κλειδί

και ένα αντίστοιχο ιδιωτικό κλειδί.Η οντότητα Α πρέπει να κάνει τα ακόλουθα : 1. Επιλέγει ένα πεπερασμένο σώμα με χαρακτηριστική p

όπου q = ph , p h , για το οποίο το πρόβλημα διακριτού λογαρίθμου είναι επιλύσιμο.

2. Επιλέγει ένα τυχαίο μονικό ανάγωγο πολυώνυμο f(x) βαθμού h πάνω στο p . Τα στοιχεία του θα αναπαριστώνται ως πολυώνυμα στο p[x] βαθμού μικρότερου από h , πολλαπλασιάζοντας με modulo f(x)

3. Επιλέγει ένα τυχαίο πρωταρχικό στοιχείο g(x) του σώματος

qF

qF

qF

Page 13: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Chor-Rivest

4. Για κάθε βασικό στοιχείο της βάσης ip, βρίσκουμε το διακριτό λογάριθμο του βασικού στοιχείου (x+i) στη βάση g(x)

5. Επιλέγει μια τυχαία μετάθεση π πάνω στο σύνολο των ακεραίων {0,1,2,...,p-1}.

6. Επιλέγει ένα τυχαίο ακέραιο d, 0 ≤ d ≤ ph-2

7. Υπολογίζει

8. Το δημόσιο κλειδί του Α είναι ;

Το ιδιωτικό του κλειδί είναι το (f(x),g(x),π,d) .

( )log ( )i g xa x i

( )( ) mod( 1) , 0 1hi ic a d p i p

0 1 1(( , ,..., ) , )pc c c p h

Page 14: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Chor-Rivest

Αλγόριθμος κρυπτογράφησης και αποκρυπτογράφησης των Chor-RivestΠεριληπτικά : ο Β κρυπτογραφεί ένα μήνυμα m για τον Α και ο Α το αποκρυπτογραφεί.1. Κρυπτογράφηση. Ο Β πρέπει να κάνει τα ακόλουθα :(α) Παίρνει την αυθεντική υπογραφή του Α (β) Αναπαριστά το μήνυμα m με ένα δυαδικό string μήκους

όπου ένας δυωνυμικός συντελεστής.lg

p

h

p

h

Page 15: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Chor-Rivest

(γ) Θεωρεί το m ως τη δυαδική αναπαράσταση ενός ακεραίου. Μετατρέπει αυτό τον ακέραιο σε ένα δυαδικό διάνυσμα μήκους p έχοντας ακριβώς h ‘1’ ως εξής:

i. Θέτει lh. ii. Για i από το 1 στο p κάνει τα ακόλουθα: Αν τότε θέτει

Αλλιώς θέτουμε Μi-10.(δ) Υπολογίζει (ε) Στέλνει το κρυπτοκείμενο στον Α.

0 1 1( , ,..., )pM M M M

p im

i

1 1, i

p iM m m

i

1l l 1

0mod( 1)

p hi i iic M c p

Page 16: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Chor-Rivest

2. Αποκρυπτογράφηση. για να ανακτήσει το απλό κείμενο m από το c , ο Α πρέπει να κάνει τα ακόλουθα :

(α) Υπολογίζει το r = (c – hd) mod (ph-1) (β) Υπολογίζει το u(x) = g(x)r mod f(x) (γ) Υπολογίζει το s(x) = u(x) + f(x), ένα μονικό πολυώνυμο

βαθμού h πάνω στο p

(δ) Παραγοντοποιούμε το s(x) σε γραμμικούς παράγοντες πάνω στο p : , όπου tj p

(ε) Υπολογίζει το δυαδικό διάνυσμα ως ακολούθως. Τα στοιχεία του Μ τα οποία είναι 1 έχουν ακεραίους . Τα εναπομείναντα στοιχεία είναι 0.

1( )

h

jjs x x t

0 1 1( , ,..., )pM M M M

1( ), 1jt j h

Page 17: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Chor-Rivest

(ζ) Το μήνυμα ανακτάται ως εξής :

i. Θέτει m0 , lh.

ii. Για i από το 1 στο p κάνει τα ακόλουθα:

Αν , τότε θέσε

1 1iM , 1

p im m l l

i

Page 18: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Παράδειγμα λειτουργίας του κρυπτοσύστηματος Chor-Rivest

Κατασκευή κλειδιών. Η οντότητα Α κάνει τα εξής : 1. Επιλέγει p = 7 και h = 4 2. Επιλέγει το ανάγωγο πολυώνυμο f(x)=x4+3x3+5x2+6x+2

βαθμού 4 πάνω στο 7 . Τα στοιχεία του πεπερασμένου

σώματος αναπαριστώνται ως πολυώνυμα στο 7[x] βαθμού μικρότερου από 4, με πολλαπλασιασμό που εκτελείται modulo f(x) 3. Επιλέγει το τυχαίο πρωταρχικό στοιχείο g(x)=3x3+3x2+6 4.Υπολογίζει τους ακόλουθους διακριτούς λογάριθμους :

0 ( )log ( ) 1028g xa x

47Z

Page 19: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Παράδειγμα λειτουργίας του κρυπτοσύστηματος Chor-Rivest

5. Επιλέγει την τυχαία μετάθεση π πάνω στο {0,1,2,3,4,5,6},που

ορίζεται από π(0)=6, π(1)=4, π(2)=0, π(3)=2, π(4)=1, π(5)=5,

π(6)=3.

6. Επιλέγει τον τυχαίο ακέραιο d = 1702

1 ( )log ( 1) 1935g xa x

2 ( )log ( 2) 2054g xa x

3 ( )log ( 3) 1008g xa x

4 ( )log ( 4) 379g xa x

5 ( )log ( 5) 1780g xa x

6 ( )log ( 6) 223g xa x

Page 20: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Παράδειγμα λειτουργίας του κρυπτοσύστηματος Chor-Rivest

7. Υπολογίζει

8. Το δημόσιο κλειδί του Α είναι

ενώ το ιδιωτικό του κλειδί είναι (f(x),g(x),π,d).

0 6( ) mod 2400 1925c a d

1 4( ) mod 2400 2081c a d 2 0( ) mod 2400 330c a d

3 2( ) mod 2400 1356c a d

4 1( ) mod 2400 1237c a d 5 5( ) mod 2400 1082c a d

6 3( ) mod 2400 310c a d

0 1 2 3 4 5 6(( , , , , , , ) 7, 4)c c c c c c c p h

Page 21: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Παράδειγμα λειτουργίας του κρυπτοσύστηματος Chor-Rivest

Κρυπτογράφηση. Για να κρυπτογραφήσει ένα μήνυμα m=22 για τον Α, ο Β κάνει τα ακόλουθα :(α) Παίρνει το αυθεντικό κλειδί του Α(β) Αναπαριστά το m ως ένα δυαδικό string μήκους 5 :

m=10110.(γ) Μετατρέπει το m σε ένα δυαδικό διάνυσμα Μ =

(1,0,1,1,0,0,1) μήκους 7.(δ) Υπολογίζει c=(c0+c2+c3+c4) mod2400 = 1521.(ε) Στέλνει το c = 1521 στον Α.

Page 22: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Παράδειγμα λειτουργίας του κρυπτοσύστηματος Chor-Rivest

Αποκρυπτογράφηση. Για να αποκρυπτογραφήσει το κρυπτοκείμενο c=1521, o A κάνει τα εξής :

(α) Υπολογίζει r =(c-hd) mod2400 = 1913(β) Υπολογίζει u(x) = g(x)1913 mod f(x) = x3+3x2+2x+5.(γ) Υπολογίζει s(x) = u(x) + f(x) = x4+4x3+x2+x.(δ) Παραγοντοποιεί s(x)=x(x+2)(x+3)(x+6) (ώστε t1=0, t2=2,

t3=3, t4=6)(ε) Τα στοιχεία του Μ που είναι ‘1’ έχουν ακεραίους π -1 π -1(0)=2, π -1(2)=3, π -1(3)=6 και π -1(6)=0. Άρα Μ=(1,0,1,1,0,0,1) (ζ) Μετατρέπει το Μ στον ακέραιο m = 22 , ανακτώντας το

κρυπτοκείμενο.

Page 23: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Ορισμοί και ιδιότητες των lattices

Ένα lattice ορίζεται ως μια διακριτή υποομάδα του n-διάστατου Ευκλείδιου χώρου n δοθέν από

, όπου τα είναι γραμμικώς

ανεξάρτητα. Σ’αυτή τη περίπτωση τα διανύσματα

λέμε ότι σχηματίζουν τη βάση για το lattice και

τυπικά ένα lattice θα δίνεται από ένα nm πίνακα της

μορφής :

1 ... mb b 4444444444444 4

Z ZL

1{ }mi ib

444444444444441{ }mi ib

44444444444444

1 2

| | |

...

| | |mB b b b

444444444444444444444444444444444444444444

Page 24: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Ορισμοί και ιδιότητες των lattices

Έστω =Βm ένα lattice με γεννήτορες τα διανύσματα

βάσης .Τότε το στοιχειώδες παραλληλεπίπεδο του υπό το Β ορίζεται από : .

Το πλάτος του παραλληλεπιπέδου Ρ(Β), δηλαδή το μέγιστο

πάνω στα i του μήκους των προβολών των πάνω στο

ορθογώνιο συμπλήρωμα του span( ,…, , ,…, )

Έστω =Βm ένα lattice. Τότε η ορίζουσα του , det(), ορίζεται από το m-διάστατο όγκο του Ρ(). Συγκεκριμένα

εάν για το ισχύει m = n τότε det()=|det(B)|

1{ }mi ib

44444444444444

1 1( ) { ... | 0 1}m iP B c b cb c 4444444444444444444444444444

ib44444444444444

1b44444444444444

1ib

444444444444441ib

44444444444444mb

44444444444444

Page 25: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Ορισμοί και ιδιότητες των lattices

Η ορίζουσα του =Βm δεν εξαρτάται από την επιλογή της

βάσης Β και δίνεται από

Το δυϊκό lattice είναι ένα πλήρως διαστατικό lattice , συμβ.

* , που αποτελείται από όλα τα διανύσματα που το

εσωτερικό τους γινόμενο με όλα τα διανύσματα στο είναι

ακέραιο, δηλαδή .

det( ) det( )TB BL

* { |{ , } για όλα τα z }n nz

Z ZL Ñ

Page 26: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Ορισμοί και ιδιότητες των lattices

Έστω =Βm ένα lattice. Τότε η βάση Β για είναι Minkowski-ανηγμένη αν δεν υπάρχει μη μηδενικό διάνυσμα στο το οποίο να είναι μικρότερο από το και γενικότερα να μην υπάρχει μη μηδενικό διάνυσμα στο το οποίο να είναι μικρότερο από και να μην περιέχεται στο span( ,…, ) έτσι ώστε τα ,…, να μπορούν να επεκταθούν σε βάση του .Έστω =Βm ένα lattice. Τότε η βάση Β για το λέγεται LLL-ανηγμένη αν και

όπου δ=1

1b44444444444444

ib44444444444444

1b44444444444444

1ib

444444444444441b

44444444444444ib

44444444444444

,

1 για 1

2i j j i m 2 2

* * *, 1 1 1

1 για 1

14

i i i i ib b b i m

444444444444444444444444444444444444444444

Page 27: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Ορισμοί και ιδιότητες των latticesΈστω ,…, μια LLL-ανηγμένη βάση για ένα latticen

και έστω ,…, γραμμικώς ανεξάρτητα σημεία του

lattice. Τότε για 1 ≤ i ≤ t.

*1b

44444444444444*nb

44444444444444

1x44444444444444

tx44444444444444

2 21

12 max{ ,..., }mi tb x x

444444444444444444444444444444444444444444

Page 28: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Provably hard lattice προβλήματα

Δοθέντος ενός lattice =Βm, το Πρόβλημα Ελαχίστου

Διανύσματος (Shortest Vector Problem - SVP) είναι το να

βρεθεί το ελάχιστο μη μηδενικό διάνυσμα στο .

Δοθέντος ενός lattice =Βm, το Πρόβλημα

Πλησιέστερου Διανύσματος (Closest Vector Problem –

CVP) είναι το να βρεθεί το πιο κοντινό σημείο του lattice στο

διάνυσμα .t

Page 29: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Provably hard lattice προβλήματα

Έστω ότι g (η συνάρτηση χάσματος) είναι μια παράμετρος η οποία μπορεί να ποικίλει ως μια συνάρτηση της διάστασης του υπό εξέταση lattice. Ορίζουμε το πρόβλημα GapSVPg από τα ακόλουθα :• (V,d) είναι ένα YES στιγμιότυπο για το GapSVPg εαν V μια

βάση για ένα lattice στο n και d τέτοιο ώστε για κάποια .• (V,d) είναι ένα ΝΟ στιγμιότυπο για το GapSVPg εαν V μια

βάση για ένα lattice στο n και d τέτοιο ώστε για όλα τα .

\{0}nz

Z

\{0}nz

Z

V z d

V z gd

Page 30: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Provably hard lattice προβλήματα

Έστω ότι g (η συνάρτηση χάσματος) είναι μια παράμετρος η οποία μπορεί να ποικίλει ως μια συνάρτηση της διάστασης του υπό εξέταση lattice. Ορίζουμε το πρόβλημα GapCVP΄g από τα ακόλουθα :• είναι ένα YES στιγμιότυπο για το GapCVP΄gεαν , και τέτοια ώστε για κάποια .• είναι ένα ΝΟ στιγμιότυπο για το GapCVP΄g εαν , και τέτοια ώστε για όλα τα και όλα τα .

( , , )V y d44444444444444

k nV Zky

44444444444444Z

2

V z y d 4444444444444 4

\{0}nz

Z( , , )V y d

44444444444444

k nV Zky

44444444444444Z d Ñ

2

V z wy gd 4444444444444 4

\{0}nz

Z wZ

Page 31: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Lattice αναγωγή και ο αλγόριθμος L3

Ο αλγόριθμος του Gauss : έστω η βάση για ένα 2-διάστατο lattice. Ο παρακάτω αλγόριθμος μας δίνει ένα Minkowski-ανηγμένο lattice σε πολυωνυμικά πολλές επαναλήψεις.if then swap ;

while or do

if then swap ;end whilereturn

1 2[ , ]b b4444444444444444444444444444

1 2b b4444444444444444444444444444 1 2,b b

4444444444444444444444444444

2 1 2b b b 444444444444444444444444444444444444444444

2 1 2b b b 444444444444444444444444444444444444444444

1 2

2 2 12

2

, ;

b bb b b

b

4444444444444444444444444444444444444444444444444444444444444444444444

44444444444444

1 2b b4444444444444444444444444444

1 2,b b4444444444444444444444444444

1 2[ , ]b b4444444444444444444444444444

Page 32: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Lattice αναγωγή και ο αλγόριθμος L3

Αλγόριθμος LLL αναγωγή βάσηςΟ ακόλουθος αλγόριθμος υπολογίζει μια LLL-ανηγμένηβάση για =Βn σε πολυωνυμικά πολλές επαναλήψεις.LLL( , ..., ) Υπολογίζουμε την ορθογώνια Gram-Schmidt βάση ,…, ; ; k=2 ; while k ≤ m do if then sizereduce(k);

1b44444444444444

mb44444444444444

*1b

44444444444444*mb

44444444444444

2*

i iB b44444444444444

, 1

1

2k k

Page 33: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Lattice αναγωγή και ο αλγόριθμος L3

if then swap(k); if k > 2 then k = k-1; else k = k+1; end if end whileend LLL

2 2* * *

, 1 1 1

3

4k k k k kb b b 444444444444444444444444444444444444444444

Page 34: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Lattice αναγωγή και ο αλγόριθμος L3

Υπορουτίνα Size Reductionsizereduce=(k) i = 1; while i < k do i = i + 1; end while end sizereduce

, 1 1 ;k k k k kb b b 444444444444444444444444444444444444444444

, 1 , 1 , 1 ;k k k k k k

Page 35: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Lattice αναγωγή και ο αλγόριθμος L3

Υπορουτίνα Swapswap(k) Eναλλάσουμε μεταξύ τους τα και ; Τ = Βk ; ;

Εκτελούμε ταυτόχρονα τις παρακάτω αναθέσεις \\Ενημερώνουμε τους Gram-Schmidt συντελεστες

, 1k k

, 1 1, 1 2

1

k k kk k

k k

B

B B

21 1k k kB B B

12

1

k kk

k k

B BB

B B

1,k i ,k i

Page 36: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Lattice αναγωγή και ο αλγόριθμος L3

i – 1 ; while i ≤ k – 2 do Αλλάζουμε μεταξύ τους τα και end while i = k + 1 ; while i ≤n do Ταυτόχρονα εκτελούμε τις παρακάτω εργασίες end whileend swap

1,k i ,k i

, 1 , 1 , 1 ;i k i k i k kB

, , 1 , , 1 ;i k i k i k k k

Page 37: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Goldreich-Goldwasser-Halevi

H γενική αρχή λειτουργίας έχει ως εξής : το δημόσιο κλειδί είναι μια φτωχή lattice βάση (δηλαδή μια βάση με μακριάδιανύσματα) και το ιδιωτικό κλειδί είναι η ανηγμένη βάση του ίδιου lattice. Η κρυπτογράφηση πραγματοποιείται παίρνοντας το ένα σημείο του lattice που ανταποκρίνεται στο απλό κείμενο και εφαρμόζουμε πάνω του μια μικρή τυχαία διαταραχή έτσι ώστε να πάρουμε ένα σημείο εκτός του lattice, του οποίου το πλησιέστερο σημείο στο lattice να είναι το σημείο του απλού κειμένου. Άρα τα κρυπτοκείμενα είναι στιγμιότυπα του CVP και η ασφάλεια του ιδιωτικού κλειδιού εξαρτάται από τη δυσκολία της εύρεσης μιας αρκετά ανηγμένης βάσης του lattice.

Page 38: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Goldreich-Goldwasser-Halevi

Oι κρυπτογραφήσεις αποκαλύπτουν πληροφορίες για τα

απλά κείμενα modulo 2σ, μια παρατήρηση που μας

επιτρέπει να απλοποιήσουμε το στιγμιότυπο του CVP που

παρουσιάζεται από ένα κρυπτοκείμενο και συνεπώς να

αποκρυπτογραφήσουμε μηνύματα χρησιμοποιώντας μια

βάση του που δεν είναι ανάγκη να είναι ανηγμένη στην

ιδιωτική βάση R. Σκοπός μας είναι να μειώσουμε το

διάνυσμα σφάλματος έτσι ώστε να έχουμε προς επίλυση ένα

ευκολότερο στιγμιότυπο του CVP.

Page 39: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Ajtai-Dwork

Το κρυπτοσύστημα Ajtai-Dwork έχει ιδιωτικό κλειδί ένα τυχαίο διάνυσμα μέσα από μια n-διάστατη μπάλα μήκους 1 και δημόσιο κλειδί μια κατανομή

που τα διανύσματα της ( ,..., ) να σχηματίζουν ένα παραλληλεπίπεδο που το πλάτος του να είναι μεγαλύτερο από όριο τέτοιο ώστε η ασφάλεια του κρυπτοσυστήματος να είναι το ίδιο δύσκολη με το πρόβλημα .

u

uH

1u44444444444444

mu44444444444444

gGapCVP

Page 40: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα Ajtai-Dwork

Η κρυπτογράφηση εκτελείται κατά ένα bit τη φορά με κατάλληλα ανάθεση τιμών στα ‘0’ και ‘1’ bits του απλού κειμένου και η αποκρυπτογράφηση γίνεται με υπολογισμό του και έλεγχο της απόστασης του κρυπτογραφημένου bit σε σχέση με το bit απλού κειμένου με μεγάλη πιθανότητα σωστής αποκρυπτογράφησης. Η αδυναμία του κρυπτοσυστήματος είναι η εκτέλεση της κρυπτογράφησης κατά ένα bit τη φορά όπου και δείχθηκε ότι είναι ασφαλές μόνο για άβολα μεγάλες παραμέτρους.

,c u

Page 41: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα NTRU

Όλοι οι υπολογισμοί πραγματοποιούνται στο δακτύλιο

όπου q απεικονίζει τους ακεραίουςmodulo q.

Ιδιωτικό κλειδί : ένα τυχαίο στοιχείο ( df, df -1) με (α,b)={ f | f έχει α συντελεστές ίσους με 1, b ίσους με -1 και όλουςτους υπόλοιπους ίσους με 0} Δημόσιο κλειδί : h=f -1*g όπου .Κρυπτογράφηση : με Αποκρυπτογράφηση : με κατάλληλη επιλογή παραμέτρων εφαρμόζουμε και παίρνουμε και άρα το m.

( , )g gg d d L

[ ] /( 1)nq x x R Z

( )c p h m 1 1{ ,..., }

2 2

p pm

R

1pf (mod )m p

Page 42: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Το κρυπτοσύστημα NTRU

Οι επιθέσεις των Coppersmith και Shamir και αυτή του

May προσπαθούν να παρουσιάσουν το NTRU ως μια

μορφή lattice και χρησιμοποιώντας το Coppersmith-Shamir

lattice να φτιάξουν μια κατάλληλη lattice κατασκευή την

οποία και χρησιμοποιούν για να επιτεθούν στο NTRU.

CSL

Page 43: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Επίθεση στο κρυπτοσύστημα Μerkle-Hellman με χρήση του αλγόριθμου LLL

Οι δυο επιθέσεις κατά του κρυπτοσυστήματος Μ-Η που

παρουσιάζουμε είναι : Η επίθεση του Shamir : Με χρήση του αλγόριθμου LLL

προσεγγίζει τα στοιχεία U και Μ του ιδιωτικού κλειδιού μέσα σε ένα αρκετά μικρό διάστημα σε πολυωνυμικό χρόνο.

Η επίθεση χαμηλής πυκνότητας των Lagarias-Odlyzko : Με τρέξιμο του αλγόριθμου LLL στη βάση V των βαρών α1,...,αn ελέγχοντας αν στην ανηγμένη βάση που παίρνουμε έχουμε διάνυσμα που να έιναι η λύση.

Page 44: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Επίθεση στο κρυπτοσύστημα Μerkle-Hellman με χρήση του αλγόριθμου LLL

Ακολουθεί ένα σύντομο παράδειγμα ‘σπασίματος’ του βασικού κρυπτοσυστηματος Merkle-Helman : Έστω ότι έχουμε ένα ιδιωτικό knapsack :• S = [2, 5, 9, 21, 45, 103, 215, 450, 946] που είναι το

ιδιωτικό μας κλειδί;• p = 2003; • m = 1289; και άρα, m-1 = 317. Το δημόσιο knapsack:

• ti = 1289 *si mod 2003 • οπότε T = [575, 436, 1586, 1030, 1921, 569, 721, 1183,

1570] που είναι το δημόσιο μας κλειδί.

Page 45: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Επίθεση στο κρυπτοσύστημα Μerkle-Hellman με χρήση του αλγόριθμου LLL

Θα κρυπτογραφήσουμε το 101100111 ως 575 + 1586 + 1030 + 721 + 1183 + 1570 = 6665. Ο δέκτης υπολογίζει 6665 * 317 mod 2003 = 1643 και χρησιμοποιεί το S για να βρει το απλό κείμενο.Αυτό γίνεται με το να κατασκευάσουμε το binary string από δεξιά προς τα αριστερά : 1643 - 946(1) = 697; 697 - 450(1) = 247; 247 - 215(1) = 32; 32 - 45(0) = 32;

Page 46: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Επίθεση στο κρυπτοσύστημα Μerkle-Hellman με χρήση του αλγόριθμου LLL

32 - 21(1) = 11;

11 - 9(1) = 2;

2 - 5(0) = 2;

2 - 2(1) = 0.

2 - 2(1) = 0.

Παίρνουμε πίσω το αρχικό μήνυμα 101100111.

Ο επιτιθέμενος γνωρίζει :

• το δημόσιο κλειδί T = [575, 436, 1586, 1030, 1921, 569, 721, 1183, 1570]

• και το κρυπτοκείμενο 6665

Page 47: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Επίθεση στο κρυπτοσύστημα Μerkle-Hellman με χρήση του αλγόριθμου LLL

Ο επιτιθέμενος θέλει να βρει ένα xi στο {0, 1} τέτοιο ώστε

575x0+ + 436x1 + 1586x2 + 1030x3 + 1921x4 + 569x5 +

721x6 + 1183x7 + 1570x8 = 6665.

Αυτό μπορεί να γραφεί ως T * X = 6665. Ας ξαναγράψουμε

το πρόβλημα ως M * V = W όπου

Page 48: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Επίθεση στο κρυπτοσύστημα Μerkle-Hellman με χρήση του αλγόριθμου LLL

Η λύση είναι το μικρότερο διάνυσμα του lattice που

παράγεται από τις στήλες του Μ και εκεί είναι που

χρησιμοποιούμε τον αλγόριθμο LLL για να βρούμε τη λύση.

Ο πίνακας Μ΄ είναι το αποτέλεσμα της εφαρμογής του LLL

πάνω στον Μ.

Page 49: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

Επίθεση στο κρυπτοσύστημα Chor-Rivest με χρήση του αλγόριθμου LLL

Πυκνότητα : ορίζουμε ως πυκνότητα ενός συνόλου βαρών

a = (α1, ..., αn) ως

Οι τρεις επιθέσεις που παρουσιάζονται είναι οι : Επίθεση με γνωστή τη π (Odlyzko) Επίθεση χωρίς τίποτα γνωστό (Brickell) Επίθεση χαμηλής πυκνότητας (Lagarias-Odlyzko)

2

αριθμός bits στο απλό κείμενο( )

log (max ) μέσος αριθμός bits στο κρυπτοκείμενο a

i i

nd

a

Page 50: Γαλάνης Βασίλειος Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Ε.Μ.Π.

ΤΕΛΟΣ !