加密与解密算法的研究计算机论文.doc

上传人:laozhun 文档编号:3926886 上传时间:2023-03-28 格式:DOC 页数:4 大小:17KB
返回 下载 相关 举报
加密与解密算法的研究计算机论文.doc_第1页
第1页 / 共4页
加密与解密算法的研究计算机论文.doc_第2页
第2页 / 共4页
加密与解密算法的研究计算机论文.doc_第3页
第3页 / 共4页
加密与解密算法的研究计算机论文.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《加密与解密算法的研究计算机论文.doc》由会员分享,可在线阅读,更多相关《加密与解密算法的研究计算机论文.doc(4页珍藏版)》请在三一办公上搜索。

1、加密与解密算法的研究_计算机论文加密与解密算法的研究_计算机论文摘 要:计算机信息的保密问题显得越来越重要,无论是个人信息通信还是电子商务发展,都迫切需要保证Internet网上信息传输的安全,需要保证信息安全。其中,信息安全的核心是密码技术。关键词:信息安全 密码技术 方案论证 应用1对称密码体制对称密码体制是一种传统密码体制,也称为私钥密码体制。在对称加密系统中,加密和解密采用相同的密钥。因为加解密密钥相同,需要通信的双方必须选择和保存他们共同的密钥,各方必须信任对方不会将密钥泄密出去,这样就可以实现数据的机密性和完整性。对于具有n个用户的网络,需要n(n-1)/2个密钥,在用户群不是很大

2、的情况下,对称加密系统是有效的。但是对于大型网络,当用户群很大,分布很广时,密钥的分配和保存就成了问题。2非对称密码体制非对称密码体制也叫公钥加密技术,该技术就是针对私钥密码体制的缺陷被提出来的。在公钥加密系统中,加密和解密是相对独立的,加密和解密会使用两把不同的密钥,加密密钥向公众公开,谁都可以使用,解密密钥只有解密人自己知道,非法使用者根据公开的加密密钥无法推算出解密密钥,故其可称为公钥密码体制。如果一个人选择并公布了他的公钥,另外任何人都可以用这一公钥来加密传送给那个人的消息。私钥是秘密保存的,只有私钥的所有者才能利用私钥对密文进行解密。3目的和意义(1)解决大规模网络应用中密钥的分发和

3、管理问题采用分组密码、序列密码等对称密码体制时,加解密双方所用的密钥都是秘密的,而且需要定期更换,新的密钥总是要通过某种秘密渠道分配给使用方,在传递的过程中,稍有不慎,就容易泄露。公钥密码加密密钥通常是公开的,而解密密钥是秘密的,由用户自己保存,不需要往返交换和传递,大大减少了密钥泄露的危险性。同时,在网络通信中使用对称密码体制时,网络内任何两个用户都需要使用互不相同的密钥,只有这样,才能保证不被第三方窃听,因而N个用户就要使用N(N1)/2个密钥。采用公钥密码体制,N个用户只需要产生N对密钥。由此可见,只有公钥密码才能方便、可靠地解决大规模网络应用中密钥的分发和管理问题。(2)实现网络中的数

4、字签名机制对称密钥技术由于其自身的局限性,无法提供网络中的数字签名。这是因为数字签名是网络中表征人或机构的真实性的重要手段,数字签名的数据需要有惟一性、私有性,而对称密钥技术中的密钥至少需要在交互双方之间共享,因此,不满足惟一性、私有性,无法用做网络中的数字签名。相比之下,公钥密码技术由于存在一对公钥和私钥,私钥可以表征惟一性和私有性,而且经私钥加密的数据只能用与之对应的公钥来验证,其他人无法仿冒,所以,可以用做网络中的数字签名服务。二、方案论证1介绍RSA公钥密码体制RS A是Rivest,Shamir,Adleman提出基于数论的非对称密钥体制。RSA是建立在大整数分解的困难上的,是一种分

5、组密码体制。RSA建立方法如下:首先随机选两个大素数p,q , 计算n=p • q;计算欧拉函数 (n)=(p-1)(q-1);任选一个整数e为公开加密密钥,由e求出秘密解密密钥加密/解密:将明文分成长度小于 位的明文块m,加密过程是:c = E(m,e) = mod n解密过程是:m = D(c,d) = mod n2RSA公钥密码体制的安全性分析RSA的安全性依赖于大整数的因式分解问题。实际上,人们推测RSA的安全性依赖于大整数的因式分解问题,但谁也没有在数学上证明从c和e计算m需要对n 进行因式分解。可以想象可能会有完全不同的方式去分析RSA。然而,如果这种方法能让密码解析员推

