Top Banner
Lattice-based (Post Quantum) Cryptography Divesh Aggarwal Center of Quantum Technologies, Singapore February 8, 2018 Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 1 / 30
47

Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Jun 03, 2020

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: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Lattice-based (Post Quantum) Cryptography

Divesh Aggarwal

Center of Quantum Technologies, Singapore

February 8, 2018

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 1 / 30

Page 2: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Lattices

A lattice is a set of points

L = {a1v1 + · · ·+ anvn | ai integers}.

for some linearly independent vectorsv1, . . . , vn ∈ Rn.

We call v1, . . . , vn a basis of L, and n thedimension of the lattice.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 2 / 30

Page 3: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Basis is Not Unique

Good Basis: v ′1, v ′2

Bad Basis: v1, v2

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 3 / 30

Page 4: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Hard Problems

SVP: Given a lattice, find the shortest non-zero vector (of length λ1 ).

ApproxSVPγ : Given a lattice basis, find a vector of length γ · λ1.

GapSVPγ : Given a basis and d , decide whether λ1 ≤ d or λ1 > γ · d .

There are also other hard problems like CVP, SIVP

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 4 / 30

Page 5: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Hard Problems

SVP: Given a lattice, find the shortest non-zero vector (of length λ1 ).

ApproxSVPγ : Given a lattice basis, find a vector of length γ · λ1.

GapSVPγ : Given a basis and d , decide whether λ1 ≤ d or λ1 > γ · d .

There are also other hard problems like CVP, SIVP

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 4 / 30

Page 6: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Hard Problems

SVP: Given a lattice, find the shortest non-zero vector (of length λ1 ).

ApproxSVPγ : Given a lattice basis, find a vector of length γ · λ1.

GapSVPγ : Given a basis and d , decide whether λ1 ≤ d or λ1 > γ · d .

There are also other hard problems like CVP, SIVP

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 4 / 30

Page 7: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Hard Problems

SVP: Given a lattice, find the shortest non-zero vector (of length λ1 ).

ApproxSVPγ : Given a lattice basis, find a vector of length γ · λ1.

GapSVPγ : Given a basis and d , decide whether λ1 ≤ d or λ1 > γ · d .

There are also other hard problems like CVP, SIVP

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 4 / 30

Page 8: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

GapSVPγ - Algorithms and Complexity

γ 2(log n)1−ε √n nO(1) (1 + ε)n

NP Hard Problem ∈ co-NP Cryptography ∈ P

[Ajt98,..., HR07] [GG98, AR05] [Ajtai96,...] [LLL82, Sch87]

Fastest known algorithms for γ = r n/r run in 2O(r)poly(n) time, i.e.,

For γ = poly(n), the running time is exponential in n .

In particular, fastest known algorithm for γ close to 1 runs in time 2n+o(n)

[ADRS15,AS18]

Under the Gap exponential time hypothesis, no algorithm can solve GapSVPγfor a constant γ ≈ 1 in time better than 2cn for some constant c [AS17].

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 5 / 30

Page 9: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Lattices and Cryptography

The first applications included attacking knapsack-based cryptosystems[LagOdl85] and variants of RSA [Has85,Cop01].

Lattices began to be used to create cryptography starting with a breakthroughwork of Ajtai[Ajt96].

Cryptography based on lattices has many advantages compared with ‘traditional’cryptography like RSA:

I It has strong, mathematically proven, security.

I It is believed to be resistant to quantum computers.

I In some cases, it is much faster.

I It can do more, e.g., fully homomorphic encryption, which is one of themost important cryptographic primitives.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 6 / 30

Page 10: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Lattice-based Crypto

Public-key Encryption [Reg05,KTX07,PKW08]

CCA-Secure PKE [PW08,Pei09].

Identity-based Encryption [GPV08]

Oblivious Transfer [PVW08]

Circular Secure Encryption [ACPS09]

Hierarchical Identity-based Encryption [Gen09,CHKP09,ABB09].

Fully Homomorphic Encryption [Gen09,BV11,Bra12].

And more...

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 7 / 30

Page 11: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Talk Outline

GGH Public Key Encryption Scheme

