
试析加密和解密算法的探究-计算机应用论文计算机应用论文.doc
5页试析加密和解密算法的探究-计算机应用论文_计算机应用论文摘 要摘要:计算机信息的保密新题目显得越来越重要,无论是个人信息通讯还是电子商务发展,都迫切需要保证Internet网上信息传输的平安,需要保证信息平安其中,信息平安的核心是密码技术摘要:信息平安 密码技术 方案论证 应用1.对称密码体制对称密码体制是一种传统密码体制,也称为私钥密码体制在对称加密系统中,加密和解密采用相同的密钥由于加解密密钥相同,需要通讯的双方必须选择和保存他们共同的密钥,各方必须信任对方不会将密钥泄密出往,这样就可以实现数据的机密性和完整性对于具有n个用户的网络,需要n(n-1)/2个密钥,在用户群不是很大的情况下,对称加密系统是有效的但是对于大型网络,当用户群很大,分布很广时,密钥的分配和保存就成了新题目2.非对称密码体制非对称密码体制也叫公钥加密技术,该技术就是针对私钥密码体制的缺陷被提出来的在公钥加密系统中,加密和解密是相对独立的,加密和解密会使用两把不同的密钥,加密密钥向公众公然,谁都可以使用,解密密钥只有解密人自己知道,非法使用者根据公然的加密密钥无法推算出解密密钥,故其可称为公钥密码体制假如一个人选择并公布了他的公钥,另外任何人都可以用这一公钥来加密传送给那个人的消息。
私钥是秘密保存的,只有私钥的所有者才能利用私钥对密文进行解密3.目的和意义(1)解决大规模网络应用中密钥的分发和治理新题目采用分组密码、序列密码等对称密码体制时,加解密双方所用的密钥都是秘密的,而且需要定期更换,新的密钥总是要通过某种秘密渠道分配给使用方,在传递的过程中,稍有不慎,就轻易泄露公钥密码加密密钥通常是公然的,而解密密钥是秘密的,由用户自己保存,不需要往返交换和传递,大大减少了密钥泄露的危险性同时,在网络通讯中使用对称密码体制时,网络内任何两个用户都需要使用互不相同的密钥,只有这样,才能保证不被第三方***,因而N个用户就要使用N(N–1)/2个密钥采用公钥密码体制,N个用户只需要产生N对密钥由此可见,只有公钥密码才能方便、可靠地解决大规模网络应用中密钥的分发和治理新题目2)实现网络中的数字签名机制对称密钥技术由于其自身的局限性,无法提供网络中的数字签名这是由于数字签名是网络中表征人或机构的真实性的重要手段,数字签名的数据需要有惟一性、私有性,而对称密钥技术中的密钥至少需要在交互双方之间共享,因此,不满足惟一性、私有性,无法用做网络中的数字签名相比之下,公钥密码技术由于存在一对公钥和私钥,私钥可以表征惟一性和私有性,而且经私钥加密的数据只能用和之对应的公钥来验证,其他人无法仿冒,所以,可以用做网络中的数字签名服务。
二、方案论证1.先容RSA公钥密码体制RS A是Rivest,Shamir,Adleman提出基于数论的非对称密钥体制RSA是建立在大整数分解的困难上的,是一种分组密码体制RSA建立方法如下摘要:首先随机选两个大素数p,q , 计算n=p %26#8226; q;计算欧拉函数 φ(n)=(p-1)(q-1);任选一个整数e为公然加密密钥,由e求出秘密解密密钥加密/解密摘要:将明文分成长度小于 位的明文块m,加密过程是摘要:c = E(m,e) = mod n解密过程是摘要:m = D(c,d) = mod n2.RSA公钥密码体制的平安性分析RSA的平安性依靠于大整数的因式分解新题目实际上,人们推测RSA的平安性依靠于大整数的因式分解新题目,但谁也没有在数学上证实从c和e计算m需要对n 进行因式分解可以想象可能会有完全不同的方式往分析RSA然而,假如这种方法能让密码解析员推导出d,则它也可以用作大整数因式分解的新方法最难以令人置信的是,有些RSA变体已经被证实和因式分解同样困难甚至从RSA加密的密文中恢复出某些特定的位也和解密整个消息同样困难3.设计RSA系统的注重事项(1)经过对RSA平安性的分析,可以得出使用RSA时应该注重的事项摘要:随机选择足够大素数;在使用RSA的通讯网络协议中,不应该使用公共模;不要让攻击者得到原始的解密结果;解密密钥d相对模数n来说不应过小;应该或者加密密钥大;或者被加密的信息m总是大而且m不能是一些已知值的乘积,后面一种情况可以在加密前对m填充随机值实现。
相关的消息不能用同样的密钥加密,加密前对消息进行随机值填充破坏消息之间的代数联系及相关性,但是要注重填充算法的选择;应该使获得对任意值的原始签名不可能被签名的消息应该和模数差未几大,而且不是一些已知值的乘积;(2)RSA系统的参数选择RSA系统是第一个将平安性植基于因子分解的系统很明显地,在公然密钥(e,N)中,若N能被因子分解,则在模N中所有元素价的最小公倍数(即所谓陷门)T=φ(N)=(p-1)(q-1)即无从隐躲使得解密密钥d不再是秘密,进而整个RSA系统即不平安固然迄今人们尚无法“证实”,破解RSA系统即是因子分解但一般“相信”RSA系统的平安性,等价于因子分解即摘要:若能分解因子N,即攻破RSA系统;若能攻破RSA系统,即分解因子N(相信,但未证实)因此,在使用RSA系统时,对于公然密钥N的选择非常重要必须使得公然N后,任何人无法从N得到T此外,对于公然密钥e和解密密钥d,亦需有所限制否则在使用上可能会导致RSA系统被攻破,或应用在密码协议上不平安4.RSA公钥密码体制的应用(1)数字签名长期以来的日常生活中,对于重要的文件,为了防止对文件的否认,伪造,篡改等等的破坏,传统的方法是在文件上手写签名。
但是在计算机系统中无法使用手写签名,而代之对应的数字签名机制数字签名应该能实现手写签名的功能,其本质特征就是仅能利用签名者的私有信息产生签名因此,当它被验证时,它也能被信任的第三方(如法官)在任一时刻证实只有私有信息的唯一把握者才能产生此签名其特征摘要:签名是可信的,签名是不能伪造的,签名是不可重用的,签名后的文件是不能更改的,签名是不能否认的三、过程论述1.RSA算法工作原理首先,找出三个数,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%26lt;=n,通常取s=2 ),则每一位数均小于n,然后分段编码......接下来,计算b==amodn,(0%26lt;=b若p,q是相异质数,rm==1 mod (p-1)(q-1),a是任意一个正整数,b==a mod pq, c==b mod pq, 则c==amod pq 证实的过程, 会用到费马小定理, 叙述如下摘要:m是任一质数,n是任一整数,则n==nmogt;c==a mod pq这个定理说明a经过编码为b再经过解码为c时,a ==c mod n(n =pq)但我们在做编码解码时,限制0%26lt;=a 。












