【格密码基础】:详解Ring-SIS问题

目录

[一. 介绍](#一. 介绍)

[二. Ring-SIS问题相关的参数](#二. Ring-SIS问题相关的参数)

[三. Ring-SIS问题定义](#三. Ring-SIS问题定义)

[四. 相比SIS问题的优点](#四. 相比SIS问题的优点)

[五. 与SIS问题之间的关系](#五. 与SIS问题之间的关系)


一. 介绍

在1998年,有关多项式环密码系统NTRU被提出。Ajtai提出了原始的SIS问题。

在2002年,Micciancio发现可以将这两者结合,提出了效率更高的密码学上问题,也就是本文章将要介绍的SIS问题,已经对应的函数

在格密码专栏中,我将陆续更新Ring-SIS问题的定义,它与原始SIS问题的关系,其在最坏情况(worst case)下的困难性分析。而且还包含在环结构下,形成一个新的概念叫理想格(ideal lattice)。

二. Ring-SIS问题相关的参数

通常我们可以把环结构R看成一个次数为n的多项式,完整结构如下:

下面的多项式有f(x)有两者常用的结构。第一个是2002年提出的:

第二个是2008年被提出,其指数是2的幂形式,如下:

这个地方可以直观上把环R看成任意多项式模f(X)运算的结果,这样的话,最终就是一个整数的多项式,其次数小于n

环R内的每个元素,也有模的理解,通常写做:

可以简单将其看成扩展的系数向量对应的模长。在环R上选择一个向量z,那么其模长可理解为:

如果对以上多项式的系数大小进行限制的话,那么可以把每个数都模q,那么可以形成新的环,如下:

那么现在每个环上的元素代表次数小于n,系数从整数环Zq内进行选取的元素。

Ring-SIS问题的关键在于限定结果的模长,那么需要给定一个实数模的上限,如下:

样本的个数通常设定为m

在SIS问题中,同样的几个参数:次数n,模q,长度上限。当然相比SIS问题中的m,Ring-SIS问题只需要少n倍的样本个数即可。

三. Ring-SIS问题定义

带参数的环SIS问题,可简写为如下:

给定m个均匀且随机分布的a,如下:

也可以将其写成向量的格式如下:

在满足如下等式的情况下:

我们的目标是寻找到对应的非零向量z,如下:

注意此处的z为m维向量,向量的每个位置都是一个多项式。

四. 相比SIS问题的优点

Ring-SIS问题的效率性更高一点。解释如下:

在Ring-SIS中,样本a的格式如下:

为了需要保证短解的存在,样本的个数是有要求的:

然而在原始的SIS问题中,需要多n倍的样本,如下:

简单给个解释。从环内任意取一个元素:

该元素就是一个次数小于n的多项式,所以其短的情况个数有:

这些短解将会作为a的系数。

然而在SIS问题中,a的格式如下:

其短解存在的个数会更少一些。

在计算意义上,环结构的效率也要更高一些。在Ring-SIS问题,我们需要计算如下:

利用FFT技术,我们计算的复杂度只需要拟线性(quasi-linear)时间,通常记为:

选择合适的模数q和样本数m,那么计算如下函数也近似拟线性时间:

五. 与SIS问题之间的关系

SIS问题与Ring-SIS问题之间有相似的代数性质。在网络安全领域,一个密码系统两者之间往往可以互相转换。当然这种转换往往需要说清楚其中的安全性证明(security proof)。

在这里我将举一个例子来解释有环结构和无环结构之间的联系。

在Ring-SIS中,我们需要均匀且随机的取一个环元素,如下:

在SIS中这对应着n维的向量,当然向量不同位置元素之间是有联系的,如下:

可以把此处的n看成整数Z上环R的系数(degree)。

那么借助这种理解,环-SIS问题的答案格式如下:

就对应着SIS问题答案中的n个整数。

根据经验主义,原始SIS问题带有一种特殊的结构(instance),就可以形成Ring-SIS.

(1)利用格的观点看环多项式

可以把环R内的元素看成由整数格基产生,那么环R则是n维的,对应关系如下:

类似的,可得:

这种对应关系其实就是抽象代数中的加法群同态(additive group isomorphism)。在这种理解下,短解是可以类推的。

可以把环R的结构看成如下:

那么单项式对应着第(i+1)个基向量e,如下:

那么环-SIS问题中的z格式如下:

对应SIS中的维度也就是nm,如下:

(2)环内乘法

如果从商环中选择一个元素a,如下:

让后将任意其他环元素进行与之相乘,那么就相当于是一种Z-Linear函数运算过程:

R to Rq

将此相乘的过程可以看成乘以一个n维方阵,如下:

看成矩阵相乘的话,那么这个过程对应着映射:

to

比如我们来看一个例子。

给定一个环结构如下:

那么商环Rq内的元素a就对应着循环矩阵,矩阵第一列的元素就是系数向量a。这样子来看的话,我们可以从Ring-SIS中给出一个instance,如下:

每一个ai都对应着一个循环矩阵,那么其在SIS中对应的instance如下:

以上理解的根源来自于抽象代数(abstract algebra),有很多跟群环域相关的理解,有时间的话,在本专栏会陆续补充相关的基础数学在网络安全中的应用。

相关推荐
芯盾时代3 小时前
数字身份发展趋势前瞻:身份韧性与安全
运维·安全·网络安全·密码学·信息与通信
知孤云出岫6 小时前
web 渗透学习指南——初学者防入狱篇
前端·网络安全·渗透·web
mushangqiujin6 小时前
ctfshow web文件上传 web166-170
网络安全
Suckerbin9 小时前
Hms?: 1渗透测试
学习·安全·网络安全
newxtc11 小时前
【国内中间件厂商排名及四大中间件对比分析】
安全·web安全·网络安全·中间件·行为验证·国产中间件
follycat15 小时前
[极客大挑战 2019]HTTP 1
网络·网络协议·http·网络安全
搬砖的小码农_Sky19 小时前
什么是零知识证明?
区块链·密码学·零知识证明
Lionhacker1 天前
网络工程师这个行业可以一直干到退休吗?
网络·数据库·网络安全·黑客·黑客技术
centos081 天前
PWN(栈溢出漏洞)-原创小白超详细[Jarvis-level0]
网络安全·二进制·pwn·ctf
程序员小予1 天前
如何成为一名黑客?小白必学的12个基本步骤
计算机网络·安全·网络安全