阮風光 Phong Q. Nguyên (École normale supérieure) עודד רגב Oded Regev עודד רגב Oded Regev (Tel Aviv University) Learning a Parallelepiped: Cryptanalysis of.

Slides:



Advertisements
Similar presentations
Efficient Lattice (H)IBE in the standard model Shweta Agrawal, Dan Boneh, Xavier Boyen.
Advertisements

Shortest Vector In A Lattice is NP-Hard to approximate
Fearful Symmetry: Can We Solve Ideal Lattice Problems Efficiently?
CS 6262 Spring 02 - Lecture #7 (Tuesday, 1/29/2002) Introduction to Cryptography.
Digital Signatures and Hash Functions. Digital Signatures.
Foundations of Cryptography Lecture 13 Lecturer: Moni Naor.
Public Key Encryption Algorithm
The Learning With Errors Problem Oded Regev Tel Aviv University (for more details, see the survey paper in the proceedings) Cambridge, 2010/6/11.
Lattice-based Cryptography Oded Regev Tel-Aviv University Oded Regev Tel-Aviv University CRYPTO 2006, Santa Barbara, CA.
New Lattice Based Cryptographic Constructions
Lattice-Based Cryptography. Cryptographic Hardness Assumptions Factoring is hard Discrete Log Problem is hard  Diffie-Hellman problem is hard  Decisional.
Abdullah Sheneamer CS591-F2010 Project of semester Presentation University of Colorado, Colorado Springs Dr. Edward RSA Problem and Inside PK Cryptography.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
Attacks on Digital Signature Algorithm: RSA
CNS2010handout 10 :: digital signatures1 computer and network security matt barrie.
RSA ( Rivest, Shamir, Adleman) Public Key Cryptosystem
CMSC 414 Computer and Network Security Lecture 7 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 9 Jonathan Katz.
Cryptography Lecture 11: Oct 12. Cryptography AliceBob Cryptography is the study of methods for sending and receiving secret messages. adversary Goal:
Oded Regev Tel-Aviv University On Lattices, Learning with Errors, Learning with Errors, Random Linear Codes, Random Linear Codes, and Cryptography and.
Introduction to Signcryption November 22, /11/2004 Signcryption Public Key (PK) Cryptography Discovering Public Key (PK) cryptography has made.
WS Algorithmentheorie 03 – Randomized Algorithms (Public Key Cryptosystems) Prof. Dr. Th. Ottmann.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
Cryptography1 CPSC 3730 Cryptography Chapter 9 Public Key Cryptography and RSA.
WS Algorithmentheorie 03 – Randomized Algorithms (Public Key Cryptosystems) Prof. Dr. Th. Ottmann.
1 CIS 5371 Cryptography 9. Data Integrity Techniques.
1 NTRU: A Ring-Based Public Key Cryptosystem Jeffrey Hoffstein, Jill Pipher, Joseph H. Silverman LNCS 1423, 1998.
Tallinn University of Technology Quantum computer impact on public key cryptography Roman Stepanenko.
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 2.5 Public Key Algorithms.
Public Key Model 8. Cryptography part 2.
Cryptanalysis of the Revised NTRU Signature Scheme (NSS) Craig Gentry (DoCoMo) Mike Szydlo (RSA)
8. Data Integrity Techniques
CS5204 – Fall Cryptographic Security Presenter: Hamid Al-Hamadi October 13, 2009.
The RSA Algorithm Rocky K. C. Chang, March
Calculating Discrete Logarithms John Hawley Nicolette Nicolosi Ryan Rivard.
Lecture 19 Page 1 CS 111 Online Symmetric Cryptosystems C = E(K,P) P = D(K,C) E() and D() are not necessarily the same operations.
Diophantine Approximation and Basis Reduction
RSA and its Mathematics Behind
RSA Ramki Thurimella.
10/1/2015 9:38:06 AM1AIIS. OUTLINE Introduction Goals In Cryptography Secrete Key Cryptography Public Key Cryptograpgy Digital Signatures 2 10/1/2015.
CS 627 Elliptic Curves and Cryptography Paper by: Aleksandar Jurisic, Alfred J. Menezes Published: January 1998 Presented by: Sagar Chivate.
Cryptography Dec 29. This Lecture In this last lecture for number theory, we will see probably the most important application of number theory in computer.
Foundations of Cryptography Lecture 6 Lecturer: Moni Naor.
1 Public-Key Cryptography and Message Authentication.
Cryptography and Network Security Chapter 9 - Public-Key Cryptography
PROPRIETARY AND CONFIDENTIAL Lattice Breaking Times William Whyte NTRU Cryptosystems March 2004.
Fast algorithm for the Shortest Vector Problem er (joint with Aggarwal, Dadush, and Stephens-Davidowitz) Oded Regev Courant Institute, NYU UC Irvine, Sloan.
RSA and its Mathematics Behind July Topics  Modular Arithmetic  Greatest Common Divisor  Euler’s Identity  RSA algorithm  Security in RSA.
Elliptic Curve Cryptography
Prepared by Dr. Lamiaa Elshenawy
Lattice-based cryptography and quantum Oded Regev Tel-Aviv University.
Lattice Based Signatures Johannes Buchmann Erik Dahmen Richard Lindner Markus Rückert Michael Schneider.
1/16 Seeing through M IST given a Small Fraction of an RSA Private Key Colin D. Walter Comodo Research Lab (Bradford, UK)
Computer Security Lecture 5 Ch.9 Public-Key Cryptography And RSA Prepared by Dr. Lamiaa Elshenawy.
STRONG security that fits everywhere. NTRUSign and P William Whyte,
Lattice-based Fault Attacks on DSA – Another Possible Strategy Tomáš Rosa,
COM 5336 Lecture 8 Digital Signatures
1 Cryptanalysis Lab Elliptic Curves. Cryptanalysis Lab Elliptic Curves 2 Outline [1] Elliptic Curves over R [2] Elliptic Curves over GF(p) [3] Properties.
STRONG security that fits everywhere. PROPRIETARY AND CONFIDENTIAL NTRUSIGN TECHNICAL OVERVIEW NTRUSign: Digital Signatures in the NTRU Lattice Jeff Hoffstein,
1 The RSA Algorithm Rocky K. C. Chang February 23, 2007.
Department of Computer Science Chapter 5 Introduction to Cryptography Semester 1.
CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz.
NTRUSign Parameters Challenge
The Learning With Errors Problem
Digital Signature Schemes and the Random Oracle Model
Background: Lattices and the Learning-with-Errors problem
Efficient CRT-Based RSA Cryptosystems
Lattices. Svp & cvp. lll algorithm. application in cryptography
On The Quantitative Hardness of the Closest Vector Problem
Presentation transcript:

