密码学04-公钥密码课件.ppt

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

第四章 公钥密码 本章提要 4.1 密码学中常用数学知识 4.2 公钥密码体制的基本概念 4.3 RSA算法 4.4 背包体制 4.5 Rabin体制 4.6 NTRU公钥密码系统 4.7 椭圆曲线密码体制 4.8 基于身份的密码体制 4.1 密码学中的常用数学知识 群、环、域、素数 模运算 费尔马定理 ap-1=1 mod p ,p是素数 欧拉函数 ?(n):小于n的且与n互素的正整数个数 a?(n)=1 mod n 素性检验 1.爱拉托斯散筛法(Eratosthenes) 依次删去小于 素数的倍数 2. Miller-Rabin概率检测法√ 3.AKS 4.2 公钥密码体制的基本概念 公钥密码体制的出现在密码学史上是一个最大的而且是惟一真正的革命。为密码学发展提供了新的理论和技术基础 公钥密码算法基本工具不再是代换和置换,而是数学函数 以非对称的形式使用两个密钥,两个密钥的使用对保密性、密钥分配、认证等都有着深刻的意义。 公钥密码体制的概念是在解决单钥密码体制中最难解决的两个问题时提出的,即密钥分配和数字签字 对称密码算法的缺陷 密钥分配问题: 通信双方加密通信前要通过秘密的安全信道协商加密密钥,这种安全信道可能很难实现;对这个信道安全性的要求比正常传送消息信道的安全性要高 密钥管理问题: 在多用户网络中,任何两个用户之间都需要有共享的秘密钥,n个用户需要Cn2=n(n-1)/2个密钥,n=5000时,Cn2=12,497,500,系统开销非常大 没有签名功能: 当主体A收到主体B的电子文挡时,无法向第三方证明此电子文档确实来源于B, 传统单钥加密算法无法实现抗抵赖的需求 公钥密码的主要作用 公钥加密 用于加密任何消息,象分组密码一样使用 任何人可以用公钥加密消息,私钥的拥有者可以解密消息 数字签名 (Digital Signature) 用于生成对某消息的数字签名 私钥的拥有者生成数字签名,任何人可以用公钥验证签名 签名时可将公钥加密算法逆用来实现,也可单独设计公钥签名算法 基于公钥的密钥分配(Key Distribution) 用于交换秘密信息,常用于协商对称加密算法的密钥 可采用公钥加密的算法实现密钥分配 也可使用单独设计的密钥交换算法,如DH密钥交换协议实现密钥分配 其它应用: 零知识证明,公平抛币等等,(用于各种目的的认证) 公钥密码的发展概况 1976年Diffie和Hellman在其“密码学新方向”一文中提出公钥密码: W.Diffie and M.E.Hellman, “New Directions in Cryptography”, IEEE Transaction on Information Theory, V.IT-22.No.6, Nov 1976:644-654 1978年Merkle和Hellman基于背包问题提出了首个公钥密码体制,但两年后被破译 1978年Rivest,Shamir Adleman基于大数分解的困难性提出了RSA公钥算法,成为迄今为止最为成熟和完善的公钥密码体制 1985年出现了基于求解离散对数困难性的公钥密码算法DLP 90年代逐步出现椭圆曲线(ECC)等其他公钥算法 当前的公钥密码算法主要是基于大数分解困难性和离散对数困难性来构造的,椭圆曲线上也可构造这类体制,相同密钥长度下其安全性更高 参考资料:《公钥密码学》等 4.2.1 公钥密码体制的原理 公钥密码算法的最大特点是采用两个相关密钥将加密和解密能力分开 一个密钥是公开的,称为公开密钥,简称公开钥,用于加密、验证签名,可以被任何人知道 另一个密钥是为用户专用,因而是保密的,只能被消息的接收者或签名者知道,称为秘密密钥,简称秘密钥,用于解密、产生签名 因此公钥密码体制也称为双钥密码体制 算法有以下重要特性: 已知密码算法和加密密钥,求解密密钥在计算上是不可行的 因此加密和签名的验证者不能解密和生成签名 公钥体制的加密过程 ① 密钥的产生:要求接收消息的端系统,产生一对用来加密和解密的密钥PKB和SKB,如图中的接收者B,其中PKB是公开钥,SKB是秘密钥。因此,公钥可以发布给其他人 ② 公开钥的分发:端系统B将加密密钥(PKB)予以公开。另一密钥则被保密(SKB) ③ 加密:A要想向B发送消息m,则使用B的公开钥加密m,表示为c=EPKB[m]其中c是密文,E是加密算法 ④ 解密:B收到密文c后,用自己的秘密钥SKB解密,即m=DSKB[c],其中D是解密算法。因为只有B知道SKB,所以其他人都无法对c解密。 公钥体制的认证过程 公钥加密算法不仅能用于加、解密,还能用于对发方A发送的消息m提供认证 用户A用自己的秘密钥SKA对m加密,表示为c=ESKA[m] 将c发往B。

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档