- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
密码分析现代加密技术
2.1.4 公开密钥密码体制—RSA(Rivest, Shamir, Adleman)算法 又称非对称加密体系,即加密和解密过程分别使用两个不同的密钥体系。它是现代密码学的最重要的发明,典型算法有:RSA、背包算法、Rabin算法、概率加密算法、McEliece算法等。 1976年,美国斯坦福大学的Diffie 和Hellman提出了公钥密码的新思 想,一年后,美国麻省理工学院的 三位博士Rivest, Shamir, Adleman 设计了RSA加密算法。 在“公开密钥密码体制”中,加密密钥不同于解密密钥,加密密钥公之于众,谁都可以用;而解密密钥只有解密人自己知道。它们分别称为“公开密钥”(public key)和“秘密密钥”(private key)。 2.1.4.1 公开密钥加密算法的特点 公开密钥密码体制算法:使用一个加密算法E和一个解密算法D,它们彼此完全不同,根据已选定的E和D,即使已知E的完整描述,也不可能推导出D。 密钥对 产生源 2.1.4.2 RSA RSA算法是最著名的公开密钥体制。基于大数分解的难度。其公开密钥和私人密钥是一对大素数的函数,从一个公开密钥和密文中恢复出明文的难度等价于分解两个大素数之积。 RSA算法过程:首先是设计密钥,然后是对消息加密,最后是对密文解密。 (1)设计密钥 在离线方式下,先产生两个足够大的大素数p、q。可得p与q的乘积为n=pxq。再由p和q算出另一个数z=(p-1)×(q-1),然后再选取一个与z互素的奇数e,称e为公开指数;从这个e值可以找出另一个值d,并能满足e*d mod (z) =1 条件。舍弃p和q(但绝不能泄露)。由此而得到的两组数(n,e) 和 (n,d)分别被称为公开密钥和秘密密钥,或简称公钥和私钥。 (2)加密 对于明文M,用公钥 (n,e) 加密可得到密文C。 C =M mod (n) e (3)解密 对于密文C,用私钥(n,d)解密可得到明文M。 M = C mod (n) 当定义用私钥(n,d)先进行解密后,然后用公钥(n,e)进行加密,就是数字签名。 d RSA(Rivest, Shamir, Adleman)算法 密钥生成 任选两个不同的大素数p , q 。 计算n=p*q z=(p-1)(q-1) 任选e,使与z互质。n和e便是用户的公钥。(注:e的选取是很容易的,例如,所有大于p和q的质数都可用) 确定解密密钥d, d*e mod z =1 。(根据e、p、q很容易确定d) d保密,d是用户的私钥。 加密:c ≡me mod n 解密:m ≡cd mod n c是对应于明文m的密文,m是对应于密文c的明文。 举例:用RSA密码算法对信息“public key encryptions”进行加密和还原。 将明文以两个字符为一组,并将明文数字化,00表示a,01表示b,…24表示y,25表示z。得到: Pu bl ic ke ye nc ry pt io ns 1520 0111 0802 1004 2404 1302 1724 1519 0814 1418 1.选取p=43和q=59。 2.计算n=43*59=2537。 3. z=(p-1)(q-1)=42*58=2436 4.选择e=13,解方程e*d mod 2436=1,得到 d=937. 5.对明文数字m=1520的加密, c=E(m)=me(mod n)=152013(mod 2537)=0095 6.对密文数字0095的解密过程, D(c)=cd (mod n)=95937mod2537=1520 任选素数p , q 。 计算n=p*q z=(p-1)(q-1) 选e,使与z互质。 课堂练习: 已知公开密钥:(n,e)=(15,11) p=3, q=5,求私人密钥(n,d)?假设明文为13,试写出加密和解密方程。 课堂练习(讲解): 选取p=3, q=5,则 n=pxq =15,z=(p-1)×(q-1)=8 选取e=11(大于p和q的质数),通过 d *11 mod 8 = 1 ,计算出d =3 得到公开密钥:(n,e)=(15,11) 私人密钥:(n,d)=(15,3) 假定明文M为整数13。则密文C为 C = M mod n = 13 mod 15 = 1,792,160,394,037 mod 15 = 7 复原明文M为: ?M = C mod n = 7 mod 15 = 343 mod 15 = 13 e 11 d 3 RSA算法基于两个
您可能关注的文档
- 实务模块一基础知识支付.ppt
- 实施目标梁的设计计划.ppt
- 实战高效的沟通技巧大全.ppt
- 实物波粒二象性不确定关系.ppt
- 实现金蝶的账套管理.ppt
- 实用《音乐巨人贝多芬》.ppt
- 实用定性安全评价方法及应用.ppt
- 实时信号处理(研究生).ppt
- 实用模拟电子技术教程第3章电子.ppt
- 实用企业团队培训模板.pptx
- 2023年江苏省镇江市润州区中考生物二模试卷+答案解析.pdf
- 2023年江苏省徐州市邳州市运河中学中考生物二模试卷+答案解析.pdf
- 2023年江苏省苏州市吴中区中考冲刺数学模拟预测卷+答案解析.pdf
- 2023年江苏省南通市崇川区田家炳中学中考数学四模试卷+答案解析.pdf
- 2023年江西省吉安市中考物理模拟试卷(一)+答案解析.pdf
- 2023年江苏省泰州市海陵区九年级(下)中考三模数学试卷+答案解析.pdf
- 2023年江苏省苏州市高新二中中考数学二模试卷+答案解析.pdf
- 2023年江苏省南通市九年级数学中考复习模拟卷+答案解析.pdf
- 2023年江苏省南通市海安市九年级数学模拟卷+答案解析.pdf
- 2023年江苏省泰州市靖江外国语学校中考数学一调试卷+答案解析.pdf
文档评论(0)