阮風光 Phong Q. Nguyên (École normale supérieure) עודד רגב Oded Regev עודד רגב Oded Regev (Tel Aviv University) Learning a Parallelepiped: Cryptanalysis of Cryptanalysis of GGH and NTRU Signatures GGH and NTRU Signatures ˜

Outline Introduction to lattices Lattice-based signature schemes The attack

Basis: v 1, …,v n vectors in R n v 1, …,v n vectors in R n The lattice L 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} Lattices v1v1 v2v2 0 2v 1 v 1 +v 2 2v 2 2v 2 -v 1 2v 2 -2v 1

Basis is not unique 0 v2v2 v1v1 v1’v1’ v2’v2’

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 Seems very difficult; best algorithms take time 2 n Seems very difficult; best algorithms take time 2 n However, checking if a point is in a lattice is easy However, checking if a point is in a lattice is easy Closest Vector Problem (CVP) 0 v2v2 v1v1u

Babai ’ s algorithm: given a point u, write Babai ’ s algorithm: given a point u, write and output Works well for good bases Works well for good bases Babai ’ s CVP Algorithm

Lattice-based Cryptography One-way functions based on worst-case hardness [Ajtai96, GoldreichGoldwasserHalevi96, CaiNerurkar97, MicciancioRegev04] One-way functions based on worst-case hardness [Ajtai96, GoldreichGoldwasserHalevi96, CaiNerurkar97, MicciancioRegev04] Public-key cryptosystems based on worst- case hardness [ AjtaiDwork97, GoldreichGoldwasserHalevi97, Regev04, Regev06 ] Public-key cryptosystems based on worst- case hardness [ AjtaiDwork97, GoldreichGoldwasserHalevi97, Regev04, Regev06 ] – Other public-key cryptosystems [ GoldreichGoldwasserHalevi97, HoffsteinPipherSilverman98] Signature schemes Signature schemes – GGH [GoldreichGoldwasserHalevi97], – NTRUsign [HoffsteinHowgraveGrahamPipherSilvermanWhyte01 ]

Signature Schemes Consists of : Consists of : – Key generation algorithm: produces a (public-key,private-key) pair – Signing algorithm: given a message and a private-key, produces a signature – Verification algorithm: given a message+signature and a public key, verifies that the signature matches

The GGH Signature Scheme Idea: CVP is hard, but easy with good basis Idea: CVP is hard, but easy with good basis The scheme: The scheme: – Key generation algorithm: choose a lattice with some good basis Private-key = good basis Private-key = good basis Public-key = bad basis Public-key = bad basis – Signing algorithm: given a message and a private key, Map message to a point in space Map message to a point in space Apply Babai ’ s algorithm with good basis to obtain the signature Apply Babai ’ s algorithm with good basis to obtain the signature – Verification algorithm: given message+signature and a public key, verify that Signature is a lattice point, and Signature is a lattice point, and Signature is close to the message Signature is close to the message

GGH Signature Scheme Private-key: Public-key: Message: Signature:

Public-key: Message: Signature: Verification: 1. should be a lattice point 2. distance between and should be small 2. distance between and should be small

