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

目录

一. 前言

二. 困难问题之间的关系

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)}类似,其中{\tilde O(\beta\sqrt n)}为近似因子。

此结论来源于以下四篇论文:

[Ajt96] M. Ajtai. Generating hard instances of lattice problems. Quaderni di Matematica, 13:1–32, 2004.Preliminary version in STOC 1996

[MG02] D. Micciancio and S. Goldwasser. Complexity of Lattice Problems: a cryptographic perspective,volume 671 of The Kluwer International Series in Engineering and Computer Science. Kluwer Academic Publishers, Boston, Massachusetts, 2002.

[MR04] D. Micciancio and O. Regev. Worst-case to average-case reductions based on Gaussian measures. SIAM J. Comput., 37(1):267–302, 2007. Preliminary version in FOCS 2004.

[GPV08] C. Gentry, C. Peikert, and V. Vaikuntanathan. Trapdoors for hard lattices and new cryptographic constructions. In STOC, pages 197–206. 2008.

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

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

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

T=\frac{R}{Z}

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

备注:格密码中的高斯分布标准差与数学中高斯分布标准差,相差\sqrt{2\pi}

固定向量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)},遗憾的是这个过程需要用到量子归约。

LWE量子归约到SIVP问题,可以看这篇论文:

只有当q足够大时,Search-LWE_{q,\alpha}才可归约到GapSVP和BDD问题。一般我们会认为GapSVP和BDD比SIVP问题要简单一点点。

LWE经典归约到GapSVP问题,可以这篇论文:

LWE经典归约到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

三. 备注

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

  • 28
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

唠嗑!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值