| 加密与解密算法的研究 |
| 当前位置: 论文资料 >> 计算机论文 >> 计算机应用 >> 加密与解密算法的研究 | ||
| 加密与解密算法的研究 | ||||
|
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 m是任一质数,n是任一整数,则n^m==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==b^r==(a^m)^r==a^(rm)==a^(k(p-1)(q-1)+1)modpq (1)如果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 2.RSA 的安全性 RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解 RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前, RSA 的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。现在,人们已能分解多个十进制位的大素数。因此,模数n 必须选大一些,因具体适用情况而定。 3.RSA的速度 由于进行的都是大数计算,使得RSA最快的情况也比DES慢上一倍,无论是软件还是硬件实现,速度一直是RSA的缺陷。一般来说只用于少量数据加密。 参考文献 [1] 陈 运.信息加密原理[M].成都:电子科技大学出版社,1990. [2] 张 周.我国企业开始重视网络安全[J].计算机世界A9版.2000,(3). [3] 张文政,孟庆志.通信保密技术[J].计算机应用.1998,(6):25~28. [4] 王 勇.RSA公开密钥密码体制的密钥生成研究 |
||||
|
|
||||