Top Banner
Faster exponential time algorithms for the shortest vector problem Panagiotis Voulgaris Daniele Micciancio University of California, San Diego January 19, 2010, SODA Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP
58

Faster exponential time algorithms for the shortest vector ...

Jan 18, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Faster exponential time algorithms for the shortest vector ...

Faster exponential time algorithmsfor the shortest vector problem

Panagiotis Voulgaris Daniele Micciancio

University of California, San Diego

January 19, 2010,SODA

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 2: Faster exponential time algorithms for the shortest vector ...

Applications of lattice algorithms

Useful in a number of fields:

Combinatorial Problems:

Knapsack problems, Integer Programming, . . .

Algebraic Number Theory:

Factoring polynomials with rational coefficients, . . .

Cryptanalysis applications:

Ntru, Special cases of RSA, . . .

Cryptography based directly on Lattices:

LWE variants, Fully Homomorphic crypto, . . .

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 3: Faster exponential time algorithms for the shortest vector ...

Shortest Vector Problem (SVP)

SVP is a foundational lattice problem:

Exact SVP is known to be NP-complete

In most applications approximations are enough

However approx. algorithms utilize exact SVP for lowerdimensions

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 4: Faster exponential time algorithms for the shortest vector ...

1 BackgroundDefinitionsExisting Algorithms

2 ContributionList SieveTheoretical AnalysisImplementation

3 Final RemarksSummary

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 5: Faster exponential time algorithms for the shortest vector ...

1 BackgroundDefinitionsExisting Algorithms

2 ContributionList SieveTheoretical AnalysisImplementation

3 Final RemarksSummary

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 6: Faster exponential time algorithms for the shortest vector ...

Shortest Vector Problem (SVP)

0 ~b1

~b2

Given a linearly indep. basis:B = {~b1,~b2, . . . ,~bm}

Lattice is the closure of Bunder (+,−):L(B) = {

∑ai · ~bi , ai ∈ Z}

Shortest lattice point:~s ∈ L(B) \~0 such that:∀~p ∈ L(B) \~0, ‖~s‖ ≤ ‖~p‖Notice that the basisis not unique

Shortest Vector Problem:Given a basis B, find ashortest lattice point ~s

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 7: Faster exponential time algorithms for the shortest vector ...

Shortest Vector Problem (SVP)

00 ~b1

~b2

Given a linearly indep. basis:B = {~b1,~b2, . . . ,~bm}Lattice is the closure of Bunder (+,−):L(B) = {

∑ai · ~bi , ai ∈ Z}

Shortest lattice point:~s ∈ L(B) \~0 such that:∀~p ∈ L(B) \~0, ‖~s‖ ≤ ‖~p‖Notice that the basisis not unique

Shortest Vector Problem:Given a basis B, find ashortest lattice point ~s

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 8: Faster exponential time algorithms for the shortest vector ...

Shortest Vector Problem (SVP)

00 ~b1

~b2

Given a linearly indep. basis:B = {~b1,~b2, . . . ,~bm}Lattice is the closure of Bunder (+,−):L(B) = {

∑ai · ~bi , ai ∈ Z}

Shortest lattice point:~s ∈ L(B) \~0 such that:∀~p ∈ L(B) \~0, ‖~s‖ ≤ ‖~p‖

Notice that the basisis not unique

Shortest Vector Problem:Given a basis B, find ashortest lattice point ~s

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 9: Faster exponential time algorithms for the shortest vector ...

Shortest Vector Problem (SVP)

00 ~b1

~b2~b1

~b2

Given a linearly indep. basis:B = {~b1,~b2, . . . ,~bm}Lattice is the closure of Bunder (+,−):L(B) = {

∑ai · ~bi , ai ∈ Z}

Shortest lattice point:~s ∈ L(B) \~0 such that:∀~p ∈ L(B) \~0, ‖~s‖ ≤ ‖~p‖Notice that the basisis not unique

Shortest Vector Problem:Given a basis B, find ashortest lattice point ~s

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 10: Faster exponential time algorithms for the shortest vector ...

Shortest Vector Problem (SVP)

00

~b1

~b2

Given a linearly indep. basis:B = {~b1,~b2, . . . ,~bm}Lattice is the closure of Bunder (+,−):L(B) = {

∑ai · ~bi , ai ∈ Z}

Shortest lattice point:~s ∈ L(B) \~0 such that:∀~p ∈ L(B) \~0, ‖~s‖ ≤ ‖~p‖Notice that the basisis not unique

Shortest Vector Problem:Given a basis B, find ashortest lattice point ~s

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 11: Faster exponential time algorithms for the shortest vector ...

1 BackgroundDefinitionsExisting Algorithms

2 ContributionList SieveTheoretical AnalysisImplementation

