7. Lattice-Based Cryptography
Abstract
Let \(\mathbb {R}^n\) be an n-dimensional Euclidean space and \(x=(x_1, x_2, \ldots , x_n)\in \mathbb {R}^n\) be an n-dimensional vector, x can be a row vector or a column vector, depending on the situation. If \(x\in \mathbb {Z}^n\), then x is called a integral point. \(\mathbb {R}^{m\times n}\) is all \(m\times n\)-dimensional matrices on \(\mathbb {R}\). \(x=(x_1, x_2, \ldots , x_n)\in \mathbb {R}^n\), \(y=(y_1, y_2, \ldots , y_n)\in \mathbb {R}^n\), define the inner product of x and y as.
7.1 Geometry of Numbers
Lemma 7.1
- (i)
\(|x|\ge 0\), \(|x|=0\) if and only if \(x=0\) is a zero vector;
- (ii)
\(|\lambda x|=|\lambda ||x|\), \(\forall ~ x\in \mathbb {R}^n\), \(\lambda \in \mathbb {R}\);
- (iii)
(Trigonometric inequality) \(|x+y|\le |x|+|y|\), and \(|x-y|\ge ||x|-|y||\);
- (iv)(Pythagorean theorem) If and only if \(x\bot y\), we have$$|x\pm y|^2=|x|^2+|y|^2.$$
Proof
Definition 7.1
- (i)
\(x\in \mathscr {R}, \Rightarrow -x\in \mathscr {R}\) (Symmetry);
- (ii)
Let \(x, y\in \mathscr {R}\), \(\lambda \ge 0, \mu \ge 0\), and \(\lambda +\mu =1\), then \(\lambda x+\mu y\in \mathscr {R}\) (Convexity).
Lemma 7.2
For any \(A\in \mathbb {R}^{m\times n}\), and any positive vector \(c=(c_1, c_2, \ldots , c_n)\in \mathbb {R}^n\), then \(\mathscr {R}(A, c)\) is a symmetric convex body in \(\mathbb {R}^n\).
Proof
Lemma 7.3
Let \(\mathscr {R}\subset \mathbb {R}^n\) be a symmetrical convex body, \(x\in \mathscr {R}\), then when \(|\lambda |\le 1\), we have \(\lambda x\in \mathscr {R}\).
Proof
Lemma 7.4
If \(x, y\in \mathscr {R}\), then \(\lambda x+\mu y\in \mathscr {R}\), where \(\lambda , \mu \) are real numbers, and satisfies \(|\lambda |+|\mu |\le 1\).
Proof
Lemma 7.5
(Blichfeldt) Let \(\mathscr {R}\subset \mathbb {R}^n\) be any region in \(\mathbb {R}^n\) and V be the volume of \(\mathscr {R}\). If \(V>1\), then there are two different vectors \(x\in \mathscr {R}, x'\in \mathscr {R}\) so that \(x-x'\) is an integral point (thus a nonzero integral point).
Proof
Lemma 7.6
Proof
Remark 7.1
Lemma 7.7
Proof
Remark 7.2
In (7.5), “\(\le \)” is changed to “<” to define \(\mathscr {R}(A, c)\), and the above lemma is still holds.
Now consider the general situation, let \(A=(a_{ij})_{m\times n}\). If \(m>n\), and \(\mathrm{rank}(A)\ge n\), then \(\mathscr {R}(A, c)\) defined by Eq. (7.5) is still a bounded region. Obviously if \(m<n\), or \(m=n\), \(\mathrm{rank}(A)<n\), then \(\mathscr {R}(A, c)\) is an unbounded region, and \(V=\infty \). Therefore, we have the following Corollary.
Corollary 7.1
Proof
When \(\varepsilon >0\) given, then \(\mathrm{Vol}(\mathscr {R}(A, c))=\infty >2^n\). By Lemma 7.6, \(\mathscr {R}(A, c)\) contains at least one nonzero zero point.
Lemma 7.8
Proof
Definition 7.2
- (i)
\(F(x)=0 \Leftrightarrow x=0\);
- (ii)If A is a reversible n-order square matrix, the distance function defined by \(\mathscr {R}(A, c)\) is$$\begin{aligned} F(x)=\max _{1\le i\le n} c_i^{-1}\left| \sum _{j=1}^{n}a_{ij}x_j \right| . \end{aligned}$$(G1.12')
Property (i) can be derived from the boundedness of \(\mathscr {R}\), and property (ii) can be derived directly from the definition of \(\mathscr {R}(A, c)\). Later we will see that \(0\le F(x)<\infty \) holds for all \(x\in \mathbb {R}^n\). The main property of distance function F(x) is the following Lemma.
Lemma 7.9
- (i)
Let \(\lambda \ge 0\), then \(x\in \lambda \mathscr {R}\Leftrightarrow F(x)\le \lambda \);
- (ii)
\(F(\lambda x)=|\lambda |F(x)\) holds for all \(\lambda \in \mathbb {R}, x\in \mathbb {R}^n\);
- (iii)
\(F(x+y)\le F(x)+F(y), \forall ~x, y\in \mathbb {R}^n\).
Proof
Corollary 7.2
- (i)
\(\forall ~x\in \mathbb {R}^n\), there is \(\lambda \) such that \(x\in \lambda \mathscr {R}\);
- (ii)Let \(\{\alpha _1, \alpha _2, \ldots , \alpha _n\}\subset \mathscr {R}\) be a set of bases of \(\mathbb {R}^n\), then$$\left\{ \sum _{i=1}^n\mu _i\alpha _i | |\mu _1|+|\mu _2|+\cdots +|\mu _n|\le 1 \right\} \subset \mathscr {R}.$$
Proof
Because \(F(x)<\infty \), so by (i) of Lemma 7.9, we can directly deduce the conclusion of (i) and (ii) given directly by Lemma 7.4.
Lemma 7.10
Proof
An important application of the above geometry of numbers is to solve the problem of rational approximation of real numbers, which is called Diophantine approximation in classical number theory. The main conclusion of this section is the following simultaneous rational approximation theorem of n real numbers.
Theorem 7.1
Proof
Corollary 7.3
7.2 Basic Properties of Lattice
Lattice is one of the most important concepts in modern cryptography. Most of the so-called anti-quantum computing attacks are lattice based cryptosystems. What is a lattice? In short, a lattice is a geometry in n-dimensional Euclidean space \(\mathbb {R}^n\), for example \(L=\mathbb {Z}^n\subset \mathbb {R}^n\), then \(\mathbb {Z}^n\) is a lattice in \(\mathbb {R}^n\), which is called an integer lattice or a trivial lattice. If \(\mathbb {Z}^n\) is rotated once, we get the concept of a general lattice in \(\mathbb {R}^n\), which is a geometric description of a lattice, next, we give an algebraic precise definition of a lattice.
Definition 7.3
- (i)
L is an additive subgroup of \(\mathbb {R}^n\);
- (ii)There is a positive constant \(\lambda =\lambda (L)>0\), such that$$\begin{aligned} \min \{|x| | x\in L, x\not =0\}=\lambda , \end{aligned}$$(7.18)
In order to obtain a more explicit and concise mathematical expression of any lattice, we can regard an additive subgroup as a \(\mathbb {Z}\)-module. First, we prove that any lattice is a finitely generated \(\mathbb {Z}\)-module.
Lemma 7.11
Let \(L\subset \mathbb {R}^n\) be a lattice and \(\{\alpha _1, \alpha _2, \ldots , \alpha _m \}\subset L\) be a set of vectors in L, then \(\{\alpha _1, \alpha _2, \ldots , \alpha _m \}\) is linearly independent in \(\mathbb {R}\) if and only if \(\{\alpha _1, \alpha _2, \ldots , \alpha _m \}\) is linearly independent in \(\mathbb {Z}\).
Proof
Lemma 7.12
- (i)Let \(x_0\in \mathbb {R}^m\) be a solution of \(A'Ax=A'b\), then$$|Ax_0-b|^2=\min _{x\in \mathbb {R}^m}|Ax-b|^2.$$
- (ii)
\(\mathrm{rank}(A'A)=\mathrm{rank}(A)\), and homogeneous linear equations \(Ax=0\) and \(A'Ax=0\) have the same solution.
- (iii)\(A'Ax=A'b\) always has a solution \(x\in \mathbb {R}^m\), and when \(\mathrm{rank}(A)=m\), the solution is unique$$x=(A'A)^{-1}A'b.$$
Proof
Lemma 7.13
Proof
Lemma 7.12 is called the least square method in linear algebra, its significance is to find a vector \(x_0\) with the shortest length in the set \(\{Ax-b| x\in \mathbb {R}^m\}\) for a given \(n\times m\)-order matrix A and a given vector \(b\in \mathbb {R}^n\). Lemma 7.12 gives an effective algorithm, that is, to solve the linear equations \(A'Ax=A'b\), and \(x_0\) is the solution of the equations, Lemma 7.13 is called the diagonalization of quadratic form. Now, the main results are as follows:
Theorem 7.2
Proof
It can be directly deduced from the above theorem
Corollary 7.4
Let \(L=L(B)\subset \mathbb {R}^n\) be a lattice of \(\mathrm{rank}(L)=m\), \(\lambda \) be the minimum distance of L, \(B\in \mathbb {R}^{n\times m}\), \(\delta \) be the minimum eigenvalue of \(B'B\), then \(\lambda \ge \sqrt{\delta }\).
Definition 7.4
\(L\subset \mathbb {R}^n\) is a lattice, and \(\mathrm{rank}(L)=n\), call L is a full rank lattice of \(\mathbb {R}^n\).
Lemma 7.14
\(L=L(B)\subset \mathbb {R}^n\) is a lattice (full rank lattice), \(B_1\in \mathbb {R}^{n\times n}\), then \(L=L(B)=L(B_1)\) if and only if there is a unimodular matrix \(U\in SL_n(\mathbb {Z})\Rightarrow B=B_1U\).
Proof
Lemma 7.15
Let \(L=L(B)\) be a lattice, then the dual lattice of L is \(L^*=L((B^{-1})')\), that is, if B is the generating matrix of L, then \((B^{-1})'\) is the generating matrix of \(L^*\).
Proof
By Lemma 7.15, we immediately have the following corollary.
Corollary 7.5
Definition 7.5
- (i)
\(\forall ~ x\in \mathbb {R}^n\), there is a \(\alpha \in F\Rightarrow x\equiv \alpha ({{\,\mathrm{mod}\,}}L)\),
- (ii)
Any \(\alpha _1, \alpha _2\in F\), then \(\alpha _1\not \equiv \alpha _2 ({{\,\mathrm{mod}\,}}L)\).
By definition, the basic neighborhood of a lattice is the representative element set of the additive quotient group \(\mathbb {R}^n/L\). Therefore, a basic neighborhood of any L forms an additive group under \({{\,\mathrm{mod}\,}}L\).
Lemma 7.16
- (i)
Any two basic neighborhoods \(F_1\) and \(F_2\) of L are isomorphic additive groups \(({{\,\mathrm{mod}\,}}L)\).
- (ii)
\(F=\{Bx|x=(x_1, x_2, \ldots , x_n)', \text{ and }~0\le x_i<1, 1\le i\le n\}\) is a basic neighborhood of L(B).
- (iii)
\(\mathrm{Vol}(F)=d=d(L)\).
Proof
Lemma 7.17
Proof
Equation (7.35) is usually called Hadamard inequality, and we give another proof here.
Definition 7.6
The following lemma is a useful lower bound estimate of the minimum distance \(\lambda _1\).
Lemma 7.18
Proof
Corollary 7.6
The continuous minimum \(\lambda _1, \lambda _2, \ldots , \lambda _n\) of a lattice L is reachable, that is, it exists \(\alpha _i\in L\Rightarrow |\alpha _i|=\lambda _i\), \(1\le i\le n\).
Proof
In Sect. 7.1, the geometry of numbers is relative to the integer lattice \(\mathbb {Z}^n\); next, we extend the main results to the general full rank lattice.
Lemma 7.19
(Compare with Lemma 7.5) \(L=L(B)\subset \mathbb {R}^n\) is a lattice (full rank lattice), \(\mathscr {R}\subset \mathbb {R}^n\), if \(\mathrm{Vol}(\mathscr {R})>d(L)\), then there are two different points in \(\mathscr {R}\), \(\alpha \in \mathscr {R}\), \(\beta \in \mathscr {R}\Rightarrow \alpha -\beta \in L\).
Proof
Lemma 7.20
(Compare with 7.6) Let L be a full rank lattice, \(\mathscr {R}\subset \mathbb {R}^n\) is a symmetric convex body. And \(\mathrm{Vol}(\mathscr {R})>2^nd(L)\), then \(\mathscr {R}\) contains a nonzero lattice point, that is \(\exists ~\alpha \in L\), \(\alpha \not =0,\) such that \(\alpha \in \mathscr {R}\).
Proof
Corollary 7.7
Proof
Lemma 7.21
Proof
The above lemma shows that the upper bound (7.38) of \(\lambda _1\) is valid for \(\lambda _i\) in the sense of geometric average.
Finally, we discuss the computational difficulties on the lattice. These problems are the main scientific basis and technical support in the design of trap gate function, and they are also the cornerstone of the security of lattice cryptography.
- 1.
Shortest vector problem SVP
In 1982, H. W. Lenstra, A. K. Lenstra and L. Lovasz creatively developed a set of algorithms in (1982) to effectively solve the approximation problem of the shortest vector, which is the famous LLL algorithm in lattice theory. The computational complexity of LLL algorithm is polynomial for the whole lattice, and the approximation coefficient \(r(n)=2^{\frac{n-1}{2}}\). How to improve the approximation coefficient in LLL algorithm to the polynomial coefficient of n is the main research topic at present. For example, Schnorr’s work in 1987 and Gama and Nguyen’s work (2008a, 2008b) are very representative, but they are still far from the polynomial function, so the academic circles generally speculate:
Conjecture 1: there is no polynomial algorithm that can approximate the shortest vector so that the approximation coefficient r(n) is a polynomial function of n.
- 2.
Closest vector problem CVP
There are many other difficult computational problems on lattice, such as the Successive Shortest vector problem, which is essentially to find a deterministic algorithm to approximate each \(\alpha _i\in L\), where \(|\alpha _i|=\lambda _i\) is the continuous minimum of L. However, SVP and CVP are commonly used in lattice cryptosystem design and analysis, and most of the research is based on the integer lattice.
7.3 Integer Lattice and q-Ary Lattice
Definition 7.7
A full rank lattice L is called an integer lattice, if \(L\subset \mathbb {Z}^{n}\), an integer lattice L is called a q-ary lattice, if \(q \mathbb {Z}^{n} \subset L\subset \mathbb {Z}^{n}\), where \(q\ge 1\) is a positive integer.
It is easy to see from the definition that a lattice \(L=L(B)\) is an integer lattice \(\Leftrightarrow B \in \mathbb {Z}^{n\times n}\) is an integer square matrix, so the determinant \(d=d(L)\) of an entire lattice L is a positive integer.
Lemma 7.22
Let \(L=L(B) \subset \mathbb {Z}^{n}\) be an integer lattice, \(d=d(L)\) is the determinant of L, then \(d \mathbb {Z}^{n} \subset L\subset \mathbb {Z}^{n}\), therefore, an integer lattice is always a d-ary lattice \((d=q)\).
Proof
The following lemma is a simple conclusion in algebra. For completeness, we prove the following.
Lemma 7.23
- (i)
\(\mathbb {Z}^{n}/q\mathbb {Z}^{n} \cong \mathbb {Z}_{q}^{n}\) (additive group isomorphism).
- (ii)
\(\mathbb {Z}^{n}/L \cong \mathbb {Z}_{q}^{n} /_{L/q\mathbb {Z}^{n}}\) (additive group isomorphism). Therefore, \(L/q\mathbb {Z}^{n}\) is a linear code on \(\mathbb {Z}_{q}^{n}\).
Proof
- (1)Transform two rows or two columns of matrix A:$$\begin{aligned} {\left\{ \begin{aligned}&\sigma _{ij}(A)\text {-Transform rows }i~\text {and }j~\text {of }A \\&\tau _{ij}(A)\text {-Transform columns }i~\text {and}~j~\text {of }A\\ \end{aligned} \right. } \end{aligned}$$
- (2)A row or column multiplied by \(-1\) by A:$$\begin{aligned} {\left\{ \begin{aligned}&\sigma _{-i}(A)\text {-Multiply row }i~\text {of }A~\text {by }- 1 \\&\tau _{-i}(A)\text {-Multiply column }i~\text {of }A~\text {by }- 1 \\ \end{aligned} \right. } \end{aligned}$$
- (3)Add the k times of a row (column) to another row (column), \(k\in \mathbb {R}\), in many cases, we require \(k \in \mathbb {Z}\) to be an integer:$$\begin{aligned} {\left\{ \begin{aligned}&\sigma _{ki+j}(A)\text {-Add }k~\text {times of row }i~\text {of }A~\text {to row }j \\&\tau _{ki+j}(A)\text {-Add } k~\text {times of column }i~\text {of }A~\text {to column }j \\ \end{aligned} \right. } \end{aligned}$$
Lemma 7.24
Proof
Definition 7.8
\(L=L(B)\subset \mathbb {Z}^{n}\) is an integer lattice, and B is the HNF matrix, which is called the HNF basis of L, denote as \(B=\mathrm{HNF}(L)\).
The following lemma proves that a whole lattice has a unique HNF basis, so it is reasonable to use \(\mathrm{HNF}(L)\) to represent HNF basis.
Lemma 7.25
Let \(L \subset \mathbb {Z}^{n}\) be an integer lattice, then there is a unique HNF matrix \(B\Rightarrow L=L(B)\).
Proof
Let’s prove the uniqueness of HNF base B if there are two HNF matrices \(B_{1}\),\(B_{2}\Rightarrow L(B_{1})=L(B_{2})\), then from Lemma 7.14, there is a unimodular matrix \(U \in SLn(\mathbb {Z})\) such that \(B_{1}=B_{2}U\); that is, the elementary column transformation defined by formula (7.43) can be continuously implemented on \(B_{2}\) to obtain \(B_{1}\), but for \(B_{2}\), any column transformation \(\tau _{ij}\) ,\(\tau _{-i}\) and \(\tau _{ki+j}\) is not a HNF matrix, so \(U=I_{n}\) is a unit matrix, that is \(B_{1}=B_{2}\). The Lemma holds.
Lemma 7.26
Proof
Next, we discuss q-ary lattices, where \(q\ge 1\) is a positive integer, the following two q-ary lattices are often used in lattice cryptosystems.
Definition 7.9
Lemma 7.27
Proof
Lemma 7.28
Proof
7.4 Reduced Basis
Lemma 7.29
- (i)$$\begin{aligned} L(\beta _{1},\beta _{2} ,\ldots ,\beta _{k})=L(\beta _{1}^{*},\beta _{2}^{*} ,\ldots ,\beta _{k}^{*}), ~1\le k \le n. \end{aligned}$$(7.51)
- (ii)For \(1\le i \le n\), there is$$\begin{aligned} {\left\{ \begin{array}{ll} \langle \beta _{i},\beta _{k}^{*}\rangle =0, &{}\mathrm{when}~k>i;\\ \langle \beta _{i},\beta _{k} \rangle = \langle \beta _{k}^{*},\beta _{k}^{*} \rangle , &{}\mathrm{when}~k=i. \end{array}\right. } \end{aligned}$$(7.52)
- (iii)\(\forall ~ x \in \mathbb {R}^{n}\), \( x=\sum _{i=1}^{n}x_{i}\beta _{i}^{*}\), then$$\begin{aligned} x_{i}= \frac{\langle x,\beta _{i}^{*}\rangle }{\langle \beta _{i}^{*},\beta _{i}^{*}\rangle }, ~1\le i\le n. \end{aligned}$$(7.53)
Lemma 7.30
Let \(\{\beta _{1},\beta _{2} ,\ldots ,\beta _{n}\}\) be a set of bases of \(\mathbb {R}^{n}\) and \(\{\beta _{1}^{*},\beta _{2}^{*} ,\ldots ,\beta _{n}^{*}\}\) be the corresponding orthogonal basis, \(1\le k \le n\), then \(\beta _{k}^{*}\) is the orthogonal projection of \(\beta _{k}\) on the orthogonal complement space V of the subspace \(L(\beta _{1},\beta _{2},\ldots , \beta _{k-1})\) of \(L(\beta _{1},\beta _{2} ,\ldots ,\beta _{k})\).
Proof
Next, we discuss the transformation law of the corresponding orthogonal basis when making the elementary column transformation of the base matrix \([\beta _{1},\beta _{2} ,\ldots ,\beta _{n}]\).
Lemma 7.31
- (i)
\(\alpha _{i}^{*}=\beta _{i}^{*}\), if \(i\ne k-1, k.\)
- (ii)$$\begin{aligned} {\left\{ \begin{array}{ll} \alpha _{k-1}^{*}=\beta _{k}^{*}+u_{kk-1}\beta _{k-1}^{*}\\ \alpha _{k}^{*}=\beta _{k-1}^{*}-v_{kk-1}\beta _{k-1}^{*}.\\ \end{array}\right. } \end{aligned}$$
- (iii)
\(v_{ij}=u_{ij}\), if \(1\le j <i \le n\), and \(\{i, j\}~\bigcap ~\{k,k-1\}=\varnothing \).
- (iv)$$\begin{aligned} {\left\{ \begin{array}{ll} v_{ik-1}=u_{ik-1}v_{kk-1}+u_{ik}\frac{|\beta _{k}^{*}|^{2}}{|\alpha _{k-1}^{*}|^{2}}, &{}i> k.\\ v_{ik}=u_{ik-1}-u_{ik}u_{kk-1}, &{}i > k.\\ \end{array}\right. } \end{aligned}$$
- (v)
\(v_{k-1 j}=u_{kj}\),\(v_{k j}=u_{k-1 j}, ~ 1\le j <k-1\).
Proof
Lemma 7.32
- (i)
\(\alpha _{i}^{*}=\beta _{i}^{*}\), \(\forall ~ 1\le i\le n\), that is, \(\beta _{i}^{*}\) remains unchanged.
- (ii)
\(v_{ij}=u_{ij}\), if \( 1\le j<i\le n\), \(i\ne k.\)
- (iii)$$\begin{aligned} {\left\{ \begin{array}{ll} v_{kj}=u_{kj} -ru_{k-1,j}, &{}\mathrm{if}~ j<k-1\\ v_{kk-1}=u_{kk-1} -r, &{}\mathrm{if}~j=k-1. \end{array}\right. } \end{aligned}$$
Proof
Next, we introduce the concept of a set of Reduced bases of \(\mathbb {R}^{n}\).
Definition 7.10
Theorem 7.3
Let \(L \subset \mathbb {R}^{n}\) be a lattice(full rank lattice), then there is a generating matrix \(B=[\beta _{1},\beta _{2},\ldots , \beta _{n}]\) of L, where \(\{\beta _{1},\beta _{2},\ldots , \beta _{n} \}\) is a Reduced basis of \(\mathbb {R}^{n}\) and will also be a Reduced basis of lattice \(L=L(B)\).
Proof
The above matrix transformation is equivalent to multiplying a unimodular matrix from the right, so the Reduced basis \(B\Rightarrow L=L(B)\) of lattice L is finally obtained. We complete the proof of Theorem 7.3.
Lemma 7.33
Proof
Remark 7.3
Lemma 7.34
Proof
Another important conclusion of this section is that for the integer lattice L estimation, the computational complexity of the Reduced basis of the integer lattice is obtained by using the LLL algorithm. We prove that the LLL algorithm on the integer lattice is polynomial.
Theorem 7.4
Proof
7.5 Approximation of SVP and CVP
The most important application of lattice Reduced basis and LLL algorithm is to provide approximation algorithms for the shortest vector problem and the shortest adjacent vector problem, and obtain some approximate results. Firstly, we prove the following Lemma.
Lemma 7.35
- (i)$$\begin{aligned} d(L) \le \prod _{i=1}^{n}|\beta _{i}| \le 2^{\frac{n(n-1)}{4}}d(L). \end{aligned}$$(7.69)
- (ii)$$\begin{aligned} |\beta _1|\le 2^{\frac{n-1}{4}}d(L)^{\frac{1}{n}}. \end{aligned}$$(7.70)
Proof
The following theorem shows that if \(\{\beta _{1},\beta _{2},\ldots , \beta _{n} \}\) is a set of Reduced bases of a lattice L, then \(\beta _{1}\) is the approximation vector of the shortest vector \(u_{0}\) of lattice L, and the approximation coefficient \(r_n=2^{n-1}\).
Theorem 7.5
Proof
The following results show that not only the shortest vector, the whole Reduced basis vector is the approximation vector of the Successive Shortest vector of the lattice.
Lemma 7.36
Proof
Remark 7.4
Theorem 7.6
Proof
- (A)rounding off: \(\forall ~x \in \mathbb {R}^{n}\), \([\beta _{1},\beta _{2},\ldots , \beta _{n}]=B\) is a Reduced base of lattice L. The discard vector \([x]_{B}\) of x is defined as follows, let$$\begin{aligned} x=\sum _{i=1}^{n}x_{i}\beta _{i}, x_{i}\in \mathbb {R}, \end{aligned}$$
- (B)
Adjacent plane
Let \(U=\sum _{i=1}^{n-1}\mathbb {R}\beta _{i}=L(\beta _{1},\beta _{2},\ldots , \beta _{n-1})\subset \mathbb {R}^{n}\) be an \(n-1\)-dimensional subspace, \(L^{'}=\sum _{i=1}^{n}\mathbb {Z}\beta _{i}\subset L\) be a sublattice of L, and \(v \in L\), call \(U+v\) is an affine plane of \(\mathbb {R}^{n}\). When \(x \in \mathbb {R}^{n}\) given, if the distance between x and \(U+v\) is the smallest, \(U+v\) is called the nearest affine plane of x.
Let \(x^{'}\) be the orthogonal projection of x in the nearest affine plane \(U+v\), let \(y\in L^{'}\) be the vector closest to \(x-v\) in \(L^{'}\), and let \(w=y+v\) be the approximation of the vector closest to x in L.
Theorem 7.7
Proof
Case 1: if \(u_{x} \in U+x\),
Comparing Theorems 7.6 and 7.7, when \(x=0\), the approximation coefficient of Theorem 7.6 is \(2^{\frac{n-1}{2}}\), for general \(x\in \mathbb {R}^{n}\), there is an additional factor \(\sqrt{2}\) in the approximation coefficient. Using the rounding off technique, we can give an approximation to adjacent vectors, another main result in this section is
Theorem 7.8
By Theorem 7.8, \([x]_{B}\in L\) is an approximation of the nearest lattice point \(u_{x}\), and the approximation coefficient is \(\gamma _{1}(n)=1+2n\left( \frac{9}{2}\right) ^{\frac{n}{2}}\), it is a little worse than the approximation coefficients generated by adjacent planes, but the approximation vector is relatively simple. In lattice cryptosystem, \([x]_{B}\) as input information has higher efficiency. To prove Theorem 7.8, we need the following Lemma.
Lemma 7.37
Proof
Now we give the proof of 7.8:
Proof
7.6 GGH/HNF Cryptosystem
Lattice-based cryptosystem is the main research object of postquantum cryptography. Since it was first proposed in 1996, it has only a history of more than 20 years. Among them, the representative technologies are Ajtai-Dwork cryptosystem, GGH cryptosystem, McEliece-Niederreiter cryptosystem and NTRU cryptosystem based on algebraic code theory. We will introduce them, respectively, below.
GGH cryptosystem is a cryptosystem based on lattice theory proposed by Goldreich, Goldwasser and Halevi in 1997. It is generally considered that it is a new public key cryptosystem to replace RSA in the postquantum cryptosystem era.
Lemma 7.38
Proof
Theorem 7.9
Proof
Lemma 7.39
Proof
Lemma 7.40
Proof
Let \(R^{-1}=(c_{ij})_{n\times n}\), \(R^{-1}e= \left[ \begin{array}{cccc} a_{1} \\ a_{2} \\ \vdots \\ a_{n} \end{array}\right] \), where \(a_{i}=\sum _{j=1}^{n}c_{ij}e_{j}\).
Corollary 7.8
Lemma 7.41
- (i)For \(L=L(B)\), take parameter \(\rho =\rho (B)\) as$$\begin{aligned} \lambda _{1}=\lambda (L)\ge \min _{1\le i\le n}|\beta _{i}^{*}|. \end{aligned}$$(7.114)Then for any \(x\in \mathbb {R}^{n}\), there is at most one grid point$$\begin{aligned} \rho =\frac{1}{2}\min _{1\le i\le n}|\beta _{i}^{*}|. \end{aligned}$$(7.115)$$\begin{aligned} \alpha \in L\Rightarrow |x-\alpha |<\rho . \end{aligned}$$(7.116)
- (ii)Suppose \(L\subset \mathbb {Z}^{n}\) is an integer lattice, then L has a unique HNF base B, that is \(L=L(B)\), \(B=(b_{ij})_{n\times n}\), satisfiesThat is, B is an upper triangular matrix, and the corresponding orthogonal basis \(B^{*}\) of B is a diagonal matrix, that is$$0\le b_{ij}<b_{ii}, \mathrm{when} ~1\le i<j\le n , b_{ij}=0 , \mathrm{when} ~1\le j<i\le n.$$$$B^{*}=\mathrm{diag}\{b_{11},b_{22},\ldots ,b_{nn}\}.$$
Proof
Lemma 7.42
Proof
Lemma 7.43
- (i)That is, the affine plane closest to x is \(A_{\beta _{n}}\), the orthogonal projection of x on \(A_{v}\) is \(x'\).$$\begin{aligned} v=\delta \beta _{n}, x'=\sum _{i=1}^{n-1}\gamma _{i}\beta _{i}^{*}+\delta \beta _{n}^{*}. \end{aligned}$$(7.119)
- (ii)Let \(u_{x}\in L\) be the lattice point closest to x, then$$\begin{aligned} |x-x'|\le |x-u_{x}|. \end{aligned}$$(7.120)
Proof
Lemma 7.44
Proof
- 1.\(L=L(B)=L(R)\subset \mathbb {Z}^{n}\) is an integer lattice, \(R=[r_{1},r_{2},\ldots , r_{n}]\) is the private key, \(B=[\beta _{1},\beta _{2},\ldots ,\beta _{n}]\) is the public key, and is the HNF basis of L, whereWe choose the private key R as a particularly good base, that is \(\rho =\frac{1}{2}\min \{|r_{i}^{*}||1\le i\le n\}\). Specially, public key B satisfies$$B^{*}=\mathrm{diag}\{b_{11},b_{22},\ldots ,b_{nn}\}.$$$$\frac{1}{2}b_{ii}<\rho , \forall ~1\le i\le n.$$
- 2.
Let \(v\in \mathbb {Z}^{n}\) be an integer, \(e\in \mathbb {R}^{n}\) is the error vector, satisfies \(|e|<\rho \).
- 3.Encryption: after any plaintext information \(v\in \mathbb {Z}^{n}\) and error vector e are selected, with \(\rho \) as the parameter, the encryption function \(f_{B,\rho }\) is defined as$$f_{B,\rho }(v,e)=Bv+e=c.$$
- 4.Decryption: We decrypt cryptosystem text c with private key R. Decryption is transformed intowhere \(\tau _{R}\) is the nearest plane operator defined by R.$$f_{B,\rho }^{-1}(v,e)=B^{-1}\tau _{R}(c).$$By Lemma 7.44, when \(|e|<\rho \), \(\Rightarrow |c-Bv|=|e|<\rho \), thusThis ensures the correctness of decryption.$$\begin{aligned} B^{-1}\tau _{R}(c)=B^{-1}\tau _{R}(Bv+e)=B^{-1}Bv=v. \end{aligned}$$(7.124)
Comparing GGH with GGH/HNF, they choose the same encryption function, but the decryption transformation is very different. GGH adopts Babai’s rounding off method, while GGH/HNF adopts Babai’s nearest plane method. There is a certain difference between the two at the selection point of error vector e. The error vector e of GGH depends on each component of parameter \(\sigma \) and e, and \(\pm \sigma \). The error vector e of GGH/HNF depends on the parameter \(\rho \) as long as the length is less than \(\rho \). Therefore, GGH/HNF has greater flexibility in the selection of error vector e.
Lemma 7.45
Proof
Corollary 7.9
7.7 NTRU Cryptosystem
NTRU cryptosystem is a new public key cryptosystem proposed in 1996 by the number theory research unit (NTRU) composed of three digit theorists J. Hoffstein, J. Piper and J. Silverman of Brown University in the USA. Its main feature is that the key generation is very simple, and the encryption and decryption algorithms are much faster than the commonly used RSA and elliptic curve cryptography, NTRU, in particular, can resist quantum computing attacks and is considered to be a potential public key cryptography that can replace RSA in the postquantum cryptography era.
The essence of NTRU cryptographic design is the generalization of RSA on polynomials, so it is called the cryptosystem based on polynomial rings. However, NTRU can give a completely equivalent form by using the concept of q-ary lattice, so NTRU is also a lattice based cryptosystem. For simplicity, we start with polynomial rings.
Lemma 7.46
Under the new multiplication, R is a commutative ring with unit elements.
Proof
Definition 7.11
Lemma 7.47
- (i)Suppose \(F\in A(d,d-1)\), then$$|F|_{2}=\sqrt{2d-1-\frac{1}{N}}.$$
- (ii)If \(F\in A(d,d)\), then$$|F|_{2}=\sqrt{2d}.$$
Proof
Lemma 7.48
Proof
See reference Hoffstein et al. (1998) in this chapter.
Lemma 7.49
\(\forall ~ a= \left[ \begin{array}{cccc} \alpha _{1} \\ \alpha _{2} \\ \vdots \\ \alpha _{N} \end{array}\right] \in \mathbb {R}^{N}\), then \((T^{*}(a))'=T^{*}(\overline{T^{-1}a})\).
Proof
Next, we give an equivalent characterization of cyclic matrix.
Lemma 7.50
Let \(A=(a_{ij})_{N\times N},a= \left[ \begin{array}{cccc} a_{11} \\ a_{21} \\ \vdots \\ a_{N1} \end{array}\right] \in \mathbb {R}^{N}\) is the first column of A, then \(A=T^{*}(a)\) is a cyclic matrix if and only if for all \(1\le k\le N\), if \(1+i-j\equiv k({{\,\mathrm{mod}\,}}N)\), then \(a_{ij}=a_{k1}\).
Proof
The following lemma characterizes the main properties of cyclic matrices.
Lemma 7.51
- (i)
\(T^{*}(a)+T^{*}(b)=T^{*}(a+b).\)
- (ii)
\(T^{*}(a)\cdot T^{*}(b)=T^{*}([T^{*}a]\cdot b)\), and \(T^{*}(a)T^{*}(b)=T^{*}(b)T^{*}(a).\)
- (iii)
\(\det (T^{*}(a))=\prod _{k=1}^{N}(a_{1}+a_{2}\xi _{k}+\cdots +a_{N}\xi _{k}^{N-1}).\) Where \(\xi _{k}(1 \le k \le N)\) is the root of all N-th units of 1.
- (iv)
If the cyclic matrix \(T^{*}(a)\) is reversible, the inverse matrix is \((T^{*}(a))^{-1}=T^{*}(b),\) Where b is the first column of \(T^{*}(a)\).
Proof
Corollary 7.10
Let N be a prime, \(a= \left[ \begin{array}{cccc} a_{1} \\ \vdots \\ a_{N} \\ \end{array}\right] \in \mathbb {R}^{n}\), satisfy \(a\ne 1\), and \(\sum _{i=1}^{N}a_{i}\ne 0\), then the cyclic matrix \(T^{*}(a)\) generated by a is a reversible square matrix.
Proof
Definition 7.12
- (i)
L is q-ary lattice, that is \(q\mathbb {Z}^{2N}\subset L\subset \mathbb {Z}^{2N}\).
- (ii)L is closed under the linear transformation \(\sigma \), that is, \(x,y\in \mathbb {R}^{N}\) is the column vector,$$ \left[ \begin{array}{cccc} x \\ y \\ \end{array}\right] \in L\Rightarrow \sigma \left[ \begin{array}{cccc} x \\ y \\ \end{array}\right] = \left[ \begin{array}{cccc} Tx \\ Ty \\ \end{array}\right] \in L.$$
- (A)
\(N,p,q,d_{f}\) are positive integers, N is a prime, \(1<p<q,(p,q)=1\);
- (B)f and g are two polynomials of degree \(N-1\), and the constant term of f is 1, and$$f-1\in A_{d_{f}}\{p,0,-p\}, g\in A_{d_{f}}\{p,0,-p\}.$$
- (C)
\(T^{*}(f)\) is reversible \({{\,\mathrm{mod}\,}}q\).
Lemma 7.52
Proof
Lemma 7.53
\(\Lambda _{q}(A)\) is a convolution q-ary lattice, and \( \left[ \begin{array}{cccc} f \\ g \\ \end{array}\right] \in \Lambda _{q}(A)\).
Proof
With the above preparation, we now introduce the equivalent form of NTRU in lattice theory.
Lemma 7.54
Proof
- (D)$$d_{f}<\frac{(\frac{q}{4}-1)}{2p}.$$
To sum up, when NTRU cryptosystem satisfies the additional restrictions (A)–(D) on the parameter system, the private key is \( \left[ \begin{array}{cccc} f \\ g \\ \end{array}\right] \) and the public key is HNF matrix H, the encryption and decryption algorithm can be based on the algorithm introduced above.
7.8 McEliece/Niederreiter Cryptosystem
Definition 7.13
A linear code C of length N is called a cyclic code, if \(\forall ~c\in C\Rightarrow cT_{1}\in C\).
Lemma 7.55
\(C\subset \mathbb {F}_{q}^{N}\) is a cyclic code \(\Leftrightarrow C(x)\) is an ideal in \(\mathbb {F}_{q}[x]/\langle x^{N}-1\rangle \).
Proof
Corollary 7.11
Let d be the number of positive factors of \(x^{N}-1\), then the number of cyclic codes with length N is \(d+1\).
A cyclic code C corresponds to an ideal \(C(x)=\langle g(x) \rangle {{\,\mathrm{mod}\,}}x^{N}-1\) in R, we define
Definition 7.14
Let C be a cyclic code, if \(C(x)=\langle g(x)\rangle {{\,\mathrm{mod}\,}}x^{N}-1\), then g(x) is called the generating polynomial of C, where \(g(x)|x^{N}-1\).
If \(g(x)=x^{N}-1\), then \(\langle x^{N}-1\rangle {{\,\mathrm{mod}\,}}x^{N}-1=0\), corresponding to zero ideal in R. Thus, the corresponding cyclic code \(C=\{0=00\cdots 0\}\) is called zero code. If \(g(x)=1\), then \( \langle g(x)\rangle {{\,\mathrm{mod}\,}}x^{N}-1=R\). The corresponding code \(C=\mathbb {F}_{q}^{N}\). Therefore, there are always two trivial cyclic codes in cyclic codes of length N, zero code and \(\mathbb {F}_{q}^{N}\), which correspond to zero ideal in R and R itself, respectively.
Lemma 7.56
Proof
Next, we discuss the dual code of cyclic code and its check matrix.
Lemma 7.57
Proof
Remark 7.5
Definition 7.15
Let \(x^{N}-1=g_{1}(x)g_{2}(x)\cdots g_{t}(x)\) be the irreducible decomposition of \(x^{N}-1\) on \(\mathbb {F}_{q}\), where \(g_{i}(x)(1\le i\le t)\) is the irreducible polynomial with the first term coefficient of 1 in \(\mathbb {F}_{q}[x]\). Then the cyclic code generated by \(g_{i}(x)\) is called the i-th maximal cyclic code in \(\mathbb {F}_{q}^{N}\), denote as \(M_{i}^{+}\). The cyclic code generated by \(\frac{x^{N}-1}{g_{i}(x)}\) is called the i-th minimal cyclic code, denote as \(M_{i}^{-}\).
Minimal cyclic codes are also called irreducible cyclic codes because they no longer contain the nontrivial cyclic codes of \(\mathbb {F}_{q}^{N}\) in \(M_{i}^{-}\). The irreducibility of minimal cyclic codes can be derived from the fact that the ideal \(M_{i}^{-}(x)\) in R corresponding to \(M_{i}^{-}\) is a field. We can give a proof of pure algebra.
Corollary 7.12
Let \(M_{i}^{-}\) be the i-th minimal cyclic code of \(\mathbb {F}_{q}^{N} (1\le i\le t)\), \(M_{i}^{-}(x)\) is the ideal corresponding to \(M_{i}^{-}\) in R, then \(M_{i}^{-}(x)\) is a field, thus, \( M_{i}^{-}\) no longer contains any nontrivial cyclic code of \(\mathbb {F}_{q}^{N}\).
Proof
Example 7.1
All cyclic codes with length of 7 are determined on binary finite field \(\mathbb {F}_{2}\).
Example 7.2
Proof
Lemma 7.58
Proof
Definition 7.16
\(C\subset \mathbb {F}_{q}^{N}\) is a cyclic code, and the multiplication unit element c(x) in C(x) is called the idempotent element of C. If \(C=M_{i}^{-}\) is the i-th minimal cyclic code, the idempotent element of C is called the primitive idempotent element, denote as \(\theta _{i}(x)\).
Lemma 7.59
- (i)
\(C_{1}\bigcap C_{2}\) is also the cyclic code of \(\mathbb {F}_{q}^{N}\), idempotent element is \(c_{1}(x)c_{2}(x)\).
- (ii)
\(C_{1}+C_{2}\) is also the cyclic code of \(\mathbb {F}_{q}^{N}\), idempotent element is \(c_{1}(x)+c_{2}(x)+c_{1}(x)c_{2}(x)\).
Proof
In 1959, A. Hocquenghem and 1960, R. Bose and D. Chaudhuri independently proposed a special class of cyclic codes, which required minimal distance. At present, it is generally called BCH codes in academic circles.
Definition 7.17
A cyclic code \(C\subset \mathbb {F}_{q}^{N}\) with length N is called a \(\delta \)-BCH code. If its generating polynomial is the least common multiple of the minimal polynomial of \(\beta ,\beta ^{2},\ldots ,\beta ^{\delta -1}\), where \(\delta \) is a positive integer, \(\beta \) is a primitive N-th unit root. \(\delta \)-BCH code is also called BCH code with design distance of \(\delta \). If \(\beta \in \mathbb {F}_{q^{m}},N=q^{m}-1\), such BCH codes are called primitive.
Lemma 7.60
Let d be the minimal distance of a \(\delta \)-BCH code, then we have \(d \ge \delta \).
Proof
Now, we can introduce the design principle of McEliece/Niederreiter cryptosystem. Its basic mathematical idea is based on the decoding principle of error correction code. Recall the concept of error correction code in Chap. 2, a code \(C\subset \mathbb {F}_{q}^{N}\) is called t-error correction code (\(t\ge 1\) is a positive integer). If for \(\forall ~ y\in \mathbb {F}_{q}^{N}\), there is at most one codeword \(c\in C\Rightarrow d(c,y)\le t, d(c,y)\) is the Hamming distance between c and y. We know that if the minimum distance of a code C is d, then C is a t-error correction code, where \(t=\left\lceil \frac{d-1}{2} \right\rceil \) is the smallest integer not less than \(\frac{d-1}{2}\). Lemma 7.60 proves the existence of t-error correction codes for any positive integer t, i.e., \(2t+1\)-BCH code \((\delta =2t+1)\), this kind of code is called Goppa code (see the next section), which provides a theoretical basis for McEliece/Niederreiter cryptosystem. Next, we will introduce the working mechanism of this kind of cryptosystem in detail. First, let’s look at the generation of key.
Private key: Select a t-error correction code \(C\subset \mathbb {F}_{q}^{N},C=[N,k]\), H is the check matrix of C, H is an \((N-k)\times N\)-dimensional matrix. For \(\forall ~x\in \mathbb {F}_{q}^{N}, x\rightarrow xH'\in \mathbb {F}_{q}^{N-k}\) is a correspondence of Spaces \(\mathbb {F}_{q}^{N}\) to \(\mathbb {F}_{q}^{N-k}\), let’s prove that this correspondence is a single shot on a special codeword whose weight is not greater than t.
Lemma 7.61
\(\forall ~x, y \in \mathbb {F}_{q}^{N}\), if \(xH'=yH'\), and \(w(x)\le t,w(y)\le t\), then \(x=y\).
Proof
We use t-error correction code C and check matrix H as the private key.
7.9 Ajtai/Dwork Cryptosystem
In order to obtain the anti-collision Hash function, the selection of \(n\times m\)-order matrix A is very important. First, we can select the parameter system: let \(d=2\), \(q=n^2\), n|m, and \(m\log 2>n \log q\), where n is a positive integer. In Ajtai/Dwork cryptographic algorithm, there are two choices of parameter matrix A, one is cyclic matrix and the other is more general ideal matrix. Their corresponding q-element lattice \(\Lambda _q^{\bot }(A)\) are cyclic lattice and ideal lattice, respectively.
Cyclic lattice
Algorithm 1: Hash function based on cyclic lattice.
Parameter: q, n, m, d is a positive integer, \(n \mid m, m \log d >n \log q\).
Secret key: \(\frac{m}{n}\) column vectors \(\alpha ^{(i)}\in \mathbb {Z}_{q}^{n}, 1 \le i \le \frac{m}{n}\).
Lemma 7.62
The characteristic polynomial of rotation matrix \(T_{h}\) is \(f(\lambda )=h(\lambda )\).
Proof
Lemma 7.63
Proof
Definition 7.18
Ideal matrix is a more general generalization of cyclic matrix. The former corresponds to a first n-degree polynomial h(x), and the latter corresponds to a special polynomial \(x^n-1\). We first prove that the ideal matrix \(T_{h}^{*}(g)\) and the rotation matrix \(T_{h}\) generated by any vector \(g\in \mathbb {Z}^{n}\) are commutative under matrix multiplication.
Lemma 7.64
Proof
When the monic n-degree integer coefficient polynomial h is selected, we want to establish the corresponding relationship between the ideal and the integer lattice \(L\subset \mathbb {Z}^{n}\) in the quotient ring \(R=\mathbb {Z}[x]/\langle h(x)\rangle \). First, we define the concept of an ideal lattice. In short, an ideal lattice is an integer lattice generated by the ideal matrix.
Definition 7.19
Let \(g=(g_0,g_1,\ldots ,g_{n-1})^T \in \mathbb {Z}^n\) be a given column vector and \(T_{h}^{*}(g)\) be the ideal matrix generated by g, and call the integer lattice \(L=L(T_{h}^{*}(g))\) an ideal lattice.
Our main result is the 1-1 correspondence between ideal and ideal lattice in \(R=\mathbb {Z}[x]/\langle h(x) \rangle \). This also explains the reason why \(L(T_{h}^{*}(g))\) is called ideal lattice.
Theorem 7.10
- (i)If \(N=\langle g(x) \rangle \) is any principal ideal in R, then$$\sigma (N) =\{\sigma (f)|f \in N\}=L(T_{h}^{*}(\sigma (g(x))))=L(T_{h}^{*}(g)).$$
- (ii)If \(g=(g_0,g_1,\ldots ,g_{n-1})^T \in \mathbb {Z}^n\), \(T_{h}^{*}(g)\subset \mathbb {Z}^n\) is any ideal lattice, thenwhere \(g(x)=g_0+g_1x+\cdots +g_{n-1}x^{n-1}=\sigma ^{-1}(g)\).$$\sigma ^{-1}(T_{h}^{*}(g)) =\{\sigma ^{-1}(b)|b \in T_{h}^{*}(g)\}= \langle g(x) \rangle \subset R,$$
Proof
The above discussion on ideal matrix and ideal lattice can be extended to a finite field \(\mathbb {Z}_{q}\), because any quotient ring \(\mathbb {Z}_{q}[x]/\langle h(x)\rangle \) on polynomial ring \(\mathbb {Z}_{q}[x]\) in finite field is a principal ideal ring. Therefore, we can establish the 1-1 correspondence between all ideals in \(R=\mathbb {Z}_{q}[x]/\langle h(x)\rangle \) and linear codes on \(\mathbb {Z}_{q}\).
Algorithm 2: Hash function based on ideal lattice.
Parameter: q, n, m, d are positive integers, n|m, \(m\log d>n \log q\).
Secret key: \(\frac{m}{n}\) column vectors \(g^{(i)}\in \mathbb {Z}_{q}^{n}(1\le i \le \frac{m}{n})\), polynomial \(h(x)=x^n+a_{n-1}x^{n-1}+\cdots +a_{1}x+a_{0}\in \mathbb {Z}_{q}[x]\).
We will not introduce the anti-collision performance of hash functions constructed by cyclic lattices and ideal lattices here. Interested students can refer to the reference Micciancio and Regev (2009) in this chapter.
- 1.
\(L \subset \mathbb {R}^n\) is a lattice (full rank lattice), if \(L^{*}\) is a dual lattice of L, then the integer lattice \(L=\mathbb {Z}^{n}\) is a self-dual lattice, that is \((\mathbb {Z}^{n})^{*}=\mathbb {Z}^{n}\). Let \(L=2\mathbb {Z}^{n}\), find \(L^{*}=?\)
- 2.
Is it correct that L is a self-dual lattice if and only if \(L=\mathbb {Z}^{n}\)? Why?
- 3.Under the assumption of exercise 1, let \(\lambda _1(L)\) be the shortest vector length of L and \(\lambda _1(L^{*})\) be the shortest vector length of dual lattice \(L^{*}\). Then$$\lambda _1(L) \cdot \lambda _1(L^{*}) \le n.$$
- 4.Let \(\lambda _1(L), \lambda _2(L), \ldots , \lambda _n(L)\) be the length of the Successive Shortest vector of lattice L, prove$$\lambda _1(L) \cdot \lambda _n(L^{*}) \ge 1.$$
- 5*.Let L be a lattice, \(B=[\beta _1, \beta _2, \ldots , \beta _n]\) is the generating matrix of L, \(B^{*}=[\beta _1^{*}, \beta _2^{*}, \ldots , \beta _n^{*}]\) is the corresponding orthogonal matrix. Prove: any lattice L has a set of bases \(\{\beta _1, \beta _2, \ldots , \beta _n\}\), such that(Hint: use KZ basis on lattice L).$$\frac{1}{n}\lambda _1(L) \le \min \{|\beta _1^{*}|, |\beta _2^{*}|, \ldots , |\beta _n^{*}|\}\le \lambda _1(L).$$
- 6.Under the assumption of exercise 5, let \(\lambda _1(L), \lambda _2(L), \ldots , \lambda _n(L)\) be the continuous minimum of lattice L, prove:$$\lambda _j(L) \ge \min _{j \le i \le n}|\beta _i^{*}|, ~1 \le j \le n.$$
- 7.For a full rank lattice \(L \subset \mathbb {R}^n\), define its coverage radius \(\mu (L)\) asProve: the covering radius of any lattice L exists.$$\mu (L)=\max _{x \in \mathbb {R}^n}|x-L|.$$
- 8.
Prove: \(\mu (\mathbb {Z}^{n})=\frac{1}{2}\sqrt{n}.\)
- 9.
For any lattice \(L \subset \mathbb {R}^n\), prove: \(\mu (L) \ge \frac{1}{2}\lambda _n(L)\).
- 10.For any lattice \(L \subset \mathbb {R}^n\), prove the following theorem:$$\lambda _1(L)\cdot \mu (L^{*})\le n.$$
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.