目录
前言
最短的非零向量长度是格密码中的一个基本量(定义前提为非零向量,因为格中总包含零向量,其模长为0),通常使用代量表示。用格的观点来理解:以r为半径的球内的格,只能形成一维的格的延展空间,简单来讲就是这个球内只有一个格点。
铺垫欧几里得范数,又叫范数,给定任意向量x定义为如下:
通过在格密码相关的论文中,一般被简写为||x||。
其实还有范数,定义为如下:
范数定义为如下:
一. 格的最短向量
首先定义圆心为原点,半径为r的m维实心球的式子,如下:
对于秩为n的格,其连续最小值定义为如下:
如下图表示了最小值和次小值的长度:
此定义表明了格的最短向量,次短向量,······的长度。
备注:格的连续最小值还跟维度相关,不能只理解为长度
在分析最短向量下界之前,需要理解格基的正交化(有的时候也叫做Gram-Schmidt正交化)。
二. 格基正交化
2.1 基本理解
给定n个线性独立的向量,把它们转化成n个正交的向量,这个过程就是线性代数中所谓的Gram-Schmidt正交化过程。先来看一个二维向量的例子:
保持向量不变,也就是,将向量投影到向量的正交子空间上,就可以形成。教科书式的表达,我们也可以看一下:
Project each vector on the space orthogonal to the span of the previous vectors.
正交化的过程一般是按照顺序进行的,先,再接着一直往后。给定n个线性独立的向量,Gram-Schmidt正交化的计算公式如下:
注意j的取值代表i前面所有的向量,垂直于的分量即为。
2.2 常用性质
(1)向量的正交性
对任意,都有:
(2)空间维度保持不变
令span()代表向量形成的空间,则可得:
(3)格基改变
注意向量正交化已经把格基改的面目全非,正交化后的格基已经不能形成原来的格点,看上面那张图就很清楚了。也就是向量不一定是格的格基。
(4)正交化的顺序
通过正交化的公式不难看出,正交化的顺序很重要,所以这个过程中应该把格基矩阵看成序列而不是集合。因为序列是受顺序影响的,集合具有无序性。
既然格基的正交化会改变格点,那岂不是很难利用在格密码上?别急,把以上公式改成与标准正交基相关即可。
给定n个线性独立的向量,其中每个向量都属于m维度,我们都知道标准正交基如下:
借助此理论,原始的格基可以表示为如下m行n列的矩阵:
其中就是格基正交化公式中的那个。
如果原始格满秩的话,也就是m=n,格基可以变成一个上三角的方阵。
三. 最短向量长度下界
若B为秩为n的格基,代表对应的Gram-Schmidt正交化结果,那么最短向量长度满足如下不等式:
此处将用两种方法来证明该定理。
与均代表长度,所以肯定都大于0,这个好证明。接下来,我们把重心放在证明上。
证明方法一:
任取为整数非零向量,Bx即代表任意格点,我们只需要证明下列不等式恒成立即可:
取且为下标最大的非零元素。我们把格点和正交化后的格基向量相乘,由此可得如下等式:
简单分析:
- 第一个等号:格点=格基乘以整数组合
- 第二个等号:向量正交的定义
- 第三个等号:向量乘以向量等于向量长度的平方
对于任意的i<j,根据正交矩阵的理解,将正交矩阵的每一列都看成一个向量,都有如下向量相乘的结论:
注意第二个等式,类似投影向量的理解。
根据向量相乘的结论,我们易得:
最终可得:
到此,证明完毕。
证明方法二:
根据线性代数矩阵分解的理解,我们可以把格基矩阵分解成一个标准正交基矩阵和另一个矩阵,令代表标准正交基,也就是向量长度为1,我们可得如下分解(仅考虑满秩格):
从以上可以看出,在任何非零的组合中,最靠下的量最小的正值为。
四. 格点离散
对于任意两个不同格点x,y,总存在,满足。通过定义名称易理解,格是一个离散的集合。
证明:
根据格点的定义,当x和y均为格点时,x-y也必定属于格点,那么现在有两种理解方式:
- x-y整体看成新的格点
- x-y看成两个向量相减,可以代表向量x与向量y之间的间隔
该间隔一定大于0,换句话说格点离散。总结如上分析,也就是:
五. 格的连续最小值
格的连续最小值可以用格内某向量长度表示,对于任意的,必定存在向量,使得。
证明:
依据格的最短向量概念,半径为的n维球内仅包含有限个格点。依据的定义,球内必定包含长度为的向量。
总结
格密码的发展简史如下:
18世纪到1982年,拉格朗日、高斯、闵可夫斯基、埃尔米特等科学家开始研究格点的数学性质。
1982年到1996年进入LLL密码分析与网络安全领域。LLL算法主要用于格基约化,为格密码的科学研究埋下了铺垫。
1996年到2005年第一代格密码开始出现,包含Ajtai96,AD97G, GH97。
2005年到2016年第二代格密码关注于实用化格密码算法,包含Regev0, GPV08, MP12, BLISS, NewHope, Frodo。
2016年至今,格密码开始不断标准化。