- 1、本文档共59页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 公钥密码体制 本章重点: 公钥密码体制的性质 公钥密码学的理论基础:单向陷门函数 数论的部分知识 公钥密码学的实例:RSA算法的原理和工作过程;ElGamal密码体制 5.1 公钥密码体制的基本原理 公钥密码体制采用了两个不同的密钥,这对在公开的网络上进行保密通信、密钥分配、数字签名和认证有着深远的影响。 5.1.1 对称算法的不足 密钥管理量的困难:两两分别用一个密钥时,则n个用户需要C(n,2)=n(n-1)/2个密钥,当用户量增大时,密钥空间急剧增大。如:n=100 时,共4,995个;n=5000时增加到12,497,500个。 密钥建立问题:对协商密钥的信道的安全性的要求比正常的传送消息的信道的安全性要高。 数字签名的问题:传统加密算法无法实现抗抵赖的需求。 5.1.2 公钥密码体制的起源 公钥密码又称为双钥密码和非对称密码,是1976年由Diffie和Hellman在其“密码学新方向”一文中提出的,见划时代的文献:W.Diffie and M.E.Hellman, New Directrions in Cryptography, IEEE Transaction on Information Theory, V.IT-22.No.6, Nov 1976,PP.644-654 RSA公钥算法是由Rivest,Shamir和Adleman在1978年提出来的, 见Communitions of the ACM. Vol.21.No.2. Feb.1978, PP.120-126 5.1.3 公开密钥密码的重要特性: 加密与解密由不同的密钥完成 加密: X→Y: Y = EKU(X) 解密: Y→X: X = DKR(Y) = DKR(EKU(X)) 知道加密算法,从加密密钥得到解密密钥在计算上是不可行的。(单向函数的性质) 两个密钥中任何一个都可以用作加密而另一个用作解密(单向函数的交换性,不是必须的) X = DKR(EKU(X)) = EKU(DKR(X)) 基于公开密钥的加密过程 基于公开密钥的鉴别过程 公钥密钥的应用范围 加密/解密 数字签名(身份鉴别) 密钥交换 5.1.4 公钥密码系统基本思想和要求 1、涉及到各方:发送方、接收方、攻击者 2、涉及到数据:公钥、私钥、明文、密文 3、公钥算法的条件: – 产生一对密钥是计算可行的; – 已知公钥和明文,产生密文是计算可行的; – 接收方利用私钥来解密密文是计算可行的; – 对于攻击者,利用公钥来推断私钥是计算不可行的 – 已知公钥和密文,恢复明文是计算不可行的; – (可选)加密和解密的顺序可交换。 5.1.5 部分数学基础 涉及计算复杂性、近世代数等内容。 严格单向函数 一个单射函数f: 如果下述条件成立: 存在一个有效的方法,对所有的x∈X可计算f(x),但不存在一个有效的办法由y= f(x)计算x,所有的y∈Y。 则称X→Y称为是严格单向函数。 陷门单向函数 单向陷门函数是满足下列条件的函数f: (1)给定x,计算y=fk(x)是容易的; (2)给定y, 计算x使x=fk-1(y)是不可行的。 (3)存在k,已知k时,对给定的任何y,若相应的x存在,则计算x使fk-1(x)是容易的。 5.1.6 公钥密码基于的数学难题 背包问题 大整数分解问题(The Integer Factorization Problem,RSA 体制) 离散对数问题: 有限域的乘法群上的离散对数问题(The Discrete Logarithm Problem,ElGamal体制) 椭圆曲线上的离散对数问题(The Elliptic Curve Discrete Logarithm Problem,类比的ElGamal体制) ?大整数分解问题和离散对数是构造RSA算法的重要基础 整数因子分解问题 许多密码系统的安全性都依赖于整数因子分解的困难性。如RSA加密方案,RSA签名方案和Rabin公钥加密方案。 定义:给定一个正整数n,找到它的素因子,即n=p1e1p2e2…pkek,这里pi是不同的素数,并且ei≥1。如:91=7×13 ; 3600=24×32×52 至今没有有效的求解方法。 指数函数及其性质 指数函数y=ax mod p
文档评论(0)