第04章公钥密码体制.pptVIP

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第04章公钥密码体制 * 第1页,共25页,编辑于2022年,星期五 一、RSA算法概述 传统密码体制的缺陷: 密钥管理的麻烦:n个用户保存n*(n-1)/2个密钥。 不能提供法律证据 :不仅要保密还要解决证实问题。 1976年,美国学者Diffie和Hellman发表了著名论文《密码学的新方向》,提出了建立“公开密钥密码体制”:若用户A有加密密钥ka(公开),不同于解秘密钥ka’(保密),要求ka的公开不影响ka’的安全。若B要向A保密送去明文m,可查A的公开密钥ka,若用ka加密得密文c,A收到c后,用只有A自己才掌握的解密密钥ka’对x进行解密得到m。 公开密钥算法 * 第2页,共25页,编辑于2022年,星期五 一、RSA算法概述 1978年,美国麻省理工学院(MIT)的研究小组成员:李维斯特(Rivest)、沙米尔(Shamir)、艾德曼(Adleman)提出了一种基于公钥密码体制的优秀加密算法——RSA算法。 RSA算法是一种分组密码体制算法,它的保密强度是建立在具有大素数因子的合数,其因子分解是困难的。是否是NP问题尚未确定。 RSA得到了世界上的最广泛的应用,ISO在1992年颁布的国际标准X.509中,将RSA算法正式纳入国际标准。1999年美国参议院已通过了立法,规定电子数字签名与手写签名的文件、邮件在美国具有同等的法律效力。 公开密钥算法 * 第3页,共25页,编辑于2022年,星期五 数论知识简介 互素:若gcd(a,b)=1,则整数a和b互素。 定义:若a?x mod n =1,则称a与x对于模n互为逆元。 用Euclid算法求乘法逆元 若a和n互素,则a在模n下有逆元。 Euler函数:φ(n)=与n互素的、小于n的正整数的个数,n>1。例: φ(3)= φ(4) = φ(6) =2,φ(5)=4,φ(7) =6 φ(12)=6 * 第4页,共25页,编辑于2022年,星期五 数论知识简介 模运算性质: 同余 模运算满足自反性、对称性、传递性; a=a mod n; 若a=b mod n,则b=a mod n; 若a=b mod n,b=c mod n,则a=c mod n 若a mod n=b mod n,则(a-b)mod n=0; [(a mod n) +(b mod n)]mod n=(a + b) mod n; - - ; * * ; 例:152 mod 12 =(3*3) mod 12=9 * 第5页,共25页,编辑于2022年,星期五 若n是素数,则φ(n)=n-1 若n=p*q,p、q是素数,则φ(n)=(p-1)*(q-1) 例: φ(21)= φ(3*7)=2*6=12 Fermat小定理:若m是素数,且a不是m的倍数,则am-1 mod m=1。 或者:若m是素数,则am mod m=a 例:46 mod 7=4096 mod 7=1 47 mod 7=16384 mod 7=4 * 第6页,共25页,编辑于2022年,星期五 Euler定理:a φ(n) mod n =1 推论:若a与n互素,则a与a φ(n)-1 互为逆元。 例:a=4,n=7, φ(7)=6, a φ(7)-1 =45=1024 所以,4和1024在模7下互为逆元。 验证:4x1024 mod7 =1 * 第7页,共25页,编辑于2022年,星期五 求乘法逆元 Function Euclid(d,f) //求d在模f下的逆元 (x1,x2,x3)<-(1,0,f);(y1,y2,y3)<-(0,1,d); If y3=1 then print “逆元是” y2 else print “无逆元”; End. Q=[x3/y3] (t1,t2,t3)<-(x1-Q*y1, x2-Q*y2, x3-Q*y3) (x1,x2,x3)<-(y1,y2,y3); (y1,y2,y3)<-(t1,t2,t3) Go to 2) * 第8页,共25页,编辑于2022年,星期五 高次幂剩余的运算 公开密钥算法   要计算 gn mod p,因g、n、p都是大数而不能采用先高次幂再求剩余的方法来处理,而要采用平方取模的算法,即每一次平方或相乘后,立即取模运算。 欧几里德算法   欧几里德算法可以迅速地找出给定的两个整数a和b的

文档评论(0)

lanlingling + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档