LWE Problem and Applications

Efficiency from Rings

Recent Implementations.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 8 / 30

Page 12: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

GGH Public Key Encryption Scheme

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 9 / 30

Page 13: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Public key encryption

Suppose Alice wants to send a message m privately to Bob over a public channel.

Key Generation: Bob generates a pair (pk , sk).

Encryption: Alice sends c = Enc(pk ,m) to Bob.

Decryption: Bob obtains the message m = Dec(sk ,m).

Security: An eavesdropper shouldn’t learn anything about the message given thepublic-key and the ciphertext.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 10 / 30

Page 14: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Public key encryption

Suppose Alice wants to send a message m privately to Bob over a public channel.

Key Generation: Bob generates a pair (pk , sk).

Encryption: Alice sends c = Enc(pk ,m) to Bob.

Decryption: Bob obtains the message m = Dec(sk ,m).

Security: An eavesdropper shouldn’t learn anything about the message given thepublic-key and the ciphertext.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 10 / 30

Page 15: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Digital Signatures

Suppose you wish to digitally sign the message m.

Key Generation: The algorithm generates a pair (pk , sk).

Sign: A tag for the message is computed using the signing algorithm

t = Sign(sk ,m) .

Verify: The signature can be verified using the public key

Verify(pk , t ′,m′) ∈ {True,False} .

Security: An eavesdropper shouldn’t be able to forge a signature given a validsignature and the public key.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 11 / 30

Page 16: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Digital Signatures

Suppose you wish to digitally sign the message m.

Key Generation: The algorithm generates a pair (pk , sk).

Sign: A tag for the message is computed using the signing algorithm

t = Sign(sk ,m) .

Verify: The signature can be verified using the public key

Verify(pk , t ′,m′) ∈ {True,False} .

Security: An eavesdropper shouldn’t be able to forge a signature given a validsignature and the public key.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 11 / 30

Page 17: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Reducing a vector modulo a basis

��������

��������

��������

��������

������

������

����������

������

������������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��

����

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

����������������������������������������������������������������������������������

u mod B = u − BdB−1tc.

If u = α1 · u1 + · · ·+ αn · un, then

u mod B = (α1 − bα1e) · u1 + · · ·+ (αn − bαne) · un .

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 12 / 30

Page 18: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Bad Basis

��������

��������

��������

��������

������

������

����������

������

������������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��������

����

u mod B is likely a long vector.

Note that u − u mod B is a lattice vector close to u.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 13 / 30

Page 19: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Good Basis

��������

��������

��������

��������

������

������

����������

������

������������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��

����

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

����������������������������������������������������������������������������������

u mod B is a short vector.

Note that u − u mod B is a lattice vector close to u.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 14 / 30

Page 20: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Good Basis

��������

��������

��������

��������

������

������

����������

������

������������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��

����

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

����������������������������������������������������������������������������������

u mod B is a short vector.

Note that u − u mod B is a lattice vector close to u.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 14 / 30

Page 21: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

The encryption schemeMap the message m to a vector close to the origin.Encryption: c = m mod Bpk (public basis)

Decryption: m = c mod Bsk (secret basis)

��������

��������

��������

��������

������

������

����������

������

������������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��������

��������

������������

��������

��������

��������

��������

��������

����

�������������������������

������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������

���������

��������������������������������

Processed

plaintext

Ciphertext

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 15 / 30

Page 22: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

The encryption schemeMap the message m to a vector close to the origin.Encryption: c = m mod Bpk (public basis)Decryption: m = c mod Bsk (secret basis)

��������

��������

��������

��������

������

������

����������

������

������������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��������

��������

������������

��������

��������

��������

��������

��������

��

��

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������

����������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������

���������������������������������������������

Processed

plaintext

Ciphertext

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 15 / 30

Page 23: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

More on the GGH Scheme

There is a dual digital signature scheme based on the same principle.

I Map the message m to a random vector in space.

I Signature: t = m −m mod Bsk (secret(good) basis) resulting in a latticevector close to m .

I Verification: Use the public (bad) basis to check whether t is a latticevector and that t −m is short.

