[PDF] The Mathematics of the NTRU Public Key Cryptosystem





Previous PDF Next PDF



(http://community.dadeschools.net/!svp/school-vol.asp)

(http://community.dadeschools.net/!svp/school-vol.asp). Community members who wish to volunteer at a Math and Reading. Contact: Stephanie Guralnick.



Informal Proofs and Mathematical Rigour

1. Axiomatic Foundations Epistemic Foundations and. Mathematical Rigour. The standard view of proof (SVP) is the thesis that every mathematical proof.



Foundations of Lattice Cryptography

Introduction to Lattice Cryptography for Math/non-CS SVP. CVP. Question. What can we say the same about lattices with symmetries?



An Introduction to Lenstra-Lenstra-Lovasz Lattice Basis Reduction

Lattices have many significant applications in mathematics and cryp- tography. The Shortest vector problem (SVP) is the most famous and.



Reductions between short vector problems and simultaneous

21 Sept 2020 2010 Mathematics Subject Classification. ... svp. (See Theorem B in [21] which refers to the problem as good simultaneous ap- proximation.



Chapter 3 Review Finite Math Name: ANSWER KEY

Finite Math. Name: ANSWER KEY. Indicate whether the statement is a simple or a compound statement. If it is a compound statement indicate whether it is a.



An Introduction to the Theory of Lattices and Applications to

19 Jun 2006 In this lecture I will discuss the mathematics of lattices alogrithms to solve SVP and CVP



The Mathematics of the NTRU Public Key Cryptosystem

The security of NTRU is related to a very hard problem in lattice reduction called the shortest vector problem (SVP) and it is conjectured that there is no 



MS and HS-Math-Book-List-2021-2022.docx

Mathematics. 6. Big Ideas Math. Modeling Real Life Common Core. Grade 6 Advanced. Cengage. Learning. 9781642450637 All hardcopy textbooks and online books 



What can you do with a math major?

Ever wonder what one can do with a degree in mathematics? Here is a partial list of careers by current Carleton math alumni: ... SVP Financial Modeling.

The Mathematics of the NTRU

Public Key Cryptosystem

Abderrahmane Nitaj

Laboratoire de Math

´ematiques Nicolas Oresme

Universit

´e de Caen Basse Normandie, France

ABSTRACT

The NTRU cryptosystem is a fast public key cryptosystem presented in 1996 by Hoffstein, Pipher and

Silverman. It is resistant to quantum attacks and is categorized as a post quantum cryptosystem. In this

chapter, we describe the mathematics of the NTRU cryptosystem and the hard problems that make the security of NTRU strong and resistant to classical and quantum attacks.

1 INTRODUCTION

The NTRU public key cryptosystem is one of the fastest known public key cryptosystems. It was first

introduced in the rump session at Crypto"96 by Hoffstein, Pipher, and Silverman [Hoffstein et al.,1996],

and was later published in the proceedings of the ANTS-III conference. It offers both encryption (NTRU-

encrypt) and digital signature (NTRUSign) and is more efficient than the current and more widely used

public-key cryptosystems, such as RSA [Rivest et al.,1978], ECC [Koblitz, 1985] [Miller,1985] and El

Gamal [El Gamal,1985]. The security of RSA, ECC and El Gamal are based on the difficulty of factoring

large composite integers or computing discrete logarithms. In 1997, Shor [Shor,1997] showed that quan-

tum computers can be used to factor integers and to compute discrete logarithms in polynomial time. As a consequence, RSA, ECC and El Gamal will be easily breakable using a quantum computer, and

many efforts have been deployed to ensure the future viability of cryptographic protocols in the presence

of large scale quantum computers. Hence, some public key cryptosystems have been developed that are believed to be resistant to quantum computing based attacks such as the NTRU cryptosystem. An

interesting advantage of NTRU over traditional public-key cryptosystems based on factoring or discrete

logarithm is its potential resistance to quantum computers. This makes it a promising alternative to the

more established public key cryptosystems. For this reason, NTRU is considered as one of the prominent

post quantum cryptosystems. The security of NTRU is related to a very hard problem in lattice reduction,

called the shortest vector problem (SVP) and it is conjectured that there is no polynomial time algorithm

to solve this problem. On the other hand, the NTRU cryptosystem has been approved for standardization

by the Institute of Electrical and Electronics Engineers (IEEE) in 2009. 1 The mathematics behind the NTRU cryptosystem are intriguing and combine several notions and con- cepts from algebra, number theory and lattice reduction techniques. In this chapter, we provide an

overview of the main theory used to build the NTRU cryptosysem, discuss its classical security as well

as its resistance to quantum attacks.

2 DESCRIPTION OF NTRU

2.1 The NTRU encryption scheme

The arithmetic of NTRU depends on three integer parameters(N;p;q). LetZq=Z=qZdenote the ring of integers moduloq. The operations of NTRU took place in the ring of truncated polynomi-

alsP=Zq[X]=XN1. In this ring, a polynomialfis defined by its coefficients in the base1;X;X2;:::;XN1as

f= (f0;f1;:::;fN1) =f0+f1X+:::+fN1XN1: The addition of two polynomialsfandgis defined as pairwise addition of the coefficients of the same degree f+g= (f0+g0;f1+g1;:::;fN1+gN1); and multiplication, noted\"is defined as a convolution multiplication fg=h= (h0;h1;:::;hN1);withhk=X i+jk(modN)f igj: The Euclidean norm or the length of a polynomialf= (f0;f1;;fN1)is defined as kfk=v uutN1X i=0f 2i:

LetB(d))be the binary set of polynomials defined for a positive integersdas the set of polynomials of

Rwithdcoefficients equal to1and all the other coefficients equal to0. The setB(d))can be written as

B(d) =(

f(X) =N1X i=0f iXi2 P jfi2 f0;1g;N1X i=0f i=d)

Different descriptions of NTRUEncrypt, and different proposed parameter sets, have been in circulation

since 1996. The 2005 instantiation of NTRU is set up by six public integersN,p,q,df,dg,drand four public spacesLf,Lg,Lm,Lr. Nis prime and sufficiently large to prevent lattice attacks. pandqare relatively prime numbers. qis much larger thanp. L f=B(df)is a set of small polynomials from which the private keys are selected. 2 L g=B(dg)is a similar set of small polynomials from which other private keys are selected. L m=Zp[X]=XN1is the plaintext space. It is a set of polynomialsm2Zp[X]=(XN1) that represent encryptable messages. L r=B(dr)is a set of polynomials from which the blinding value used during encryption is selected. The key generation, encryption and decryption primitives are as follows:

1.Key generation

Randomly choose a polynomialf2 Lfsuch thatfis invertible inPmodulopand modulo q.

Computefpf1(modp)andfqf1(modq):

Randomly choose a polynomialg2 Lg.

Computehgfq(modq).

Publish the public key(N;h)and the set of parametersp,q,Lf,Lg,LrandLm.

Keep the private key(f;fp).

2.Encryption

Represent the message as a polynomialm2 Lm.

Randomly choose a polynomialr2 Lr.

Encryptmwith the public key(N;h)using the ruleeprh+m(modq).

3.Decryption

The receiver computesafe(modq).

Using a centering procedure, transformato a polynomial with coefficients in the intervalq2 ;q2

Computemfpa(modp).

The decryption process is correct if the polynomialprg+fm(modq)is actually equal to prg+fm2Z[X]=XN1, that is without using moduloq. We have afe(modq) f(prh+m) (modq) fr(pgfq) +fm(modq) prgffq+fm(modq) prg+fm(modq):

Hence, ifa=prg+fminZ[X]=XN1, then

afp(prg+fm)fpm(modp): 3 We note that if the parameters are chosen properly, the decryption process never fails. A sufficient condition for this is to chooseqmuch larger thanp.

We notice that NTRU should not be used without padding because, as explained in [Jaulmes et al.,2000],

NTRU is vulnerable to a simple chosen ciphertext attack. To avoid this attack, a padding scheme like NAEP [Howgrave-Graham et al.,2003] should be used.

According to the latest research, the parameters of the following table are considered secure.ParametersNpq

Moderate security1673128

Standard security2513128

High security3473128

Highest security5033256

Table 1: Security parameters of the NTRU cryptosystem.

2.2 An example of NTRU encryption

To illustrate the NTRU scheme, consider the following parameters

N= 11;

p= 3; p= 61; f=X10X8X6+X4+X2+X+ 1; g=X9X8X6+X4+X2+ 1; m=X7X4+X3+X+ 1; r=X9+X7+X4X3+ 1:(1)

Then, we get

f p=X9+X7+X5+ 2X4+ 2X3+ 2X2+X; f q= 45X10+ 49X9+ 26X8+ 40X7+ 53X6+ 47X5+ 21X4+ 24X3+ 60X2+ 32X+ 31; h= 11X10+ 49X9+ 25X8+ 46X7+ 28X6+ 53X5+ 31X4+ 36X3+ 32X2+ 5X+ 50; e= 11X10+ 46X9+ 52X8+ 35X7+ 30X6+ 26X5+ 35X4+ 32X3+ 18X2+ 56X+ 28;(2) Then, computinga=fe(modq)and centering moduloq, we get a= 58X10+ 60X9+ 60X8+ 4X7+ 56X5+ 6X4+ 55X2+ 3X+ 6; a=3X10X9X8+ 4X75X5+ 6X46X2+ 3X+ 6;(3) Finally, computingfpa(modp)and centering modulop, we get f pa=X7+ 2X4+X3+X+ 1 (modp); f pa=X7X4+X3+X+ 1;(4) which matches the original messagem. 4

3 LATTICE THEORY

Inthissection, wewillreviewsomeconceptsofthelatticetheorythatareusefulforthischapter. Formore

details on lattice theory, we refer to [Micciancio et al.,2002] and [de Weger,2012]. We also describe some

classical lattice problems, especially the Shortest Vector Problem (SVP) and the Closest Vector Problem

(CVP) and their connection to cryptography. Finally, we describe the LLL algorithm, which is the main

technique in lattice reduction.

3.1 Basic notions on lattices

The LLL algorithm was invented in 1982 and was called LLL after its inventors A.K. Lenstra, H.W.

Lenstra et L. Lov

´asz [Lenstra et al.,1982]. Originally, it was aimed to factor polynomials with integer coefficients. Sinceitsinvention, theLLLalgorithmhasservedinmanytopicssuchassolvingdiophantine

equations and cryptanalysis of certain cryptosystems. It is mainly used to find a very good basis for

discrete sets ofRn, called lattices. Definition 1.Letnanddbe two positive integers. Letb1;bd2Rnbedlinearly independent vectors.

The latticeLgenerated by(b1;bd)is the set

L=dX i=1Zbi=( dX i=1x ibijxi2Z) The vectorsb1;bdare called a vector basis ofL. The lattice rank isnand the lattice dimension isd.

Ifn=dthenLis called a full rank lattice.

IfL Rnis a lattice of dimensiond, then it is an additive subgroup ofRnand a basis forLcan be written as the rows of adnmatrix. b 1b

2Figure 1: A lattice with the basis(b1;b2)

A latticeLwith dimensiond2has infinitely many bases. Any two such bases have the same number of elements and are related with a unimodular matrix. 5 Theorem 2.LetL Rnbe a lattice of dimensiond. Let(b1;bd)and(b01;b0d)be two bases of L. Then there exists addmatrixUwith entries inZanddet(U) =1such that [b01;:::;b0d]t=U[b1;:::;bd]t; wherevtis the transpose vector ofv. A lattice has many invariants. An important invariant is the volume or the determinant. Definition 3.LetLbe a lattice with a basis(b1;bd). The volume or determinant ofLis det(L) =pdet(BBt); whereBis thednmatrix formed by the rows of the basis. Theorem 4.LetLbe a lattice of dimensiond. Then the determinantdet(L)is independent of the choice of the basis. Whend=n,Lis called a full-rank lattice, and the matrix of the basis is annmatrix. Then the following property holds. Theorem 5.LetLbe a full-rank lattice of dimensionn. If(b1;bn)is a basis ofLwith matrixB, then det(L) =jdet(B)j:

Lattices whose bases have integer coordinates are very convenient for various problems. Such lattices

are calledintegral lattices. Also, many problems in lattice theory involve inner product of vectors and

distance minimization. The most intuitive way to measure distance in a lattice is by using the Euclidean

norm. Definition 6.Letu= (u1;;un)andv= (v1;vn)be two vectors ofRn. 1.

The inner product of uandvis

hu;vi=utv=nX i=1u ivi: 2.

The Euclidean norm of uis

kuk= (hu;ui)12 nX i=1u 2i! 12

Lattices are used as a fundamental tool for cryptanalysis of various public key cryptosystems such as

knapsack cryptosystems, RSA [Rivest et al., 1978], NTRU [Hoffstein et al.,1996] and GGH [Goldreich

et al,1997]. On the other hand, lattices are used as a theoretical tool for security analysis of several cryp-

tosystems such as NTRU and LWE [Regev,2005]. These cryptosystems are related to hard computational problems on lattices such the shortest vector problem. Definition 7.LetLbe a lattice. The minimal distance1ofLis the length of the shortest non-zero vector ofL:

1= inffkvk 2 L jv2 Lnf0gg:

6

Another way to define1is

1= inffkvuk 2 L jv;u2 L; v6=ug:

Definition 8.LetLbe a lattice of dimensionn. Fori= 1;:::n, thei-th successive minimum of the lattice is i= minfmaxfkv1k;:::;kvikg jv1;:::;vi2 Lare linearly independentg: In the following, we list some computational problems that seem to be hard in general and on which some cryptographic systems have been based. An overview of many hard lattice problems and their interconnections is presented in [LaLaarhoven et al.,2012]. Definition 9.LetLbe a full rank lattice of dimensionninZn.

1.The Shortest Vector Problem (SVP):Given a basis matrixBforL, compute a non-zero vector

v2 Lsuch thatkvkis minimal, that iskvk=1(L).

2.The Closest Vector Problem (CVP):Given a basis matrixBforLand a vectorv62 L, find

a vectoru2 Lsuch thatkvukis minimal, that iskvuk=d(v;L)where d(v;L) = min u2Lkvuk.

3.The Shortest Independent Vectors Problem (SIVP):Given a basis matrixBforL, findnlin-

early independent lattice vectorsv1;v2;:::;vnsuch thatmaxikvik n, wherenis thenth successive minima ofL.

4.The approximate SVP problem (

SVP):Fix

>1. Given a basis matrixBforL, compute a non-zero vectorv2 Lsuch thatkvk

1(L)where1(L)is the minimal Euclidean norm inL.

5.The approximate CVP problem (

CVP):Fix

>1. Given a basis matrixBforLand a vector v62 L, find a vectoru2 Lsuch thatkvuk

1d(v;L)where d(v;L) = minu2Lkvuk.

b 1b 2v

0Figure 2: The shortest vectors arev0andv0

7 b 1b 2v v

0Figure 3: The closest vector tovisv0

Some of such problems have been shown to be NP-hard, and in general, are known to be hard when the

dimension is sufficiently large. No efficient algorithm is known to find the shortest vector nor the closest

vector in a lattice. The next result, due to Minkowski gives a theoretical explicit upper bound in terms of

dim(L)anddet(L). Theorem 10(Minkowski).LetLbe a lattice with dimensionn. Then there exists a non-zero vector v2 Lsatisfying kvk pndet(L)1n

On the other hand, the Gaussian Heuristic implies that the expected shortest non-zero vector in a lattice

Lis approximately(L)where

(L) =rdim(L)2e(det(L))1dim(L):

We notice that Minkowski"s theorem as well as the Gaussian Heuristic are not useful for practical imple-

mentations. For implementation purposes, the LLL algorithm is more useful and approximately solves the SVP within a factor of2n=2.

3.2 The LLL algorithm

The LLL algorithm is the most useful tool in the algorithmic study of lattices. It provides a partial answer

to SVP since it runs in polynomial time and approximates the shortest vector of a lattice of dimensionn

up to a factor of2n=2. On the other hand, Babai [Babai,1986] gave an algorithm that approximates the

CVP problem by a factor of3=p2

n. In some cases, the LLL algorithm gives extremely striking results both in theory and practice that are enough to solve lattice problems. The LLL algorithm uses the well known Gram-Schmidt orthogonalization method. The Gram-Schmidt process is an iterative method to orthonormalize the basis of a vector space. Theorem 11(Gram-Schmidt).LetVbe a vector space of dimensionnand(b1;bn)a basis ofV.

Let(b1;bn)benvectors such that

b

1=b1; bi=bii1X

j=1 i;jbj; 8 where, forj < i i;j=hbi;bjihbj;bji:

Then(b1;bn)is an orthogonal basis ofV.

Using matrices, the bases(b1;bn)and(b1;bn)satisfy

2 6

666666664b

1 b 2 b 3... b n1 b n3 7

777777775=2

6

6666666641 0 0 00

2;11 0 00

3;13;21 00

n1;1n1;2n1;31 0 n;1n;2n;3n;n113 7

7777777752

6

666666664b

1 b 2 b 3... b n1 b n3 7

777777775:

Clearly the basis(b1;bn)is an orthogonal basis, but in general, if(b1;bn)is a basis of a lattice

L,(b1;bn)is not a basis forL.

The Gram-Schmidt process can be transformed into the algorithm shown in 1.Algorithm 1: Gram-Schmidt processINPUT:A basis(b1;bn)of a space vectorVRn.

OUTPUT:An orthogonal basis(b1;bn)ofV.

1:Setb1=b1.

2:fori= 1;2;n,do

3:forj= 1;2;i1,do

4:Computei;j=hbi;bjihbj;bji.

5:end for

6:Computebi=biPi1

j=1i;jbj.

7:end forThe following result shows how to compute the determinant of a lattice with a basisB=fb1;:::;bng

using the Gram-Schmidt orthogonalization. Corollary 12(Hadamard).LetB=fb1;:::;bngbe a basis of a latticeLand letB=fb1;:::;bngbe the associated Gram-Schmidt orthogonalization. Then det(L) =nY i=1kbik nY i=1kbik: The LLL algorithm is connected to the Gram-Schmidt orthogonalization process and produces a basis that satisfies the LLL-reduction notion as in the following definition. Definition 13.Let(b1;bn)be a basis of a latticeL. It is said to be LLL-reduced if the Gram-Schmidt orthogonalization(b1;bn)satisfies ji;jj 12 ;for1j < in;(5) 34
kbi1k2 kbi+i;i1bi1k2;for1< in:(6) 9

The condition (6) is called Lov

´asz"s condition. Ifi;j= 0for alliandj, then the basis is orthogonal, and consequently is minimal according to Hadamard"s inequality as in Corollary 12.

Since a lattice has infinitely many basis, some basis are better than others. Agood basisis generally a

basis with short and almost orthogonal vectors. Consequently, a LLL-reduced basis is a candidate for a

good basis. b 1b

2Figure 4: A lattice witha badbasis(b1;b2)

b 1b 2u 1u

2Figure 5: The same lattice witha goodbasis(u1;u2)

The original version of the LLL algorithm is presented in Algorithm (2). An LLL-reduced basis has various properties such as the following ones. Then

1.kbjk22ijkbik2for1jin.

2. Qn i=1kbik 2n(n1)4 det(L).

3.kbjk 2i12

kbikfor1jin. 10 Algorithm 2: LLL AlgorithmINPUT:A basis(b1;;bn)forL.

OUTPUT:An LLL reduced basis(b1;;bn).

1:Compute(b1;;bn)using the Gram-Schmidt orthogonolization method 1.

2:k= 2

3:whileindo

4:bi=biPi1

l=1bi;lebl

5:ifkbik2>34

2i;i1 kbi1k2then

6:i=i+ 1

7:else

8:swap(bi;bi1)

9:i= maxf2;i1g

10:end if

11:end while4.kb1k 2n14

(det(L))1n 5.

F ora non zer ovector v2L,kb1k 2n12

kvk. The following result fixes the size of the vectors of an LLL-reduced basis. Theorem 15.Let(b1;;bn)be an LLL-reduced basis. Then for1jn, we have kbjk 2n(n1)4(nj+1)(detL)1nj+1:

Note that the LLL algorithm provides a basis of reasonably short vectors and can be used to approximate

the shortest vector problem. The next result shows that the LLL algorithm is a polynomial time algorithm. Theorem 16.Let(b1;;bn)be a basis of a latticeL. DefineB= maxikbik. The LLL algorithm computes an LLL-reduced basis with running time O n4log3B:

4 THE LATTICE BASED ATTACK ON NTRU

The NTRU cryptosystem is a polynomial ring cryptosystem and the relation between the public and

private key can be used to define a lattice, which is called the NTRU lattice. A basis for this lattice can

be derived from the public key, and hence is publicly available. The secret key can be considered as a

short vector in this lattice. Consequently, a possible attack on NTRU is to try to solve the approximate

shortest vector problem in the NTRU lattice. Indeed, various attack schemes against NTRU have been

proposed using lattice reduction [Coppersmith et al.]. On the other hand, different attacks on NTRU have

been proposed, without major effects, such as the meet-in-the-middle attacks (see [Howgrave-Graham et

11

al., 2003] and [Howgrave-Graham,2003]). In the rest of this section, we present the lattice based attack

on NTRU presented by Coppersmith and Shamir [Coppersmith et al.,1997] in 1997. Recall that the NTRU system relies on several parameters, mainly two prime numbersN,q, and an integerp. Also the public key satisfieshgfq(modq)wheregandfare two polynomials of the ringP. Hencefhg(modq). Consider the latticeLas follows

L=f(u;v)2 P Pjuhv(modq)g:

Then it is clear thatL Z2Nis a lattice and that(f;g)2 L. To find a basis ofL, observe thatfhg (modq)can be rewritten asfhuq=gfor someu2 P. Alternatively, this can be rewritten as f g# 1 0 h q#" f u# Using the coordinates off,g,handu, this can be transformed into the following form 2 6

666666666666664f

0 f 1... f N1g 0 g 1... g N13 7

777777777777775=2

6

6666666666666641 000 00

0 100 00

0 010 00h

0h1hN1q00

h

N1h0hN20q0

h

1h2h00 0q3

7

7777777777777752

6

666666666666664f

0 f 1... f N1u1 u2... uN13 7

777777777777775:

Observe that the matrix is in the form

U=" I N0N M hqIN# whereINis theNNidentity matrix andMhis the circulant matrix whose columns are circularly shifted versions ofh. Since(f;g)2 L, then(f;g)is an integer linear combination of the columns ofU. Moreover, since the coefficient of(f;g)are small, then(f;g)is a short vector ofL, and, with an overwhelming probability, is the shortest vector inL. Consequently, any method that can solve SVP can break the NTRU system.

Up to date, there is no efficient way to solve SVP. Alternatively, the LLL algorithm can be applied. Using

the matrixU, the LLL algorithm will find a vectorb1with norm satisfying kb1k 22N14 (det(L))12N; while the shortest vectorv2 Lsatisfies (see Theorem 10) kvk p2Ndet(L)12N: Even if the LLL bound seems very large, in practice, the LLL algorithm outputs a much better bound than the theoretical one. For a smallN, the LLL algorithm is sufficient to break the NTRU system as shown by the experiments in [Hoffstein et al.,2003].quotesdbs_dbs47.pdfusesText_47
[PDF] math SVP urgent pour demain !!!!!!!!!!!!!

[PDF] math terminal l2 exercices corrigés pdf

[PDF] Math thales facile mais

[PDF] math théoreme de pythagore

[PDF] math triangle et cercle

[PDF] math trigonométrie

[PDF] Math trop énèrvant s**vp

[PDF] math type brevet

[PDF] Math un appartement a une superfine de 72 m2

[PDF] math un seul exo

[PDF] Math Urg*ent (docu joint)/ J'ai été absent pendant 2 semaine pour des raisons personnelles

[PDF] MATH URGENT !

[PDF] Math URGENT DEMAIN

[PDF] MATH URGENT N°2

[PDF] Math URGENT!!!!