RSA加密解密算法.ppt

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
RSA加密解密算法.ppt

RSA加密解密算法 1.RSA算法的基本概念 2.RSA加密算法实现 3.RSA解密算法实现 4.遇到的问题 5.总结 RSA加密解密算法基本概念 RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和LenA dleman开发的。RSA取名来自开发他们三者的名字。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。 RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。 RSA加密解密算法基本概念 RSA算法的描述 1.密钥的产生。 选两个保密的大素数p和q; 计算n=p*q,f(n)=(p-1)*(q-1),其中f(n)是n的欧拉函数值; 选一整数e,满足1ef(n),且gcd(f(n),e)=1; 计算d,满足d*e≡1mod(f(n)),即d是e在模f(n)下的乘法逆元因e与f(n)互素,由模运算可知,它的乘法逆元一定存在; 以{e,n}为公开钥,{d,n}为秘密钥; RSA加密解密算法基本概念 2.加密。 加密是首先将明文比特串分组,使得每个分组对应的十进制数小于n,即分组长度小于 log2(n) 。然后每个明文分组m ,作加密运算: c≡m^e mod n 3.解密。 对明文分组的解密运算为: m≡c^d mod n RSA加密算法实现 首先选取保密的两个大素数p和q。然后求他们的乘积n=p*q,n的欧拉函数值。然后选取任意的e,并且满足1ef(n),e与n的欧拉函数值f(n)互素。最后利用我们选取的e来加密明文文件。 在我的程序中我把p和q 选取100内的素数,并且程序把p和q自动生成。程序利用生成的p和q的值来求它们的乘积n=p*q和n的欧拉函数值f(n)。然后选取与f(n)互素的整数e,按照给定的公式生成密文文件 生成密钥和密文的相关公式 n=p*q f(n)=(p-1)*(q-1) c≡m^e mod n 相关的代码与结果如下: RSA加密算法实现 生成p和q的代码: RSA加密算法实现 生成e的相关代码: RSA加密算法实现 生成密文c的相关代码: RSA加密算法实现 程序的运行结果: RSA解密算法实现 我们知道公钥(n,e)利用n首先找出两个素数p和q,因为n=p*q然后求n的欧拉函数值f(n),利用e和f(n)找出d,一旦找出来d就解决问题了。 在我编写的程序中利用的公式如下: n=p*q f(n)=(p-1)*(q-1) d*e≡1 mod f(n) m≡c^d mod n 相关的代码与结果如下: RSA解密算法实现 相关n的分解求p和q的代码如下: RSA解密算法实现 相关求d的代码如下: RSA解密算法实现 相关求明文m 的代码如下: RSA解密算法实现 程序的运行结果如下: 遇到的问题 我写的程序有几种问题: 生成的n 超过五位时同样加密,但是解密是有的时候可以正确的解密,有的时候解密结果出错。 生成的n超过六位是加密是出现错,比如说加密后的数据负数。 有时候生成的密文和原来的明文相同,出现这样的问题可能跟e的选取有关。 总结 我编写的RSA加密解密算法的程序的功能特别的简单,我编写的是对于五位以下数字的加密和解密。虽然看起来很简单,但是实现出来不那么容易了,我通过编写这么小的一个RSA的加密解密算法,我意识到了RSA算法的安全性很高。 虽然我编写了解密的算法,但没有详细的分析不了解密的一些问题,我成功的解密了五位以下的数字的加密,超过了五位找不到到底哪儿出了错误。 * *

文档评论(0)

此项为空 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档