The NTRUsign Signature Scheme Essentially a very efficient implementation of the GGH signature scheme Essentially a very efficient implementation of the GGH signature scheme – Signature length only 1757 bits – Signing and verification are faster than RSA- based methods Based on the NTRU lattices (bicyclic lattices generated from a polynomial ring) Based on the NTRU lattices (bicyclic lattices generated from a polynomial ring) Developed by the company NTRU and currently under consideration by IEEE P Developed by the company NTRU and currently under consideration by IEEE P Some flaws pointed out in [GentrySzydlo ’ 02] Some flaws pointed out in [GentrySzydlo ’ 02]

Main Result An inherent security flaw in GGH-based signature schemes An inherent security flaw in GGH-based signature schemes Demonstrated a practical attack on: Demonstrated a practical attack on: – GGH Up to dimension 400 Up to dimension 400 – NTRUsign Dimension 502 Dimension 502 Applies to half of the parameter sets in IEEE P Applies to half of the parameter sets in IEEE P Only 400 signatures needed! Only 400 signatures needed! The attack recovers the The attack recovers the private key Running time is a few Running time is a few minutes on a 2Ghz/2GB PC

Main Result Possible countermeasures: Possible countermeasures: – Pertubations, as suggested by NTRU in several of the IEEE P parameter sets – Larger entries in private key – It is not clear if the attack can be extended to deal with these extensions Public key encryption schemes and one-way functions are still secure!! Public key encryption schemes and one-way functions are still secure!! – This includes all schemes based on worst-case hardness and NTRUencrypt

The Attack

So it is enough to solve the following problem: So it is enough to solve the following problem: This would enable us to This would enable us to recover the private key Hidden Parallelepiped Problem Given points sampled uniformly from an n-dimensional centered parallelepiped, recover the parallelepiped

Let’s try to solve an easier problem: Let’s try to solve an easier problem: We will later reduce the We will later reduce the general case to the hypercube Hidden Hypercube Problem Given points sampled uniformly from an n-dimensional centered unit hypercube, recover the hypercube

For a unit vector u define the variance in the direction u as For a unit vector u define the variance in the direction u as Perhaps by computing Var(u) for many u’s we can learn something Perhaps by computing Var(u) for many u’s we can learn something HHP: First Attempt The samples x can be written as The samples x can be written as for y chosen uniformly from [-1,1] n and an orthogonal matrix U Therefore, Therefore,

So let’s try the fourth moment instead: So let’s try the fourth moment instead: A short calculation shows that A short calculation shows that where u i are u’s coordinates in the hypercube basis Therefore: Therefore: In direction of the corners In direction of the corners the kurtosis is ~1/3 In direction of the faces In direction of the faces the kurtosis is 1/5 HHP: Second Attempt

The algorithm repeats the following steps: Choose a random unit vector uChoose a random unit vector u Perform a gradient descent on the sphere to find a local minimum of Kur(u)Perform a gradient descent on the sphere to find a local minimum of Kur(u) Output the resultingOutput the resultingvector Each application randomly yields one of the 2n face vectors HHP: The Algorithm

Now the samples can be written asNow the samples can be written as where y is chosen uniformly from [-1,1] n and R is some matrix Consider the average of the matrix xx TConsider the average of the matrix xx T Hence, we can get an approximation of S=RR T (the Gram matrix of R)Hence, we can get an approximation of S=RR T (the Gram matrix of R) Now the matrix S -1/2 R is orthogonal:Now the matrix S -1/2 R is orthogonal: Back to HPP

Hence, by applying the transformation S -1/2 to our samples x, we obtain samples from a unit hypercube, so we’re back to HCPHence, by applying the transformation S -1/2 to our samples x, we obtain samples from a unit hypercube, so we’re back to HCP In other words, we have morphed a parallelepiped into a hypercube:In other words, we have morphed a parallelepiped into a hypercube: Now run the HHP algorithm on the samples S -1/2 x. If U is the returned matrix, return S 1/2 U as the parallelepiped.Now run the HHP algorithm on the samples S -1/2 x. If U is the returned matrix, return S 1/2 U as the parallelepiped. Back to HPP

The HPP has already been looked at:The HPP has already been looked at: In statistical analysis, and in particular Independent Component Analysis (ICA). The FastICA algorithm is very similar to ours [HyvärinenOja97]. Many applications in signal processing, neural networks, etc.In statistical analysis, and in particular Independent Component Analysis (ICA). The FastICA algorithm is very similar to ours [HyvärinenOja97]. Many applications in signal processing, neural networks, etc. In the computational learning community, by [ FriezeJerrumKannan96 ]. A somewhat different algorithm.In the computational learning community, by [ FriezeJerrumKannan96 ]. A somewhat different algorithm. However, none gives a rigorous analysis. We analyze the algorithm rigorously, taking into account the effects of noiseHowever, none gives a rigorous analysis. We analyze the algorithm rigorously, taking into account the effects of noise We ’ re not alone

Open questions Any provably secure lattice-based signature schemes? Any provably secure lattice-based signature schemes? Can the attack be extended to deal with the countermeasures? Can the attack be extended to deal with the countermeasures? + =

Thanks !!