introduction to the lattice crypto daypnguyen/lcd/lcd_opening.pdf · 2010-05-30 · lattice...

37
Introduction to the Lattice Crypto Day Phong Nguyn http://www.di.ens.fr/~pnguyen May 2010 MAYA

Upload: others

Post on 12-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Introduction to the Lattice Crypto Day

Phong Nguyễnhttp://www.di.ens.fr/~pnguyen

May 2010

MAYA

Page 2: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Summary

History of Lattice-based Crypto

Background on Lattices

Lattice-based Crypto vs. “Classical” PKC

Program of the Day

Page 3: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattice-Based

Crypto: A long story

Page 4: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattices and Cryptology

Two years stand out:

1982

1996

Page 5: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Publication of LLL

First use of lattices in

cryptanalysis1982

Page 6: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Ajtai’s worst-case to average-case reduction

Invention of NTRU1996

Page 7: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattices and Cryptology

Two years stand out:

1982: First use of lattices in cryptanalysis

1996: First crypto schemes based on hard lattice problems

Page 8: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattice-based Crypto

Somewhat a revival of knapsack crypto (MerkleHellman78,...)

Two Families:

“Theoretical”: [Ajtai96...] focus on security proofs.

“Applied”: [NTRU96...] focus on efficiency.

They “interact” more and more: [Micc02,GPV08,Gentry09,Peikert10,LPR10,...]

Page 9: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattice Problems in Crypto

In many crypto schemes, one actually deals with problems not defined using lattices:

SIS. ‘minicrypt’: OWF, hashing, signatures, identification.

LWE. ‘cryptomania’: pk-encryption, (H)IBE, oblivious transfer.

Both are connected to lattice problems.

Page 10: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Background on Lattices

Page 11: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattices

Consider Rⁿ with the usual topology of a Euclidean space: let <u,v> be the dot product and ||w|| the norm.

A lattice is a discrete subgroup of Rⁿ.

Ex: Zⁿ and its subgroups.

O

Page 12: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Equivalent Definition

Let L be a non-empty set of Rⁿ. There is equivalence between:

L is a lattice.

There exist linearly independent vectors b1,b2,...bd such that L=L(b1,b2,...bd)=Zb1+Zb2+...+Zbd.

Such vectors form a basis of a lattice L.

O

Page 13: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Volume of a Lattice

O

Each basis spans a parallelepiped, whose volume only depends on the lattice. This is the lattice volume.

By scaling, we can always ensure that the volume is 1 like Zn.

Page 14: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattices in Crypto

Most of the time, lattice-based crypto restricts to full-rank integer lattices, and sometimes even more (Ajtai’s lattices)...

For a full-rank lattice L in Zn, the quotient Zn/L is a finite group and vol(L)=[Zn:L].

Page 15: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattice Problems

Page 16: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Complexity of Lattice Problems

Since 1996, lattices are very trendy in complexity: classical and quantum.

Depending on the approximation factor with respect to the dimension:

NP-hardness

non NP-hardness (NP∩co-NP)

worst-case/average-case reduction

polynomial-time algorithms

O(1)√n

O(n logn)

1

∞2O(n log log n/logn)

Page 17: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

The Shortest Vector Problem (SVP)

Input: a basis of a d-dim lattice L

Output: nonzero v∈L minimizing ||v||.

O

2 0 0 0 00 2 0 0 00 0 2 0 00 0 0 2 01 1 1 1 1

Page 18: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

The Closest Vector Problem (CVP)

Input: a basis of a lattice L of dim d, and a target vector t.

Output: v∈L minimizing ||v-t||.

Bounded Distance Decoding (BDD): CVP where t is close to L.

O

tv

Page 19: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattice-based Crypto

vsClassical

PKC

Page 20: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Analogy

Certain lattice crypto schemes somewhat look alike certain schemes from the “classical” PKC world (RSA, DL, Pairings).

This is especially the case for the emerging lattice IBE family (vs. pairing crypto): [GPV08], [CHKP10], [B10], [ABB10], ...

Page 21: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Differences

Finitely generated groups

Noise

Probability distributions

Many parameters: selection?

Page 22: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattices and Probability

Page 23: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Probability and PKC

Security proofs require (rigorous) probability distributions and efficient sampling.

In classical PKC, a typical distribution is the uniform distribution over a finite group.

Ex: The lack of nice probability distribution was problematic for braid cryptography.

Page 24: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Lattices and Probability

Distributions on Lattice Points

Distributions on Lattices

Page 25: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Distribution on Lattice Points

The Discrete Gaussian

Mass proportional to

The distribution is independent of the basis.

Page 26: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Sampling Lattice Points

This can be done by randomizing Babai’s nearest plane algo [Bab86].

[Klein00,GPV08]: given a lattice basis, one can sample lattice points according to the Gaussian discrete distribution in poly-time, as while as the mean norm is somewhat larger than the norms of the basis.

Page 27: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Distributions on Lattices

Random Lattices

In Crypto

In Mathematics

Page 28: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Random Lattices in Crypto

Let n,m,q be integers where m≥n log q.

Let A be a m x n matrix whose coeffs have uniform distribution mod q.

LA={x∈Zm s.t. xA ≡ 0 mod q}. Is a full-rank lattice in Zm whose volume divides qn.

[Ajtai96]: Finding extremely short vectors in a random (m-dim) LA is as hard as finding short vectors in every n-dim lattice.

Page 29: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Note

In practice, an m-dim Ajtai lattice is typically “easier than usual”, because of the existence of unusual sublattices.

See Darmstadt’s lattice challenges solved in dim 500-750.

Page 30: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Note: The SIS Problem

SIS (Small Integer Solution) = finding short vectors in a random Ajtai lattice LA.

This is why several crypto schemes actually only considers such lattices. But it might be good to keep generality, for the time being.

Page 31: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Random Lattices in Mathematics

Random (Real) Lattices [Siegel1945]

Random Integer Lattices [GoMa2003]

Page 32: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Random Integer Lattices

Let V and n be integers.

There are only finitely many full-rank lattices in Zn of volume V.

A random full-rank integer lattice of volume V is simply one selected uniformly at random.

Sampling random integer lattices is trivial when V is prime (see Hermite normal form).

Page 33: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Interest

This is a natural and simple distribution, used in all recent benchmarks of lattice algorithms.

[GoldsteinMayer2003]: when V->∞ and we scale such lattices, the distribution “converges” to the “classical” distribution on random lattices of volume 1.

Page 34: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Random Real Lattices

Lebesgue’s measure is the “unique” measure over Rⁿ which is invariant by translation.

In 1933, Haar generalized Lebesgue’s measure to locally compact topological groups: it is the “unique” measure which is invariant by the group action (left or right multiplication).

Page 35: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Random Real Lattices

The set of lattices modulo scale can be identified with G=SLn(R)/SLn(Z).

The Haar measure over SLn(R) projects to a finite measure over G. For n=2, it is the hyperbolic measure.

=> natural probability measure over G, giving rise to random lattices, first used in [Siegel45].

Page 36: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Random Real Lattices

[Ajtai06]: one can efficiently sample for the classical distribution on random real lattices.

Page 37: Introduction to the Lattice Crypto Daypnguyen/LCD/LCD_Opening.pdf · 2010-05-30 · Lattice Problems in Crypto In many crypto schemes, one actually deals with problems not defined

Schedule

10h: Oded Regev on LWE

11h: Vadim Lyubashevsky on Ring-LWE

14h: Chris Peikert on IBE and beyond

15h: Craig Gentry on fully homomorphic encryption