3 Final RemarksSummary

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 12: Faster exponential time algorithms for the shortest vector ...

1st Approach: Enumeration

0

C

0

Main idea

Given a basis B,determine a region C,such that ~s ∈ C.

Enumerate all the points in C

Advantages:

Minimal space

Disadvantages:

#Points can be 2O(nlogn)

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 13: Faster exponential time algorithms for the shortest vector ...

2nd Approach: Sieving

0

Main idea

Sample 2cn points, ‖~p‖ ≤ R0

Cover the samples with spheresof radius R1 < R0 centered atsamplesObtain shorter vectors bysubtracting the centers

Advantages:

#Points bounded by 2O(n)

Disadvantages:

Space complexity of 2O(n)

Impractical?

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 14: Faster exponential time algorithms for the shortest vector ...

2nd Approach: Sieving

0

Main idea

Sample 2cn points, ‖~p‖ ≤ R0

Cover the samples with spheresof radius R1 < R0 centered atsamplesObtain shorter vectors bysubtracting the centers

Advantages:

#Points bounded by 2O(n)

Disadvantages:

Space complexity of 2O(n)

Impractical?

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 15: Faster exponential time algorithms for the shortest vector ...

2nd Approach: Sieving

0

Main idea

Sample 2cn points, ‖~p‖ ≤ R0

Cover the samples with spheresof radius R1 < R0 centered atsamplesObtain shorter vectors bysubtracting the centers

Advantages:

#Points bounded by 2O(n)

Disadvantages:

Space complexity of 2O(n)

Impractical?

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 16: Faster exponential time algorithms for the shortest vector ...

2nd Approach: Sieving

0

Main idea

Sample 2cn points, ‖~p‖ ≤ R0

Cover the samples with spheresof radius R1 < R0 centered atsamplesObtain shorter vectors bysubtracting the centers

Advantages:

#Points bounded by 2O(n)

Disadvantages:

Space complexity of 2O(n)

Impractical?

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 17: Faster exponential time algorithms for the shortest vector ...

Time-line: Sieving Algorithms

Year, Authors Time Space Practice

2001, Ajtai, Kumar, Sivakumar 2O(n) 2O(n) –2004, Regev 216n 28n –2008, Nguyen, Vidick 25.9n 22.95n Practical2010, This work 23.2n 21.33n > 102 speed-up

Table: Time-line of Sieving Algorithms

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 18: Faster exponential time algorithms for the shortest vector ...

Time-line: Sieving Algorithms

Year, Authors Time Space Practice

2001, Ajtai, Kumar, Sivakumar 2O(n) 2O(n) –2004, Regev 216n 28n –2008, Nguyen, Vidick 25.9n 22.95n Practical2010, This work 23.2n 21.33n > 102 speed-up2010, Pujol, Stelhe 22.46n 21.233n –

Table: Time-line of Sieving Algorithms

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 19: Faster exponential time algorithms for the shortest vector ...

1 BackgroundDefinitionsExisting Algorithms

2 ContributionList SieveTheoretical AnalysisImplementation

3 Final RemarksSummary

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 20: Faster exponential time algorithms for the shortest vector ...

Points and halfspaces

0

~c

Algorithm: Reduce(~p,~c)

while ‖~p − ~c‖ < ‖~p‖~p ← ~p − ~c

~c defines two half-spaces:

~c halfspace: ‖~p − ~c‖ < ‖~p‖~0 halfspace: ‖~p − ~c‖ ≥ ‖~p‖

Subtracting ~c , brings anypoint in the ~0 halfspace

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 21: Faster exponential time algorithms for the shortest vector ...

Points and halfspaces

0

~c

Algorithm: Reduce(~p,~c)

while ‖~p − ~c‖ < ‖~p‖~p ← ~p − ~c

~c defines two half-spaces:

~c halfspace: ‖~p − ~c‖ < ‖~p‖~0 halfspace: ‖~p − ~c‖ ≥ ‖~p‖Subtracting ~c , brings anypoint in the ~0 halfspace

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 22: Faster exponential time algorithms for the shortest vector ...

Reduce with a list of points

0

~c1

~c2

~c3

~c4

Algorithm: Reduce(~p, C )

while ∃~ci ∈ C, such that:‖~p − ~ci‖ < ‖~p‖

~p ← ~p − ~ci

Consider a set of points C

Notice the intersection ofthe ~0 halfspaces

When Reduce terminates,~p is in the intersection ofthe ~0 halfspaces.

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 23: Faster exponential time algorithms for the shortest vector ...

Reduce with a list of points

0

~c1

~c2

~c3

~c4

Algorithm: Reduce(~p, C )

while ∃~ci ∈ C, such that:‖~p − ~ci‖ < ‖~p‖

