Download presentation
Presentation is loading. Please wait.
Published byTamsin Anderson Modified over 9 years ago
1
Lattice-based cryptography and quantum Oded Regev Tel-Aviv University
2
Outline Introduction to lattices Main result: a stronger and more efficient public key encryption scheme Main theorem: a hard learning problem Proof of main theorem Overview Part I: Quantum Part II: Classical
3
A lattice is a set of points in n dimensional space A lattice is a set of points in n dimensional space For any vectors v 1, …,v n in R n, the lattice spanned by v 1, …,v n is For any vectors v 1, …,v n in R n, the lattice spanned by v 1, …,v n is L={a 1 v 1 + … +a n v n | a i integers} L={a 1 v 1 + … +a n v n | a i integers} These vectors form a basis of L These vectors form a basis of L Lattice v1v1 v2v2 0 2v 1 v 1 +v 2 2v 2 2v 2 -v 1 2v 2 -2v 1
4
SVP: Given a lattice, find a short vector SVP: Given a lattice, find a short vector Like most other lattice problems it is believed to be extremely hard classically. Perhaps also quantumly. Like most other lattice problems it is believed to be extremely hard classically. Perhaps also quantumly. Shortest Vector Problem (SVP) 0 v2v2 v1v1
5
CVP: Given a lattice and a target vector, find the closest lattice point CVP: Given a lattice and a target vector, find the closest lattice point CVP d : Given a lattice and a target vector within distance d, find the closest lattice point CVP d : Given a lattice and a target vector within distance d, find the closest lattice point Closest Vector Problem (CVP) 0 v2v2 v1v1v
6
Every lattice has a dual lattice (also known as the reciprocal) Every lattice has a dual lattice (also known as the reciprocal) The dual lattice of L is The dual lattice of L is L * = {x | 8 y 2 L, h x,y i 2 Z} L * = {x | 8 y 2 L, h x,y i 2 Z} (L * ) * =L (L * ) * =L In fact, the dual lattice is the Fourier transform of the lattice In fact, the dual lattice is the Fourier transform of the lattice Dual Lattice
7
Main Result New Public Key Encryption Scheme
8
Public Key Encryption Scheme (PKES) Allows parties to communicate securely without having to agree on a secret key beforehand Used extensively on the Internet (RSA, PGP…) However, most PKES are based on the hardness of factoring No longer secure in a world with quantum computers !! Main alternative: lattice-based PKES
9
Previous lattice-based PKES Previous lattice-based PKES [AjtaiDwork96,GoldreichGoldwasserHalevi97,R’03] Main advantages: Based on a lattice problem Worst-case hardness Main disadvantages: Based only on unique-SVP Impractical (think of n as 1000): Public key size O(n 4 ) Encryption expands by O(n 2 )
10
New lattice-based PKES [This work] Main advantages: Worst-case hardness Based on the main lattice problems (SVP, SIVP). (More) practical (think of n as 1000): Public key size O(n 2 ) Encryption expands by O(n) However, breaking the cryptosystem implies an efficient quantum algorithm for lattices quantum
11
Why Quantum? As part of the proof, we need to perform a certain algorithmic task on lattices We do not know how to do it classically, only quantumly!
12
Does it really matter? Assume quantum computers can be built (as we all believe) Two cases: 1. Efficient quantum algorithm for lattices exists: Then both previous and new lattice-based PKES are weak 2. No efficient quantum algorithm for lattices: Then both previous and new lattices-based PKES are secure
13
Main Theorem A Hard Learning Problem
14
Learning from parity with error Let s2Z 2 n be a secret We have independent random equations modulo 2 with error: Without error, it’s easy! s 2 +s 3 +s 4 + s 6 +…+s n 0 s 1 +s 2 + s 4 + s 6 +…+s n 1 s 1 + s 3 +s 4 +s 5 + …+s n 1 s 2 +s 3 +s 4 + s 6 +…+s n 0.
15
More formally, we need to learn s from samples of the form (t,st+e) where t is chosen uniformly from Z 2 n and e is a bit that is 1 with probability 10%. Trivial algorithm needs 2 O(n) equations/time Best known algorithm needs 2 O(n/logn) equations/time [ BlumKalaiWasserman’00 ] Open question: why is this problem so hard? Learning from parity with error
16
Learning modulo p Fix some p<poly(n) Let s2Z p n be a secret We have random equations modulo p with error: 2s 1 +0s 2 +2s 3 +1s 4 +2s 5 +4s 6 +…+4s n 2 0s 1 +1s 2 +5s 3 +0s 4 +6s 5 +6s 6 +…+2s n 4 6s 1 +5s 2 +2s 3 +0s 4 +5s 5 +2s 6 +…+0s n 2 6s 1 +4s 2 +4s 3 +4s 4 +3s 5 +3s 6 +…+1s n 5.
17
Learning modulo p More formally, we need to learn s from samples of the form (t,st+e) where t is chosen uniformly from Z p n and e is chosen from Z p Best known algorithm needs 2 O(n) equations/time [ BlumKalaiWasserman’00 ]
18
Main Theorem Learning modulo p is as hard as worst-case lattice problems using a quantum reduction In other words: solving the problem implies an efficient quantum algorithm for lattices This theorem implies our new PKES
19
Proof of the Main Theorem Overview
20
Gaussian Distribution Define a Gaussian distribution on a lattice (normalization omitted) We can efficiently sample from D r for large r=2 n
21
The Reduction √n Assume the existence of an algorithm for the modulo p learning problem for p=2√n Our lattice algorithm: r=2 n Take poly(n) samples from D r Repeat: Given poly(n) samples from D r, compute poly(n) samples from D r/2 Set r←r/2 When r is small, output a short vector
22
DrDr
23
D r/2
24
Obtaining D r/2 from D r √n Let p=2√n Given poly(n) samples from D r, we show how to solve CVP p/r in L * Classical Uses learning oracle mod p Given a solution to CVP p/r in L *, we show how to obtain samples from D √n r/p = D r/2 Quantum Based on the quantum Fourier transform
25
Samples from D r in L Solution to CVP p/r in L * Samples from D r/2 in L Solution to CVP 2p/r in L * Samples from D r/4 in L Solution to CVP 4p/r in L * Classical, uses learning oracle Quantum
26
Fourier Transform Primal world (L)Dual world (L * )
27
Fourier Transform The Fourier transform of D r is given by Its value is 1 for x in L *, e -1 at points of distance 1/r from L *, ¼ 0 at points far away from L *.
28
Proof of the Main Theorem Part I: Obtaining D r/2 from CVP p/r
29
From CVP p/r to D r/2 Assume we can solve CVP p/r ; we’ll show how to obtain samples from D r/2 Idea: Create the quantum state by adding a Gaussian to each lattice point and uncomputing the lattice point by using the CVP algorithm Then compute the (quantum) Fourier Transform
30
From CVP to D r/2 More precisely, create the state And the state Tensor them together and add first to second Uncompute first register by solving CVP p/r
31
From CVP to D r/2 Compute the quantum Fourier transform of It is exactly D r/2 !! Measure and obtain a sample from D r/2 By repeating this quantum process, we can obtain poly(n) samples
32
Proof of the Main Theorem Part II: Solving CVP p/r given samples from D r
33
It ’ s enough to approximate f p/r Lemma: being able to approximate f p/r implies a solution to CVP p/r Proof Idea – walk uphill: f p/r (x)>¼ for points x of distance < p/r Keep making small modifications to x as long as f p/r (x) increases Stop when f p/r (x)=1 (then we are on a lattice point)
34
What ’ s ahead in this part For warm-up, we show how to approximate f 1/r given samples from D r No need for learning This is main idea in [AharonovR’04] Then we show how to approximate f 2/r given samples from D r and an oracle for the learning problem Approximating f p/r is similar
35
Warm-up: approximating f 1/r Let’s write f 1/r in its Fourier representation: Using samples from D r, we can compute a good approximation to f 1/r (this is the main idea in [AharonovR’04])
37
Fourier Transform Consider the Fourier representation again: For x 2 L *, h w,x i is integer for all w in L and therefore we get f 1/r (x)=1 For x that is close to L *, h w,x i is distributed around an integer. Its standard deviation can be (say) 1.
38
Approximating f 2/r Consider the distribution D r /2 given by: Sample a vector w from D r Output w/2 We obtain 2 n translates of the distribution D r/2 For t 2 Z 2 n, denote the translate t by D t r/2
39
DrDr
42
We can equivalently think of our samples as taken from the following distribution: Choose t 2 Z 2 n uniformly at random Output a sample from D t r/2 Consider the Fourier transform of D t r/2 Approximating f 2/r
45
The functions f t 2/r look almost like f 2/r Only difference is that some Gaussians have their sign flipped Approximating f t 2/r is enough: we can easily take the absolute value and obtain f 2/r For this, we need to obtain several samples from D t r/2 The problem is that each sample is from D t r/2 for different t ! Approximating f 2/r
46
The sign of each Gaussian is ±1 depending on h s,t i mod 2 where s is the coeff vector of its center The distribution of 2 h x,w i i mod 2 for a point x close to L * is centred around h s,t i i mod 2 Hence, we obtained equations modulo 2 with error: h s,t 1 i¼d 2 h x,w 1 ic mod 2 h s,t 2 i¼d 2 h x,w 2 ic mod 2 h s,t 3 i¼d 2 h x,w 3 ic mod 2. Approximating f 2/r
47
Using the learning algorithm, we solve these equations and obtain s Knowing s, we can cancel the sign Averaging over enough samples gives us an approximation to f 2/r Approximating f 2/r
48
Open questions Dequantize the reduction: What can one do classically with a solution to CVP d ? Extend to learning from parity (i.e., p=2) or even some constant p Is there something inherently different about the case of constant p? Any other applications for this ‘new quantum algorithm’?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.