目录
格是什么
格是空间的点集,在R^n中选择n个线性文无关的向量,然后选取这些向量的全部整数组合而构成的点集。这些点集将遍布整个空间的所有方向。这样的所形成的点集就叫做格。
如二维空间中 L= {a1v1+a2v2+……anvn} ai为整数
将v1,v2成为L的基。
格是空间的点集,在R^n中选择n个线性文无关的向量,然后选取这些向量的全部整数组合而构成的点集。
即L= {a1v1+a2v2+……anvn} ,用L(B)来表示这个格,矩阵的列就是基向量。所以B= n * n的矩阵。
矩阵的列就是v1,v2,……vn。
换一只种更简单的说,就是使用维度就定义格,这个定义不涉及格的基,点只需要满足一些特定的性质,或者只取整数点满足特定的限制条件,就可以定义格了。
如:所有模5下和为0的整数点。我们可能不立刻知道基是什么,但是知道这是一个离散加法子群。
性质:格的基是不唯一的。
如何使用格来构造密码学方案
绪论:格密码学是抵御量子计算机的攻击备选密码学方案。我们一般使用更高维的格,而不是这种二维的格。格问题困难度的来源:假设在一个高维空间里,我们随机移动一个点,这样我们就难以知道这个点是从哪里移动过来的。
优点:
- 可证明安全:没有安全缺口。在传统中,破解RSA不一定可以破解整数分解,不总是可证明安全
- 安全类型 :最糟糕困难安全性,如果你可以破解密码算法,就可以解决最糟糕情况的困难问题,可对 任一格解决困难问题。一个新的独特思想。传统:平均情况困难安全性。
- 困难问题:基于格的困难问题,在计算机领域,只有三四十年的历史,不能被量子算法解决。
- 计算:简单计算。计算开销很小,只涉及加法就能实现密码学方案。
- 可以实现全同态加密,传统密码学无法实现。