~p ← ~p − ~ci

Consider a set of points C

Notice the intersection ofthe ~0 halfspaces

When Reduce terminates,~p is in the intersection ofthe ~0 halfspaces.

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 24: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 25: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

~c1

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 26: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

~c1

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 27: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

~c1

~c2

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 28: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

~c1

~c2

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 29: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

~c1

~c2

~c3

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 30: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

~c1

~c2

~c3

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 31: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

~c1

~c2

~c3

~c4

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 32: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

~c1

~c2

~c3

~c4

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 33: Faster exponential time algorithms for the shortest vector ...

List Sieve - Example

00

~c1

~c2

~c3

~c4

Algorithm: ListSieve(B, ‖~s‖)C ← {}while (true) {~p ← Sample(B)~p′ ← Reduce(~p,C )if (~p′ = ~0)continue

if (‖~p′‖ ≤ ‖~s‖)return ~p′

C ← C ∪ {~p′}}

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 34: Faster exponential time algorithms for the shortest vector ...

1 BackgroundDefinitionsExisting Algorithms

2 ContributionList SieveTheoretical AnalysisImplementation

3 Final RemarksSummary

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 35: Faster exponential time algorithms for the shortest vector ...

Analysis of List Sieve

The analysis has two parts:

Space ComplexityBound #Points in C

Time ComplexityBound the probability of getting ~0 (collision)

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 36: Faster exponential time algorithms for the shortest vector ...

Lower bounds on angles ⇒ upper bound on points.

0

c1

c2

φc1,c2

Let φc1,c2 angle between c1, c2

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 37: Faster exponential time algorithms for the shortest vector ...

Lower bounds on angles ⇒ upper bound on points.

0

c1

c2

c3

c4

c5

φc1,c2

Let φc1,c2 angle between c1, c2

Theorem:Kabatiansky, Levenshtein 1978

Let set S such that∀ci , cj ∈ S : φci ,cj > φ0 then:

|S | ≤ 2k(φ0)n+o(n)

Divide C in subsets with lowerbounded angles.

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 38: Faster exponential time algorithms for the shortest vector ...

Bounding |C |: Spherical Shells

0

Divide space to thin shells:Si = Shell(αi‖~s‖, αi+1‖~s‖),1 < α < 1.1

C is covered by poly(n) suchshells

If ∀i we lower bound theangles of Si ∩ C then:|Si ∩ C | ≤ 2kn and|C | ≤ poly(n)2kn

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 39: Faster exponential time algorithms for the shortest vector ...

Bounding the angles of points in C

0

~ci

αi‖~s‖

αi+1‖~s‖

Consider one shell Si

ci is a point in C ∩ Si

A new point should be in~0-halfspace

Therefore φ~ci ,~cjis lower

bounded

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 40: Faster exponential time algorithms for the shortest vector ...

Bounding the angles of points in C

0

~ci

αi‖~s‖

αi+1‖~s‖

Consider one shell Si

ci is a point in C ∩ Si

A new point should be in~0-halfspace

Therefore φ~ci ,~cjis lower

bounded

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 41: Faster exponential time algorithms for the shortest vector ...

Bounding the angles of points in C

0

~ci

αi‖~s‖

αi+1‖~s‖

~cj

φ ' 60◦

Consider one shell Si

ci is a point in C ∩ Si

A new point should be in~0-halfspace

Therefore φ~ci ,~cjis lower

bounded

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 42: Faster exponential time algorithms for the shortest vector ...

Analysis of List Sieve

The analysis has two parts:

Space ComplexityBound #Points in C

Time ComplexityBound the probability of getting ~0 (collision)

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 43: Faster exponential time algorithms for the shortest vector ...

Perturbation Technique, AKS

0

~c1

~c2

~c3

~c4

Instead of sampling a latticepoint ~p

Sample (~p,~ε), so that~p − ~ε ∈ LReduce(~p, C ) and consider~p′ − ~ε~p can correspond to twolattice points

Reduce is oblivious of ~ε,

Lots of collisions ⇒ lots ofpoints near ~0 (and near ~s)

⇒ non negligible probabilityof finding ~s

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 44: Faster exponential time algorithms for the shortest vector ...

Perturbation Technique, AKS

0

~c1

~c2

~c3

~c4

Instead of sampling a latticepoint ~p

Sample (~p,~ε), so that~p − ~ε ∈ LReduce(~p, C ) and consider~p′ − ~ε

~p can correspond to twolattice points

Reduce is oblivious of ~ε,

Lots of collisions ⇒ lots ofpoints near ~0 (and near ~s)

⇒ non negligible probabilityof finding ~s

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 45: Faster exponential time algorithms for the shortest vector ...

