ImageVerifierCode 换一换
格式:DOC , 页数:23 ,大小:1.10MB ,
资源ID:142133      下载积分:15 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/142133.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(NTRU的原理及安全性现状分析.doc)为本站会员(b****9)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

NTRU的原理及安全性现状分析.doc

1、NTRU的原理及安全性现状分析 【摘要】NTRU一种比较新的公开密钥体制,由于NTRU产生的密钥方法比较容易,加密、解密的速度比RSA等著名算法快得多,NTRU成为当前公钥体制研究的一个热点。本文介绍了NTRU的原理,总结了对该算法密码分析的结果,给相关的理论研究及工程应用提供一些参考。 【关键词】NTRU;加密;解密1 引言1.1 NTRU的研究背景和意义 NTRU(Number Theory Research Unit)算法是1996年由美国布朗大学三位数学教授发明的公开秘密体制 。这是一个基于多项式环(其中N是一个安全参数)的密码体制。它的安全性依赖于格中最短向量问题(SVP)。相对于离

2、散对数或大数分解等公开秘密体制来说,它有许多优势。在安全性方面,NTRU算法具有抵抗量子计算攻击的能力,而RSA和ECC算法是无法抵抗量子计算的。当前,对于用什么公钥密码来替代正在大量使用的RSA和ECC,主要有以下互相竞争的技术解决方案:NTRU公钥密码体制、McEliece 公钥密码体制、MQ 公钥密码体制。McEliece 公钥密码体制的安全性基于纠错码问题,安全性强,但计算效率低。MQ 公钥密码体制,即多变元二次多项式公钥密码体制(Multivariate Quadratic Polynomials in Public KeyCryptosystem),基于有限域上的多变元二次多项式方

3、程组的难解性,在安全性方面的缺点比较明显。相比之下,NTRU公钥加密体制算法简洁、计算速度快、占用存贮空间小。1.2 国内外研究现状 随着信息技术的迅猛发展和一些高技术武器设备、通信指挥系统等的需要,未来军事部门将大量地使用公钥密码技术。由于RSA 和ECC 不能抗量子计算攻击,而NTRU 能抗量子计算攻击,且速度快和安全性高,特别别适合用于诸如智能卡,保密蜂窝电话系统,保密传真、无线保密数据网,以及认证系统等业务,这也扩大了公钥密钥体制的应用范围。有理由相信NTRU 算法完全有可能在公钥密钥体制中占有主导地位。 自从该密码体制被提出来后,就引起国外一流的密码学家的关注,这包括Don Copp

4、ersmith Johan Hastad, Andres Odlyzko,and Adi Shamir 等。到目前为止,有很多讨论NTRU 算法安全性。但还没有哪一种分析方法能破译该密码体制。从现阶段研究来看,NTRU 所基于的困难问题是安全的。接下来的研究主要集中在体制的参数设置和适当的使用填充方案。 在2000 年,Jaulmes 和Joux 论证了仔细的选择填充方案可以防止选择密文攻击,Howgrave-Graham 等的研究结果显示了仔细的选择参数集可以使得解密失败概率降为几乎为0,一旦正确的参数的选择和适当填充方案的使用,任何对NTRU 的攻击都可以转发为对困难格问题的求解。为了充分

5、利用在学术界和商界的专家的经验和知识,提供一个完善的、有效的、能共同操作的,正确使用NTRU 公钥密码系统的方法,在2002 年10 月出版了一个标准EESS1v1:NTRU 加密和签名的实施,2003 年5 月对第一版进行完善和修改出台二版:EESS1v2。1.3 本文安排本文将在第2节中介绍NTRU的数学背景格的知识,然后就是LLL算法、BKZ算法和NTRU算法的数学基础;在第3节中,介绍NTRU公钥加密体制,第4节介绍一些对NTRU算法的攻击方法,进而对算法的安全性进行分析;最后在第5节进行了小结。2 数学背景2.1 格问题(lattice problem)2.1.1格的定义这里的格是指

6、点格。它是的一个离散子群。特别地,对于的任意加法子群都构成一个格,这样的格称为整格(integer lattice)。格的具体定义如下:定义1设为中一组线性无关向量,取集合为的整线性组合,即这样的集合称为格,其中称为格的一组基或简称格基。的每一组基所含向量的个数相同,基中所含向量个数称之为格的维数或秩,记为,它与所张成的线性子空间的维数相同。当时,格中有无数组基。任意两组基之间都可以通过一个幺模矩阵(行列式为的整数矩阵)进行相互转化。因此格中所有的基都有相同的Gram行列式,其中表示两个向量的内积。格的体积定义为格基的Gram行列式的平方根。当,也就是为满维格时,它的体积等于以任何一组基为行向

7、量的矩阵的行列式的绝对值。中向量的欧氏范数和中心化欧氏范数定义为:若,则的欧氏范数为,而的中心化欧氏范数定义为,其中 本节以下部分如无特别说明均指中心化欧氏范数。由于格是离散的,所以格中必有最短非零向量,这个向量的欧式范数称为格的第一最小,记为或。更一般的,对于所有的,Minkowski的次最小定义为其中最小值取自中个线性无关向量构成的向量组的集合。, 称为的逐次最小。总存在一组线性无关向量达到所有的逐次最小,即对所有的,。但是当时,这样的一组向量不一定是一组格基;当时,甚至可能不存在这样一组格基。利用高斯启发式算法(Gaussian heuristic),随机维格的最短向量长度约为。2.1.