Nguyen in 1999 pointed out a flaw in the GGH scheme. He showed that everyciphertext reveals information about the plaintext.

The principle of GGH, however, has been used in several follow-up schemes.

In fact, the first fully homomorphic encryption scheme candidate by Gentry[2009] was based on the same principle.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30

Page 24: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

More on the GGH Scheme

There is a dual digital signature scheme based on the same principle.

I Map the message m to a random vector in space.

I Signature: t = m −m mod Bsk (secret(good) basis) resulting in a latticevector close to m .

I Verification: Use the public (bad) basis to check whether t is a latticevector and that t −m is short.

Nguyen in 1999 pointed out a flaw in the GGH scheme. He showed that everyciphertext reveals information about the plaintext.

The principle of GGH, however, has been used in several follow-up schemes.

In fact, the first fully homomorphic encryption scheme candidate by Gentry[2009] was based on the same principle.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30

Page 25: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

More on the GGH Scheme

There is a dual digital signature scheme based on the same principle.

I Map the message m to a random vector in space.

I Signature: t = m −m mod Bsk (secret(good) basis) resulting in a latticevector close to m .

I Verification: Use the public (bad) basis to check whether t is a latticevector and that t −m is short.

Nguyen in 1999 pointed out a flaw in the GGH scheme. He showed that everyciphertext reveals information about the plaintext.

The principle of GGH, however, has been used in several follow-up schemes.

In fact, the first fully homomorphic encryption scheme candidate by Gentry[2009] was based on the same principle.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30

Page 26: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

More on the GGH Scheme

There is a dual digital signature scheme based on the same principle.

I Map the message m to a random vector in space.

I Signature: t = m −m mod Bsk (secret(good) basis) resulting in a latticevector close to m .

I Verification: Use the public (bad) basis to check whether t is a latticevector and that t −m is short.

Nguyen in 1999 pointed out a flaw in the GGH scheme. He showed that everyciphertext reveals information about the plaintext.

The principle of GGH, however, has been used in several follow-up schemes.

In fact, the first fully homomorphic encryption scheme candidate by Gentry[2009] was based on the same principle.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30

Page 27: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Talk Outline

GGH Public Key Encryption Scheme

LWE Problem and Applications

Efficiency from Rings

Recent Implementations.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 17 / 30

Page 28: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

LWE Problem and Applications

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 18 / 30

Page 29: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Learning with Errors Problem [Regev05]

Parameters: Dimension n, modulus q = poly(n), error distribution

Search: Find uniformly random secret s ∈ Znq given

A =

A11 A12 A13 . . . A1n

A21 A22 A23 . . . A2n

. . . . . . . . . . . . . . . . . . . . . . . . . . .Am1 Am2 Am3 . . . Amn

and b = A · s + e ,

where A ∈ Zm×nq is chosen uniformly at random and e ∈ Zm

q is some ‘shortnoise distribution’.

Decision: Distinguish (A,b) from (A,u) where u is uniform in Zmq .

Worst case to Average Case:

Break Crypto =⇒ Decision LWE =⇒ Search LWE =⇒ GapSVPpoly(n)

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 19 / 30

Page 30: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Learning with Errors Problem [Regev05]

Parameters: Dimension n, modulus q = poly(n), error distribution

Search: Find uniformly random secret s ∈ Znq given

A =

A11 A12 A13 . . . A1n

A21 A22 A23 . . . A2n

. . . . . . . . . . . . . . . . . . . . . . . . . . .Am1 Am2 Am3 . . . Amn

and b = A · s + e ,

where A ∈ Zm×nq is chosen uniformly at random and e ∈ Zm

q is some ‘shortnoise distribution’.

Decision: Distinguish (A,b) from (A,u) where u is uniform in Zmq .

Worst case to Average Case:

Break Crypto =⇒ Decision LWE =⇒ Search LWE =⇒ GapSVPpoly(n)

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 19 / 30

Page 31: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Learning with Errors Problem [Regev05]

Parameters: Dimension n, modulus q = poly(n), error distribution

Search: Find uniformly random secret s ∈ Znq given

A =

A11 A12 A13 . . . A1n

A21 A22 A23 . . . A2n

