版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、RSA算法的数论根底1、 公钥密码体制根底一个好的密码体系的必要条件是合法用户能够很容易对秘密消息进行加密和解密,而这些过程对于其他人那么是非常难的。公钥密码体制的实现基于单向陷门函数。单向陷门函数:设f是一个函数,t是与f有关的一个参数。对于任意给定的x,计算y,使得y=f(x)是容易的。如果当不知道参数t时,计算f的逆函数是难解的。但当知道参数t时,计算f的逆函数是容易的。那么称f是一个单向陷门函数,参数t称为陷门。二、RSA算法的平安根底计算机科学家Rivest、Shamir和Adleman提出了基于素性检测和整数分解的第一个使用公钥密码体制。算法的平安性建立这一数论难题根底上:将两个大
2、素数相乘是容易计算的,而将该乘积分解成两个大素数因子是困难的。素性检测问题:检测n的素性的最好额判定算法运行时间为,关于输入长度呈超越多项式速度增长。整数因子分解问题:分解一个一般的整数n的最好的算法运行时间为,关于输入长度呈亚指数速度增长。三、RSA算法实现的根底定理算术根本定理:任何大于1的整数n能被因式分解为如下唯一形式:n=p1p2pl(p1,p2,pl为素数费马小定理:假设p是素数,a与p互素,那么欧拉定理:欧拉函数表示不大于n且与n互素的正整数的个数。当n是素数,。,p,q均为素数时,那么对于互素的a和n,有4、 RSA算法的实现1. 密钥的产生 选两个互异的大素数p和q。 计算n
3、=p×q,(n)=(p-1)(q-1),其中(n)是n的欧拉函数值。 选一随机整数e,满足1<e<(n),且gcd(n),e)=1。 计算d,满足d·e1 mod (n),即d是e在模(n)下的乘法逆元,因e与(n)互素,由模运算可知,它的乘法逆元一定存在。 以e,n为公开钥,d,p,q为秘密钥。2. 加密加密时首先将明文比特串分组,使得每个分组对应的十进制数小于n,即分组长度小于。然后对每个明文m,作加密运算:3. 解密对密文分组的解密运算为:五、证明RSA算法中解密过程的正确性设p,q是不同的素数,n=pq记(n)=(p-1)(q-1),如果e,d是与(n)
4、互素的两个正整数e,d<(n),并满足ed1(mod (n),那么对于每个整数x,都有。分析:为了证明,只要证明(n)是的因数即可。又因为n=pq,而p,q都是素数,故只要证明p和q都是的因数即可,即 1 2证明:证明式1,假设p是x的因数那么式1必然成立假设p不是x的因数,那么由ed1(mod (n)得ed-1=k(p-1)(q-1),k为任意整数那么 根据费马小定理因为x与p互素所以所以 同理可证即证六、RSA算法中的计算问题1.模运算性质RSA的加密、解密过程的运算都为求一个整数的整数次幂,再取模。如果按其含义直接计算,那么中间结果非常大,有可能超出计算机所允许的整数取值范围。而用
5、模运算的性质:(a×b) mod n=(a mod n)×(b mod n) mod n就可减小中间结果。2.模重复平方计算法 例如求,直接计算的话需做15次乘法。然而如果重复对每个局部结果做平方运算即求x,那么只需4次乘法。3、乘法逆元的求法欧几里德算法整数e,满足1<e<(n),且gcd(n),e)=1计算d,满足d·e1 mod (n),即d是e在模(n)下的乘法逆元,因e与(n)互素,它的乘法逆元一定存在。求法可用欧几里得算法。七、素性判定在建立RSA密码的过程中,需要生成大量的随机素数,一般是先生成大量的随机整数,再通过算法检测其是否为素数。
6、判别给定的正整数是否素数简称素性判定。举例Miller-Rabin素性检验:给定奇整数和平安参数k写,其中t为奇整数1. 随机选取整数b,2. 计算3.(a)如果或,那么通过检验,可能为素数。回到1.继续选取另一个随机整数b,(b否那么,有以及,计算 4.(a)如果,那么通过检验,可能为素数。回到1.继续选取另一个随机整数b,(b否那么,有,计算 如此继续下去。需要检测多少个随机整数特定才能找到一个素数。定义为不超过x的素数的个数,素数定理:在1x中随机选取一个整数,其为素数的概率大约为1/Inx。八、因子分解分解任意正整数n是,要寻找n的一个非平凡因子。对RSA的公开模数n,找到其任意一个非
7、平凡因子即意味这彻底分解n和该RSA密码的破解。举例Pollard p-1分解算法:1. 选择一个界B2. 选择一个整数k,k是大局部b的乘积满足3. 选择一个随机整数4. 计算5. 计算d=gcd(r-1,n)6.如果1<d<n,d就是n的非平凡因子;如果d=1或d=n就回到2.九、RSA算法的平安性如果RSA的模数n被成功地分解为p×q,那么获得(n)=(p-1)(q-1),从而攻击者能够从公钥e解出d,即,那么攻击成功。随着人类计算能力的不断提高,原来被认为是不可能分解的大数已被成功分解。因此,RSA算法的平安要求:n的长度在10242048比特p和q的长度相差不能太多p-1和q-1都应该包含大的素数因子p-1和q-1的最大公因子要尽可能小十、读书感悟在对RSA算法这一问题进行查资料时,我发现它的算法竟都是我们学过的知识,只不过将其都结合了起来。信安数学课程中的书本知识和课堂内容都应用在了RSA算法
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026北京北化化学科技有限公司招聘2人备考题库附完整答案详解(易错题)
- 2026安徽滁州市中小学新任教师招聘240人备考题库附完整答案详解【夺冠】
- 2026浙江嘉兴市海宁市儿童福利院招聘2人备考题库含答案详解【综合卷】
- 2026上海复旦大学化学系舒校坤课题组招聘全职博士后备考题库含答案详解【a卷】
- 2026云南云铝物流投资有限公司招聘3人备考题库附完整答案详解【考点梳理】
- 2026河北承德县招聘公益性岗位人员16人备考题库及参考答案详解(轻巧夺冠)
- 2026江苏南京大学SZYJ20260014生物医学工程学院招聘备考题库【必刷】附答案详解
- 4 民族文化多姿多彩-美化网页教学设计小学信息技术(信息科技)六年级下册桂教版
- 2026云南玉溪市文化馆城镇公益性岗位招聘3人备考题库及参考答案详解【基础题】
- 2026汉江水利水电(集团)有限责任公司及所属单位招聘91人备考题库(管理与专业技术岗位)附完整答案详解【典优】
- 最近时事政治课件
- 药厂称量工作流程
- 中兴通讯网络设备调试与优化手册
- 2025年内蒙古行政执法人员执法证考试题库及答案
- 军事识图用图课件
- 手扶梯应急安全培训意义课件
- 企业文化建设咨询服务合同书
- 病房持续改进PDCA案例课件
- (2021-2025)5年高考1年模拟化学真题分类汇编专题08 化工流程综合题(广东专用)
- 舰艇维修监督管理办法
- 煤矿安全监控系统(AQ1029-2026)
评论
0/150
提交评论