8、2格中的困难问题关于格有三个著名的NP问题。以下代表一个格,为格的维数,为一范数。最短向量问题(SVP):给定格的一组基,寻找格中一非零向量,使得。近似最短向量问题(APPR-SVP):给定格的一组基,寻找一非零向量,使得,其中是与维数有关的某个近似因子。最近向量问题(CVP),也称为最近格点问题:给定格的一组基和向量,不一定在中,寻找一向量,使得都有。类似地,近似最近向量问题定义为:给定格的一组基和向量,不一定在中,寻找一向量,使得都有。最小基问题(SBP):这个问题目前研究的人并不多,本文也未曾涉及,这里就不作介绍了。2.1.3格约化(lattice reduction)在格中总有线性无关

9、向量组可以达到所有的逐次最小值,但一般来说,这样一组线性无关向量并不构成格的一组基;格中也没有一组基比其它基“明显好”。格约化的目的是利用已有的一组基找另一组“更好”的基,这组基满足: 该基中的向量比原有的基中的向量更短,或者该基中有向量的范数。该基中的向量两两正交或者相对正交(即该基中任意两个向量的内积与它们的长度之积的比率特别小,接近于零)。一组约化的基可以帮助解决SVP和CVP。目前最有名的格基约化算法为A. K. Lenstra、H. W. Lenstra Jr和L. Lovsz提出的LLL算法。2.1.4多项式环及NTRU格NTRU加密体制及NTRUSign数字签名体制都是基于商环上

10、运算的算法。环中的乘法运算定义为卷积 “”(convolution multiplication):设,定义,其中的的系数为,。称是模的是指及中的所有单项式系数均为模q的,即将及视作的元素。中的元素也可以用向量形式来表示,即可表示为。因此类似可定义中元素的欧式范数和中心化欧氏范数。中的元素还可以用循环矩阵来表示:即可表示为类似地有。很显然地,映射为一同构映射,即,其中为普通的矩阵乘法。对应于环中的任一元素,有的一自然格,即由的行向量生成的格。对于每个,集合是一个维数为2N的格。这种形式的格称为NTRU格。显然,它有一组基为。作为格,其体积为,因此中最短向量长度约为。中元素的欧氏范数定义为分量形

11、式的欧式范数,即。定义两个符号:对于任意,令表示最接近的整数,记。若多项式是有理系数的,用和分别表示对其系数进行、运算所得的多项式。2.2 LLL算法2.2.1LLL规约基的定义及有关定理定义2令是格L上一组基,是由格朗姆施密特正交化过程定义的。记,且 。 我们称向量组为LLL规约(关于)的,如果他们满足一下两个条件: 引理1是格L上的一组基,是格中的最短向量,则。证明:设是非零向量,是使得最大的坐标。则 因为是整数,所以 即 定理1如果是一组关于的LLL规约基,则至多比格中的最短非零向量长倍,。证明:若则, 同理 由定义可知 对进行递推,可得 由引理可证得 证毕2.2.2 LLL算法 LLL

12、算法是一个将一个基转化为LLL约减基的迭代算法。因为LLL约减基的定义使用了施密特正交向量组,所以这个算法将施密特正交法作为一个子程序。第一种情况可以通过适当的整数线性组合来满足。第二种情况不满足,则比短,这时交换和,并由原路返回。具体算法如下:输入: 输出:LLL规约基 1:计算施密特正交基和系数, 2:计算3: 4:while do5: for downto 1do6: Let=and set 7: update , 8: end for9: if then10: 11: else12; Samp with 13; update and, ,and 14: 15: end if16:end

13、 while2.3 BKZ算法 LLL算法的一般化是由Schnorr提出来的,他的想法是约减维数为的基,而不是维数为2的基。约减这些子格的基是受Korkin-Zolotarev的启发。定义3是格L的一组基,是KZ规约基,如果(1)(2),其中是指中最小非零向量的长度。定义4是格L的一组基,是分组长度为k的分组KZ规约基,或k-BKZ规约基,如果(1)(2) 是KZ-规约的,在这个定义下,格的一组维的基是LLL规约基当且仅当是2-BKZ规约基,是KZ规约基当且仅当是n-BKZ规约基。下面我们简单描述一个关于在k-BKZ规约基中最长向量的长度的定理。定理2如果是k-BKZ规约基,至多是格中最短向量

14、的倍,当。计算k-BKZ规约基的算法与LLL算法相似,算法如下:输入:格L的一组基,一个整数输出:格L的一组k-BKZ规约基1:约减的大小2:if 存在使得不是KZ规约的then3: KZ规约4: goto 15:return 2.4 NTRU算法的数学基础 NTRU 是一种基于多项式环的加密系统,其加、解密过程基于环上多项式代数运算和对数及的模约化运算,解密的有效性依赖于某些元素的概率。它是由正整数以及4个次整系数多项式集合来建构的。一般为一大质数,为多项式截断环(Truncated rolynomial rings),其元素可表示为向量的形式:。定义5 上多项式元素加运算为普通多项式之间的加运算,用符号+表示;上多项式元素乘法运算为普通多项式的乘法运算,但乘完的结果要模上多项式(XN-1),即2个多项式的卷积运算,常称为卷积,用表示。多项式元素模q运算就是把多项式的系数作处理,用表示。可以证明是一个环。和在NTRU 中一般作为模数,不一定为质数,但是为了安全,要求和必须互质,且远大于。和为正整数,分别决定了多项式集合的系数分布。令=:的个系数为1,个系数为-l,余下的系数为0,则多项式集合:,为明文空间。由于4个集合的元素系数一般都比较小,常称为小多项式

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1