公钥密码体制的现状与发展:从背包算法到量子密码的全面解析
2025-03-27 22:04:38发布 浏览34次 信息编号:109748
友情提醒:凡是以各种理由向你收取费用,均有骗子嫌疑,请提高警惕,不要轻易支付。
公钥密码体制的现状与发展:从背包算法到量子密码的全面解析
成员共享“公共密钥加密系统”,可以在线阅读。有关“公共密钥密码系统.doc(7页的收藏版)”的更多信息,请在线搜索第一堂课的信息。
1。数学文化课程报告论文标题:公共密钥密码系统的当前状况以及公共密钥密码系统的开发摘要:文章介绍了公共密钥加密系统的当前状况和开发,该系统重点侧重于讨论几个更重要的公共密钥密钥系统背包算法,RSA,RSA,RSA,ECC,ECC, ,Ntru 和 和 和。关键字:公共密钥密码系统;离散对数问题;基于网格的还原;量子密码学于1949年,一篇名为“ Of”的论文发表在贝尔,这是现代密码学的理论基础。本文将密码学研究纳入了科学轨道,但由于某些因素的影响,该论文是
2。它并没有引起人们的广泛关注。直到1970年代,人类社会才进入信息时代,它引起了广泛的关注,在此期间,现代密码的两项具有里程碑意义的成就。一个是美国国家标准局公开收集的美国数据加密标准,并于1977年正式宣布并实施;另一个是Yuhe,它首先在本文中提出了公共密钥密码系统,突破了已经使用了很长时间的私钥系统。由于提出了公共密钥加密系统,因此出现了许多公共密钥密码解决方案,例如RSA,密码系统,背包算法,ECC,XTR和NTRU。公共密钥加密系统的发现是密码发展史上的一场革命。从古老的手动密码到机电密码再到使用计算机的现代对称密码,这些
3。尽管代码系统变得越来越复杂,但它基于基本的替换和排列工具。公共密钥加密系统的编码系统基于数学中的单向陷阱门功能。更重要的是,公共密钥密码系统采用了两个不同的密钥,这对公共网络上的机密通信,密钥分配,数字签名和身份验证产生了深远的影响。该文章分为5个部分:第1部分首先介绍了背包算法,第2、3、4、5、5部分分别讨论了RSA,ECC,量子密码学和NTUR,同时也是公共密钥密码系统的前景。 1。1978年的背包算法,Ralph和算法提出的是公共密钥密码系统用于加密的第一种算法。它只能首先用于加密,但后来又可以通过ADI S
4. Hamtr的改进使其对于数字签名也有用。它的安全性基于背包拼图,这是一个完整的NP问题,这意味着没有多项式时间算法来解决此问题。尽管后来被证明该算法是不安全的,但由于它证明了如何将NP完整的问题应用于公共密钥密码系统,因此其设计思想和突破性的方法为人们提供了很多灵感来了解公共密钥密码系统,我们在这里提到了这一算法。背包问题(或子集和问题)非常简单。给定一堆物品,每个物品的称重不同,这些物品中的几个可以放在背包中以等于给定的重量吗?给定公式描述:给定一系列值m1,m2,mn和一个和总和s,计算出的值是满足它的可能性,这意味着该项目不在背包中,表示总和既是正整数。如果每个项目都大于之前,则一个正整数序列
5。如果有术语总和,则该序列称为高含量序列。例如,1、3、6、13、27、52是一个超灌注序列,而1、3、4、9、15、25不是超级序列。如果背包问题的重量序列是一个超核心序列,则称其为易于解决。超注册背包问题可以在时间O(n)内轻松解决,如果有解决方案,则该解决方案必须是唯一的。实际上,有两种不同类型的背包问题。一种类型可以在线性时间求解,即易于求解的背包,而另一种类型只能在指数时间内解决。背包系统的想法是选择一个易于解决的背包问题,然后将其伪装成一个非常困难的一般背包问题。然后,原始背包集可以被视为私钥,并且转换后的背包集用作公钥。背包算法的想法是将消息编码为背包问题的解决方案。纯文本分组的长度等于堆中的项目数量,纯文本位是
6。与该值相对应,密文是计算值。背包算法的公共密钥是具有相同解决方案的普通背包问题的重量顺序,而私钥是一个超插入背包问题的权重序列。并应用模块化转换以将高含量背包转换为一个被困的背包,而没有辅助信息就难以解决。有关背包算法,请参考文献。 2。它是美国马萨诸塞州理工学院于1978年提出的最著名且广泛使用的公钥系统RSA。它是基于数字理论和分组加密系统的不对称加密系统。 RSA算法是可用于数据加密和数字签名的第一个算法。它易于理解和操作,并且非常受欢迎。它的名字是
7。命名三个发明者的第一个字母。 RSA的安全性是基于考虑大整数素数的困难,并且考虑大整数的问题是数学上的著名问题。没有有效的方法可以解决它,因此可以确保RSA算法的安全性。 RSA系统是公共密钥系统的最典型方法。大多数使用公共密钥密码学用于加密和数字签名的产品和标准都使用RSA算法。 RSA算法是可用于加密和数字签名的第一种算法,并且也易于理解和操作。 RSA是研究最广泛的公钥算法。自引入以来已经有20多年了。它已经通过各种攻击进行了测试,并已逐渐被人们接受。通常,它是目前最好的公共密钥解决方案之一。 RSA的安全性取决于大数的因子分解,但理论上并没有证明解密RSA的困难等同于大量分解的难度,即主要缺陷不是。
8。从理论上讲,该方法掌握了其机密性能,而密码学界的大多数人往往是分解不是NP问题。 RSA的主要缺点是:(1)生成钥匙并受到质数生成技术的限制是很麻烦的,因此很难一次获得一个密码。 (2)数据包的长度太大。为了确保安全性,至少需要上述安全性,这使得操作成本很高,尤其是慢速速度,这比对称的加密算法慢了几个数量级。随着大数字分解技术的发展,此长度仍在增加,这不利于数据格式的标准化。 3。ECC椭圆曲线在代数和几何学中具有超过150年的研究史,并且具有复杂的数学背景,涉及数字理论,群体理论和投射几何形状等学科。 1985年,N。和V.提出了椭圆曲线密码系统(CUR
9。VE,ECC),其安全性取决于在椭圆曲线组上解决离散对数问题(ECDLP)的困难,也就是说,众所周知,在椭圆曲线上计算p和kp之间的k的难度却没有像RSA这样的密码系统在此时所吸引的高度关注。但是从现在开始,ECC是已知的公共密钥加密系统中每个位提供最高加密强度的系统。它具有高安全性,计算量较小,存储空间使用量和低带宽要求的特征。这些优势使椭圆曲线公共密钥密码系统适用于越来越多的字段。如果存储空间很小,这对于在IC卡上应用加密算法特别重要。低带宽要求使ECC在无线网络领域具有广泛的应用前景。 1999年ANSI X9.62标准的发布已成为ECC标准化的重要组成部分
10.地标在同一年,美国政府国家标准和技术委员会(NIST)发布了一项新法规,以确定ECC的状况。颁布的ECC标准包括:ANSI X9.62,ANSI X9.63ISO/-3,IETF,ATM论坛等。这些标准的宣布将改善全球ECC技术的通用性,并使ECC技术广泛应用全球实现。 SET()协议制造商将其用作下一代集合协议中的默认公共密钥加密算法。目前,解决椭圆曲线的离散对数问题(ECDLP)的算法主要包括小步骤 - 大步骤,Polla
11。RD方法, - 算法和减少攻击等。4。1970年的量子加密,美国科学家首先在密码研究中使用了量子物理学。他提出,单个量子状态可用于创建未固定的“电子钞票”。但是,该想法的实现需要长时间存储单个量子状态,这是不现实的。 1984年,贝内特()和布拉萨德()提出了第一个量子加密方案,称为BB84方案。 1992年,贝内特()提出了一种简单但减半的解决方案,即B92解决方案。目前,在量子密码实验研究中取得最快进展的国家是英国,瑞士和美国。 1993年,基于BB84溶液的相编码量子键分布首先在光纤中实现。纤维传输长度为10公里。这项研究后来被转移到英国通信实验室进行进行,并于1995年转移
12。在2018年通过各种改进,在长30公里长的光纤传输中成功实现了量子密钥分布。与极化编程相比,相编码的好处是,光的极化状态要求并不是那么严格。在长距离光纤传输过程中,光的极化将恶化,导致位错误率提高。然而,在1993年,瑞士日内瓦大学基于BB84方案,在1.1公里长的光纤中传输,波长为13m,而位错误率仅为0.54%。 1995年,它在日内瓦湖底部铺设的23公里的平民光学通信电缆中进行了现场表现,但位错误率为3.4%。 1997年,他们使用法拉第镜子来消除影响因素等影响因素,例如光纤中的双折射,从而大大提高了系统使用的稳定性和便利性。它们被称为“插件”量子加密方案。洛斯阿拉莫斯国家实验室在光纤中创建当前量子密度
13。代码通信距离的新记录。他们使用了类似于英国的实验设备,并通过使用B92方案成功地通过高级电子方式将地下光学电缆传输了量子键,并且它们也成功地在自由空间中获得了成功。 1999年,瑞典和日本合作成功地进行了40公里的量子加密通信实验。目前,瑞士日内瓦大学在光纤通信距离上创造了67公里的新记录。在中国,密码学的研究才刚刚开始。 1995年,在中国使用BB84方案和B92方案进行了示范实验,这些方案是在相对较短的自由空间中进行的。在2000年,单式光纤以850 nm的单模纤维完成了量子加密通信的演示实验。总的来说,与外国相比,我国仍然存在很大的差距。到目前为止,量子加密实施解决方案有三种主要类型
14。:首先,它基于单光子量子通道中不准确的原则;其次,它基于与量子相关的通道中钟的原理。第三,它基于两个非正交量子状态的特性。但是需要研究许多问题。例如,找到相应的量子效应,以提出更多的量子关键分配方案,量子加密算法的开发,实用的量子加密图等。通常,量子密码学理论和技术仍处于实验和勘探中间,以及密码学学者仍需要进行连续研究。 5。(单元)该算法是一种新的公共密钥密码系统。它是由三位美国数学家Jill和H.Sil-在1996年的美国密码学会举行的
15。提议。由于该算法仅使用简单的模量乘法和模量反转操作,因此它具有简单的密钥生成,快速添加和解密速度以及需求低的特征。它的发明是计算机密码学的一项重大成就。经过将近十年的快速发展和改进,该算法在密码学领域受到了极大的关注。 NTRU已被接受为IEEE P1363标准,并在密钥中的Stan Dards文档组中进行了标准化。 NTRU算法的安全性基于多项式的相互作用,不同的模式混合操作的相互作用以及从非常大的维格网格中找到最短矢量的困难。解决此问题的最佳算法是LLL( - )
16.算法,LLL算法的基本思想是选择一个简短的向量组,然后对其进行修改以使它们成为较短的向量组。重复此过程,可以找到一些简短的向量。 5.1用于标记和参数选择的NTRU加密系统需要三个整数参数(N,P,Q)和带有N-1 N-1的四组整体系数多项式。这里n是一个素数。 P,Q不必是质数,但这是安全的。 GCD(p,q)= 1是需要的,Q比p要大得多。 NTRU在多项式整数环R = ZX/(X n-1)上工作。当FR,F可以表示为多态性或矢量形式时:多项式环之间的添加操作 +与普通多项式的相同。多项式环之间的乘法是首先执行通常的乘法,然后在乘积变为1之后的Xn,xn+变为x,xn+变为x,x,xn+变为x
17、2,。 F=F0,F1,FN-1R, G=G0,G1,GN-1R, then, F*G=H=H0,H1,HN-1, where L(d1,d2)=FR:F has d1 that are 1, d2 that are -1, and the rest are 0. We three sets of df,dg,d lf = l(df,df-1),lg = l(dg,dg),l = l(d,d)和lm = mr:m位于间隔 - (p-1)/2,(p-1)/2的间隔中,其中p是素数。下表是基于不同安全级别的NTRU算法的推荐参数。 5.2密钥一代BOB随机选择两个多项式F和G,FLF,GLG,并且需要F围绕 P和 Q的逆FP和FQ存在。在这里,我们可以使用扩展的欧几里得算法来计算
18。P和FQ。为此,F首先应满足GCD(F(1),PQ)= 1。如果存在不存在的逆,则需要重新定义f,然后BOB计算,则公共密钥为h,私钥为f。但是,实际上,鲍勃还将存储FP,因此通常认为私钥是(F,FP)。 5.3加密假设Alice希望将信息ML发送给Bob,她将根据参数D随机选择L,然后她使用Bob的公钥H来计算:Alice将将 E发送给Bob。 5.4解密BOB接收密文E时,他首先使用私钥F计算:选择要位于-Q/2,Q/2之间的系数A,然后计算,然后进行多项式C为透明m。 NTRU系统中的两个操作:“+”和“*”,基于环上的操作,而RSA系统基于大整数分解的困难和离散对数难度
19。ECC系统是集体操作。通常,基于环的问题比基于组的问题要困难得多。目前,NTRU的安全性位于RSA和ECC之间。 NTRU算法的设计非常巧妙。整个算法仅包括小整数的添加和模量操作。在相同的安全级别的前提下,NTRU算法的速度比其他公共密钥密码系统的速度快得多。 NTRU加密和解密一个长度n的信息块需要O(n2)操作,并且RSA需要O(N3)操作,因此NTRU的速度比RSA快100倍。 NTRU算法也很快生成键,其密钥生成速度比RSA快300倍。但是,NTRU也有缺点,解密可能会失败。 NTRU公共密钥加密系统没有提供完整的解密机制,这意味着使用公共密钥加密生成了合法的密文。
20。这一现象不能被私钥解密。攻击者可以使用此攻击。攻击者将使用DC判断程序来确定是否正确解密了合法的密文,并通过系统提供的相关信息恢复用户的私钥。但是,通过仔细选择系统参数,解密失败的可能性可能小于510-5。结论本文介绍了在VB 6.0中编写的应用程序中的软件注册的详细实现过程。它主要使用API函数获取硬盘卷序列号,加密序列号并生成注册代码,然后将其提供给用户以完成软件注册功能。此处提供了详细的实施步骤。在实际应用中,软件开发人员可以根据不同的加密算法生成不同的软件注册代码,以实现对应用程序软件的有效保护。以上程序在 XP,VB 6.0环境中运行。参考:1个软件工程师参考手册写作小组。 API功能参考手册M.北京:人们的帖子和电信出版社,2005.2 Chen ,翻译。基本Win32 API编程M.北京:中国电力出版社,2001.3 Wang 。基本6.0应用程序编程150示例M.北京:电子行业出版社,2004.4。软件报告2005综合书J. :电子科学技术大学出版社,2005年。
提醒:请联系我时一定说明是从奢侈品修复培训上看到的!