. . . . . . . . . . . . . . . . . . . . . . . . . . .Am1 Am2 Am3 . . . Amn

and b = A · s + e ,

where A ∈ Zm×nq is chosen uniformly at random and e ∈ Zm

q is some ‘shortnoise distribution’.

Decision: Distinguish (A,b) from (A,u) where u is uniform in Zmq .

Worst case to Average Case:

Break Crypto =⇒ Decision LWE =⇒ Search LWE =⇒ GapSVPpoly(n)

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 19 / 30

Page 32: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

A PKE scheme from decision LWE hardness

Suppose Alice wants to send a bit µ ∈ {0, 1} privately to Bob over a public channel.

Key Generation: Bob chooses q,m, n and A ∈ Zm×nq , s ∈ Zn

q are chosenuniformly at random and e ∈ Zm

q is chosen from the ‘LWE noisedistribution’. Then

pk = A, b = A · s + e, sk = s .

Encryption: Alice chooses uniform r ∈ {0, 1}m and sends

c = (r · A, r · b + µ · bq2c) .

Decryption: Bob on receiving the ciphertext (C1, c2) checks whetherc2 − C1 · s is closer to 0 or b q

2 c and hence deciphers themessage bit µ.

Security is almost immediate from the Decision LWE Hardness assumption. Theciphertext looks random given the public key.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 20 / 30

Page 33: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

A PKE scheme from decision LWE hardness

Suppose Alice wants to send a bit µ ∈ {0, 1} privately to Bob over a public channel.

Key Generation: Bob chooses q,m, n and A ∈ Zm×nq , s ∈ Zn

q are chosenuniformly at random and e ∈ Zm

q is chosen from the ‘LWE noisedistribution’. Then

pk = A, b = A · s + e, sk = s .

Encryption: Alice chooses uniform r ∈ {0, 1}m and sends

c = (r · A, r · b + µ · bq2c) .

Decryption: Bob on receiving the ciphertext (C1, c2) checks whetherc2 − C1 · s is closer to 0 or b q

2 c and hence deciphers themessage bit µ.

Security is almost immediate from the Decision LWE Hardness assumption. Theciphertext looks random given the public key.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 20 / 30

Page 34: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Talk Outline

GGH Public Key Encryption Scheme

LWE Problem and Applications

Efficiency from Rings

Recent Implementations.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 21 / 30

Page 35: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Efficiency from Rings.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 22 / 30

Page 36: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

How efficient is LWE?

Getting one pseudorandom bi ∈ Zq requires an n-dimensional inner productmodulo q.

Cryptosystems have larger keys of size larger than n2 log q.

Wishful thinking:

(a1, a2, . . . , an) ? (s1, s2, . . . , sn) + (e1, e2, . . . , en) = (b1, b2, . . . , bn) .

I Get n pseudorandom elements in Zq from one inner product.

I Replace every n2 length key by a key of length n.

Question: How to define the ? operation?

I With small error, co-ordinate wise multiplication is insecure.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 23 / 30

Page 37: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

How efficient is LWE?

Getting one pseudorandom bi ∈ Zq requires an n-dimensional inner productmodulo q.

Cryptosystems have larger keys of size larger than n2 log q.

Wishful thinking:

(a1, a2, . . . , an) ? (s1, s2, . . . , sn) + (e1, e2, . . . , en) = (b1, b2, . . . , bn) .

I Get n pseudorandom elements in Zq from one inner product.

I Replace every n2 length key by a key of length n.

Question: How to define the ? operation?

I With small error, co-ordinate wise multiplication is insecure.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 23 / 30

Page 38: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

How efficient is LWE?

Getting one pseudorandom bi ∈ Zq requires an n-dimensional inner productmodulo q.

Cryptosystems have larger keys of size larger than n2 log q.

Wishful thinking:

(a1, a2, . . . , an) ? (s1, s2, . . . , sn) + (e1, e2, . . . , en) = (b1, b2, . . . , bn) .

I Get n pseudorandom elements in Zq from one inner product.

I Replace every n2 length key by a key of length n.

Question: How to define the ? operation?

I With small error, co-ordinate wise multiplication is insecure.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 23 / 30

