generating hard instances of lattice problems

23
Generating Hard Generating Hard instances of Lattice instances of Lattice Problems Problems

Upload: zarek

Post on 07-Jan-2016

45 views

Category:

Documents


1 download

DESCRIPTION

Generating Hard instances of Lattice Problems. Generating Hard Instances of Lattice Problems. by. M. Ajtai. Generating Hard Instances. There are many hard problems. Can we generate hard instances of those problems ? (good for cryptography). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Generating Hard instances of Lattice Problems

Generating Hard Generating Hard instances of Lattice instances of Lattice ProblemsProblems

Page 2: Generating Hard instances of Lattice Problems

Generating Hard Generating Hard Instances of Lattice Instances of Lattice

ProblemsProblems

byby

M. AjtaiM. Ajtai

Page 3: Generating Hard instances of Lattice Problems

Generating Hard Generating Hard InstancesInstances

• There are many hard problems.There are many hard problems.

• Can we Can we generategenerate hard instances of hard instances of those problems ? (good for those problems ? (good for cryptography).cryptography).

• We need a distribution over the We need a distribution over the instances which, at least on the instances which, at least on the average, gives hard instances.average, gives hard instances.

Page 4: Generating Hard instances of Lattice Problems

Distribution of Hard Distribution of Hard InstancesInstances

• Even if worst cases are hard, the Even if worst cases are hard, the average average casecase may be easy. may be easy.

• ExamplesExamples: Coloring number of a random : Coloring number of a random graph, minimal-monotone-SAT, 3-SAT(?).graph, minimal-monotone-SAT, 3-SAT(?).

• DefinitionDefinition: An instance distribution is a : An instance distribution is a function function (n)(n), which obtains for each , which obtains for each nn, a , a distribution of instances.distribution of instances.

Page 5: Generating Hard instances of Lattice Problems

Reduction to Average Reduction to Average CaseCase

• To show To show generates hard instances of a generates hard instances of a problem problem PP, we reduce a hard problem to it., we reduce a hard problem to it.

• An An average case oracleaverage case oracle for for PP, solves , solves PP on on (n)(n), for all , for all nn, with probability , with probability 1/21/2..

• A (random) algorithm is a reduction from A (random) algorithm is a reduction from L L to the average caseto the average case of of PP, if it solves any , if it solves any instance of instance of LL with probability with probability 1/21/2, using an , using an average case oracle for average case oracle for PP..

Page 6: Generating Hard instances of Lattice Problems

InstanceOracle

(n)n Oracle

Trash

Trash

Solution

Page 7: Generating Hard instances of Lattice Problems

Hard Average ProblemsHard Average Problems

• A problem is A problem is hard on the averagehard on the average, if we , if we can reduce some hard (preferably NP-can reduce some hard (preferably NP-complete) problem, to its average case.complete) problem, to its average case.

• Graph isomorphism can be reduced to its Graph isomorphism can be reduced to its average case.average case.

• But no graph isomorphism cryptosystem But no graph isomorphism cryptosystem exists - we need a exists - we need a trap doortrap door..

Page 8: Generating Hard instances of Lattice Problems

LatticesLattices

• The lattice The lattice L(aL(a11,..,a,..,ann)) in the Euclidean in the Euclidean space, space, RRnn,is the additive group ,is the additive group generated by generated by {a{a11,..,a,..,ann}}..

• L(aL(a11,..,a,..,ann) ) is a discrete subgroup of is a discrete subgroup of RRnn..

• {a{a11,..,a,..,ann}} is a is a lattice baseslattice bases of of L(aL(a11,..,a,..,ann))..

• LL has many other bases. has many other bases.

The vectors must form a basis in Rn

Page 9: Generating Hard instances of Lattice Problems
Page 10: Generating Hard instances of Lattice Problems

Measuring Stuff in a Measuring Stuff in a Lattice Lattice LL

• Unit(L)Unit(L): “The tiler volume”.: “The tiler volume”.

• sv(L)sv(L): The length of the : The length of the shortest non-shortest non-zero vectorzero vector in in LL..

• A A basisbasis length is the maximal norm of length is the maximal norm of the basis vectors.the basis vectors.

• bl(L)bl(L): The length of the shortest basis of : The length of the shortest basis of LL..

Page 11: Generating Hard instances of Lattice Problems

Lattice Problems..Lattice Problems..

• SVPSVP: Given a lattice : Given a lattice L(aL(a11,..,a,..,ann)), find the , find the length of the shortest vector.length of the shortest vector.