Perturbation Technique, AKS

0

~c1

~c2

~c3

~c4

Instead of sampling a latticepoint ~p

Sample (~p,~ε), so that~p − ~ε ∈ LReduce(~p, C ) and consider~p′ − ~ε~p can correspond to twolattice points

Reduce is oblivious of ~ε,

Lots of collisions ⇒ lots ofpoints near ~0 (and near ~s)

⇒ non negligible probabilityof finding ~s

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 46: Faster exponential time algorithms for the shortest vector ...

Perturbation Technique, AKS

0

~c1

~c2

~c3

~c4

Instead of sampling a latticepoint ~p

Sample (~p,~ε), so that~p − ~ε ∈ LReduce(~p, C ) and consider~p′ − ~ε~p can correspond to twolattice points

Reduce is oblivious of ~ε,

Lots of collisions ⇒ lots ofpoints near ~0 (and near ~s)

⇒ non negligible probabilityof finding ~s

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 47: Faster exponential time algorithms for the shortest vector ...

Disadvantages of Perturbations

0 ~ci

~pj

After Reduce ~pj is furtherfrom ~cj

But the perturbationdecreases the minimumangles

This is especially bad forshells near ~0

Perturbations greatlyincrease space bounds:20.41n+o(n) VS 21.33n+o(n)

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 48: Faster exponential time algorithms for the shortest vector ...

Disadvantages of Perturbations

0 ~ci

~pj

~cj

−~εj

After Reduce ~pj is furtherfrom ~cj

But the perturbationdecreases the minimumangles

This is especially bad forshells near ~0

Perturbations greatlyincrease space bounds:20.41n+o(n) VS 21.33n+o(n)

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 49: Faster exponential time algorithms for the shortest vector ...

Disadvantages of Perturbations

0 ~ci

~cj

≥ ‖~s‖

After Reduce ~pj is furtherfrom ~cj

But the perturbationdecreases the minimumangles

This is especially bad forshells near ~0

Perturbations greatlyincrease space bounds:20.41n+o(n) VS 21.33n+o(n)

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 50: Faster exponential time algorithms for the shortest vector ...

Disadvantages of Perturbations

0 ~ci

~cj

After Reduce ~pj is furtherfrom ~cj

But the perturbationdecreases the minimumangles

This is especially bad forshells near ~0

Perturbations greatlyincrease space bounds:20.41n+o(n) VS 21.33n+o(n)

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 51: Faster exponential time algorithms for the shortest vector ...

1 BackgroundDefinitionsExisting Algorithms

2 ContributionList SieveTheoretical AnalysisImplementation

3 Final RemarksSummary

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 52: Faster exponential time algorithms for the shortest vector ...

Practical variant Gauss Sieve

Practical implementation – Gauss Sieve:

No perturbations (Proposed in [NV 2008])

The list C is fully reduced:∀~ci ,~cj ∈ C ‖~ci − ~cj‖ ≥ ‖~ci‖Therefore φ~ci ,~cj

≥ 60◦!

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 53: Faster exponential time algorithms for the shortest vector ...

Running time comparison

0.1

1

10

100

1000

10000

100000

35 40 45 50 55 60

Tim

e in

sec

onds

(Lo

g-sc

ale)

Dimension

Running time comparisson

NV SieveGauss Sieve

NTL Schnorr-Euchner with BKZ-20

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 54: Faster exponential time algorithms for the shortest vector ...

Gauss Sieve

' 102 to 103 faster, ' 70× less points

20.21n+o(n) space bound

Faster than NTL for dimensions > 40

Bottleneck is time, not space

Implementation available at http://cse.ucsd.edu/~pvoulgar/

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 55: Faster exponential time algorithms for the shortest vector ...

1 BackgroundDefinitionsExisting Algorithms

2 ContributionList SieveTheoretical AnalysisImplementation

3 Final RemarksSummary

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 56: Faster exponential time algorithms for the shortest vector ...

Summary

We improve the work of [AKS 2001] and [NV 2008] with:

List Sieving:

Lower space bounds in theoryFaster implementations in practiceBetter algorithmic intuition

Connection with spherical codes:

Use of powerful theorems for analysis [KL 1978]

Faster heuristic:

Much faster, less space than previous implementation

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 57: Faster exponential time algorithms for the shortest vector ...

Open Problems

Open Problems:

SVP in 2cn time with poly(n) space

Other lattice problems in 2cn time/space (CVP, SIVP)

Deterministic variant

Specific to our work:

Bound time complexity without perturbations

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP

Page 58: Faster exponential time algorithms for the shortest vector ...

Thank you!

Thank you for attending!

Panagiotis Voulgaris, Daniele Micciancio Faster exponential algorithms for SVP