Page 39: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

LWE over RingsLet R = Z[X ]/(X n + 1), and Rq = R/qR.

I Operations in Rq are very efficient using algorithms similar to FFT.

Search: Find secret s ∈ Rq given

a1 ← Rq , b1 = a1 · s + e1

a2 ← Rq , b2 = a2 · s + e2

· · ·· · ·

Decision: Distinguish (ai , bi ) from (ai , ui ) where ui is uniform in Rq .

Worst case to Average Case [LPR10, PRS17]

Decision R-LWE =⇒ Search R-LWE =⇒ ApproxSVPpoly(n) on ideal lattices

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 24 / 30

Page 40: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

LWE over RingsLet R = Z[X ]/(X n + 1), and Rq = R/qR.

I Operations in Rq are very efficient using algorithms similar to FFT.

Search: Find secret s ∈ Rq given

a1 ← Rq , b1 = a1 · s + e1

a2 ← Rq , b2 = a2 · s + e2

· · ·· · ·

Decision: Distinguish (ai , bi ) from (ai , ui ) where ui is uniform in Rq .

Worst case to Average Case [LPR10, PRS17]

Decision R-LWE =⇒ Search R-LWE =⇒ ApproxSVPpoly(n) on ideal lattices

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 24 / 30

Page 41: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Complexity of SVP on Ideal Lattices

We know that if we can solve R-LWE, then we can also solve SVP on ideallattices.

The other direction is unknown.

There has been some recent progress[CDPR16, BS16, K16, CDW16] giving anefficient quantum algorithm for 2O(

√n log n) approximation of SVP on Ideal

Lattices.

This does not say anything about the hardness of Ring-LWE.

There is more algebraic structure in Ring-LWE that can possibly lead to quantumattacks, but so far there has been little success.

Ring-LWE based crypto is more efficient, but perhaps less secure.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 25 / 30

Page 42: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Complexity of SVP on Ideal Lattices

We know that if we can solve R-LWE, then we can also solve SVP on ideallattices.

The other direction is unknown.

There has been some recent progress[CDPR16, BS16, K16, CDW16] giving anefficient quantum algorithm for 2O(

√n log n) approximation of SVP on Ideal

Lattices.

This does not say anything about the hardness of Ring-LWE.

There is more algebraic structure in Ring-LWE that can possibly lead to quantumattacks, but so far there has been little success.

Ring-LWE based crypto is more efficient, but perhaps less secure.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 25 / 30

Page 43: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Talk Outline

GGH Public Key Encryption Scheme

LWE Problem and Applications

Efficiency from Rings

Recent Implementations.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 26 / 30

Page 44: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Recent Implementations.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 27 / 30

Page 45: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Key Exchange

[BCNS15] Ring-LWE based key exchange.

NewHope [ADPS’15]: Optimized Ring-LWE key exchange with λ = 200 bitquantum security.

I Comparable to or even faster than current ECDH with 128-bit classicalsecurity.

I Google has experimentally deployed NewHope + ECDH.

Frodo [BCDMNNRS’16]: Plain-LWE key exchange with some optimizations.Conjectures 128-bit quantum security.

I About 10 times slower than NewHope, but almost as fast as ECDH (andmuch faster than RSA).

NTRU EES743EP1 [WEJ13].

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 28 / 30

Page 46: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Other Implementations

BLISS: [DDLL’13] An efficient digital signature scheme based on[Lyu09,Lyu12]

DILITHIUM: [DLLSSS17] Another efficient digital signature based on [GLP12] thateliminates some of the vulnerabilities of BLISS.

HELib: [HaleviShoup] Implementation of Fully Homomorphic Encryption.

Λ ◦ λ: [CroPei’16] A high level framework aimed at advanced latticecryptosystems.

Lots of ongoing work including many proposals of new post-quantum crypto schemessubmitted to NIST.

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 29 / 30

Page 47: Lattice-based (Post Quantum) Cryptography · Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 16 / 30 More on the GGH Scheme There is a dual digital signature scheme

Questions?

Divesh Aggarwal (CQT) Lattice-based Cryptography February 8, 2018 30 / 30