6、导出d,则它也可以用作大整数因式分解的新方法。最难以令人置信的是,有些RSA变体已经被证明与因式分解同样困难。甚至从RSA加密的密文中恢复出某些特定的位也与解密整个消息同样困难。3设计RSA系统的注意事项(1)经过对RSA安全性的分析,可以得出使用RSA时应该注意的事项:随机选择足够大素数;在使用RSA的通信网络协议中,不应该使用公共模;不要让攻击者得到原始的解密结果;解密密钥d相对模数n来说不应过小;应该或者加密密钥大;或者被加密的信息m总是大而且m不能是一些已知值的乘积,后面一种情况可以在加密前对m填充随机值实现。相关的消息不能用同样的密钥加密,加密前对消息进行随机值填充破坏消息之间的代数

7、联系及相关性,但是要注意填充算法的选择;应该使获得对任意值的原始签名不可能。被签名的消息应该与模数差不多大,而且不是一些已知值的乘积;(2)RSA系统的参数选择RSA系统是第一个将安全性植基于因子分解的系统。很明显地,在公开密钥(e,N)中,若N能被因子分解,则在模N中所有元素价的最小公倍数(即所谓陷门)T=(N)=(p-1)(q-1)即无从隐藏。使得解密密钥d不再是秘密,进而整个RSA系统即不安全。虽然迄今人们尚无法“证明”,破解RSA系统等于因子分解。但一般“相信”RSA系统的安全性,等价于因子分解。即:若能分解因子N,即攻破RSA系统;若能攻破RSA系统,即分解因子N(相信,但未证明)。

8、因此,在使用RSA系统时,对于公开密钥N的选择非常重要。必须使得公开N后,任何人无法从N得到T。此外,对于公开密钥e与解密密钥d,亦需有所限制。否则在使用上可能会导致RSA系统被攻破,或应用在密码协议上不安全。 4RSA公钥密码体制的应用(1)数字签名长期以来的日常生活中,对于重要的文件,为了防止对文件的否认,伪造,篡改等等的破坏,传统的方法是在文件上手写签名。但是在计算机系统中无法使用手写签名,而代之对应的数字签名机制。数字签名应该能实现手写签名的作用,其本质特征就是仅能利用签名者的私有信息产生签名。因此,当它被验证时,它也能被信任的第三方(如法官)在任一时刻证明只有私有信息的唯一掌握者才能

9、产生此签名。其特点:签名是可信的,签名是不能伪造的,签名是不可重用的,签名后的文件是不能更改的,签名是不能否认的。三、过程论述1RSA算法工作原理首先,找出三个数,p,q,r,其中p,q是两个相异的质数,r是与(p-1)(q-1)互质的数.p,q,r这三个数便是privatekey 接著,找出m,使得rm=1mod(p-1)(q-1).这个m一定存在,因为r与(p-1)(q-1)互质,用辗转相除法就可以得到了.再来,计算n=pq.m,n这两个数便是public key编码过程是,若资料为a,将其看成是一个大整数,假设a=n的话,就将a表成s进位(s=n,通常取s=2t),则每一位数均小于n,然

10、后分段编码.接下来,计算b=ammodn,(0=b若p,q是相异质数,rm=1 mod (p-1)(q-1),a是任意一个正整数,b=am mod pq, c=br mod pq, 则c=amod pq 证明的过程, 会用到费马小定理, 叙述如下:m是任一质数,n是任一整数,则nm=nmodm证明>因为rm=1 mod(p-1)(q-1),所以rm=k(p-1)(q-1)+1,其中k是整数因为在modulo中是preserve乘法的(x=ymodz and u=vmodz=>xu=yv modz),所以c=br=(am)r=a(rm)=a(k(p-1)(q-1)+1)modpq(1)如

11、果a不是p的倍数,也不是q的倍数时:则a(p-1)=1modp(费马小定理)=>a(k(p-1)(q-1)=1 modp a(q-1) =1 mod q(费马小定理)=>a(k(p-1)(q-1)=1 modq所以p,q均能整除a(k(p-1)(q-1即a(k(p-1)(q-1)=1modpq即a(k(p-1)(q-1)=1 mod pq=>c=a(k(p-1)(q-1)+1)=a mod pq(2)如果a是p的倍数,但不是q的倍数时:则a(q-1)=1 mod q(费马小定理)=>a(k(p-1)(q-1)=1 modq=>c=a(k(p-1)(q-1)+1)=a mod q=>q|c-a因p|a=>c=a(k(p-1)(q-1)+1)=0 modp=>p|c-a所以,pq|c-a=>c=amod pq(3)如果a是q的倍数,但不是p的倍数时,证明同上(4)如果a同时是p和q的倍数时:则pq|a =>c=a(k(p-1)(q-1)+1)=0mod pq=>pq|c-a=>c=a mod pq这个定理说明a经过编码为b再经过解码为c时,a =c mod n(n =pq)但我们在做编码解码时,限制0=a

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号