格密码:困难问题(LWE,SIS,SIVP,BDD,GapSVP)

2023-12-25 15:55:41

目录

一. 前言

二. 困难问题之间的关系

2.1 SIS,SVP,SIVP关系

2.2 search-LWE/decision-LWE,GapSVP关系

三. 备注


一. 前言

格密码中有一个原语叫做multilinear map,常应用于code obfuscation,这个领域出现了非常多新设计的困难问题。但这些困难问题有一个致命的弱点,暂时不能实现最坏情况一般情况的安全归约,所以不被一些密码学家承认。但这其实是一个常见的发展路径,早些年全同态依赖的困难问题也是特殊设计的,只是后来不断发展后可归约到标准的LWE/RLWE困难问题。

所以,本文章尝试梳理格密码论文中常用的困难问题之间的关系。具体对问题的解释可以看我之前的博客。

SISshort integer solution短整数解问题
SVPshortest vector problem最短向量问题
SIVPshortest independent vectors problem最短线性独立向量问题
LWElearning with errors容错学习问题
BDDbounded distance decoding problem有限距离解码问题
GapSVPdecisional shortest vector problem判定性最短向量问题

二. 困难问题之间的关系

2.1 SIS,SVP,SIVP关系

给定\beta>0SIS_{q,\beta}可以看成q-ary垂直格\Lambda^\bot(A)上平均情况的近似SVP问题。

有关q-ary格的解释,可以看这篇博客:

格密码基础:q-ary格-CSDN博客

对于这个结论可以从两个角度理解。

角度1:随机选取一个矩阵A\in Z_q^{n\times m},对于任意m=poly(n),找到一个相对短的非零格点z\in \Lambda^\bot(A)

角度2:找到一个m维的整数向量z\in Z^m,使其满足如下:

Az=0\quad mod\ q\quad ||z||\leq \beta

当让模数取得足够大时,也就是q\geq \beta\sqrt n\cdot \omega(\sqrt{logn}),解决SIS_{q,\beta}问题的困难性与最坏情况下的SIVP_{\tilde O(\beta\sqrt n)}类似。

2.2 search-LWE/decision-LWE,GapSVP关系

LWE问题中噪声的分布要求参数\alpha>0(通常为标准差)。先说结论,LWE_{q,\alpha}问题可以看成平均情况下,格\frac{1}{q}\Lambda(A^t)上的BDD问题。之所以有个\frac{1}{q},是因为后续均标准化,也就是模1.

把任意实数模1,形成的一个集合,该集合实际上为加法群

T=\frac{R}{Z}

将实数R上的高斯概率分布记为D_\alpha,其中\alpha为标准差。

固定向量s\in Z_q^{n},均匀且随机取a\leftarrow Z_q^{n},e\leftarrow D_\alpha,接着计算:

(a,b=\langle a,s\rangle/q+e \quad mod\ 1)

由于a在变动,可以形成很多样本,将其记为LWE分布A_{s,\alpha},该分布的样本空间为Z_q^{n}\times T.

定义Search-LWE_{q,\alpha}问题:

A_{s,\alpha}中抽取m=poly(n)个样本,求s。

定义Decision-LWE_{q,\alpha}问题:

可能从A_{s,\alpha}中抽取一些样本,也可能从Z_q^{n}\times T中均匀且随机抽一些样本,判断样本来源。

从数学的角度来看,这两个问题差异很大。但其实密码学中已经有了很多的归约来证明两者的本质很类似。

q\geq 2\sqrt n/\alpha时,Search-LWE_{q,\alpha}在最坏情况下,可归约到SIVP_{\tilde O(n/\alpha)},遗憾的是这个过程需要用到量子归约。

只有当q足够大时,Search-LWE_{q,\alpha}才可归约到GapSVP和BDD问题。

刚才我们是使用样本的角度来进行解释,如果将样本写在一起,就可以形成矩阵,也就是:

A\in Z_q^{n\times m},b\in T^m,e\in R^m

这三者之间的关系,如下:

b=(A^ts)/q+e\quad mod\ 1

这样b就可以是一个向量,与q-ary格上的格点,或者q-ary垂直格的对偶格上的格点相关。简单来讲就是,向量b是如下格的一个格点+一个高斯噪声:

\Lambda^\bot(A)^*=\frac{1}{q}\Lambda(A^t)

实际上应用的时候,噪声e'\in Z^m为离散高斯分布,其标准差可以取\sqrt 2\alpha q

如果你看b中除以q不爽,也可以将其写为:

b'=A^ts+e'\quad mod\ q

三. 备注

以上其实包含很多归约过程,如果有人关注的话,以后再补上吧。

文章来源:https://blog.csdn.net/forest_LL/article/details/135189336
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。