• Unique-SVPUnique-SVP: Given a lattice : Given a lattice L(aL(a11,..,a,..,ann)), , find a shortest vector, given that it is find a shortest vector, given that it is unique.unique.

• Given a lattice Given a lattice L(aL(a11,..,a,..,ann)), find a shortest , find a shortest basis.basis.

Page 12: Generating Hard instances of Lattice Problems

Lattice Problems - HistoryLattice Problems - History

• [Dirichle[Dirichlett, Minkowsky], Minkowsky] Upper bounds on Upper bounds on sv(L)sv(L)..

• [LLL][LLL] Approximation algorithm for Approximation algorithm for SVPSVP, factor , factor 22n/2n/2

• [Schnorr][Schnorr] Improved factor, Improved factor, (1+(1+))nn for both for both CVPCVP and and SVPSVP

• [[Ajtai96]:Ajtai96]: Average-case/worst-case Average-case/worst-case equivalence for equivalence for SVPSVP..

• [Ajtai-Dwork96]:[Ajtai-Dwork96]: Cryptosystem Cryptosystem

Page 13: Generating Hard instances of Lattice Problems

Lattice Problems - HistoryLattice Problems - History

• [Ajtai97]:[Ajtai97]: SVPSVP is is NPNP-hard.-hard.

• [Micc98]:[Micc98]: SVPSVP is hard to approximate within is hard to approximate within some constant.some constant.

• [GG]:[GG]: Approximating Approximating SVPSVP to within to within nn is in is in coAMcoAMNPNP..

Page 14: Generating Hard instances of Lattice Problems

The Ajtai-Dwork The Ajtai-Dwork CryptosystemCryptosystem

Page 15: Generating Hard instances of Lattice Problems

We will Show..We will Show..

• We reduce shortest-bases-We reduce shortest-bases-approximation of factor approximation of factor nn10+c10+c to the to the average case average case SVPSVP-approximation of -approximation of factor factor nncc..

• SVPSVP and and Unique-SVPUnique-SVP approx. are approx. are reducible to shortest basis, so reducible to shortest basis, so similar results apply to them.similar results apply to them.

Page 16: Generating Hard instances of Lattice Problems

Average-Case DistributionAverage-Case Distribution

• Pick an Pick an n*mn*m matrix, with coefficients matrix, with coefficients uniformly ranging over uniformly ranging over [0,…,q-1][0,…,q-1]..

q n n nc[ ] log1 m = [c ]2

( ) |n x m Z Ax 0 (mod q)

Page 17: Generating Hard instances of Lattice Problems

1 q

Page 18: Generating Hard instances of Lattice Problems

1 q

v2

v4

v3

v1

2v1+v4

(2,0,0,1)(2,0,0,1)

(1,1,1,0)(1,1,1,0)q(a,b,c,d)q(a,b,c,d)

Page 19: Generating Hard instances of Lattice Problems

Reduction From the Reduction From the Shortest Basis ProblemShortest Basis Problem

1.1. Start with a given bases.Start with a given bases.

2.2. Try to halve it using the oracle.Try to halve it using the oracle.

3.3. If succeeded - go back to If succeeded - go back to section 2.section 2.It remains to show how to It remains to show how to

halve a bases, using the halve a bases, using the oracle, given that it is oracle, given that it is nn8+c8+c

times longer than the times longer than the shortest bases.shortest bases.

Page 20: Generating Hard instances of Lattice Problems

Halving the BasisHalving the Basis

1.1. We generate an instance with We generate an instance with distribution distribution (n)(n). .

2.2. The solution of this instance will obtain The solution of this instance will obtain a “random” vector in a “random” vector in LL, considerably , considerably shorter than the current bases length.shorter than the current bases length.

3.3. Doing it Doing it nn times will form a short times will form a short linearlinear basis.basis.

4.4. We transform it to a We transform it to a latticelattice basis. basis.

Page 21: Generating Hard instances of Lattice Problems

Generating a Short VectorGenerating a Short Vector

• We find a lattice We find a lattice LL11, so close pairs , so close pairs (u,v)(u,v)LL11xLxL are easy to find. are easy to find.

• We find We find mm such such (u,v)(u,v) pairs. pairs.

• We find small coefficients We find small coefficients hh11,…,,…,hhnn, , such thatsuch that

• is our short vector. is our short vector.

m = [c ]2n nlog

hii=1

m

( , )u vi i L L

hii=1

m

( )u vi i

Page 22: Generating Hard instances of Lattice Problems
Page 23: Generating Hard instances of Lattice Problems