- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5-公钥密码技术分析
第5讲 公钥密码技术 杨 明 紫金学院计算机系 内容 公钥密码的基本概念 RSA公钥体制 Diffie-Hellman密钥交换 公开密钥的管理 公钥密码的革命性意义 新理论 基本工具是数学函数而不是代换和置换 安全性是基于数学难题 新技术 双密钥:ke≠kd 非对称加密:使用其中一个密钥加密,使用另一个密钥解密 可公开一个密钥:仅知道密码算法和公钥要确定私钥在计算上是不可行的 公钥密码体制的原理 五元组(M,C,K,E,D) 双密钥K= Ke,Kd Ke ≠ Kd且由Ke 不能计算出 Kd ; Ke可公开, Kd保密?K=(PK, SK) PK为公钥,SK为私钥 SK严格保密,可作为个人的身份指纹 加密算法E和解密算法D可逆 方案1:c=E(m,PK), m=D(c, SK) 方案2:c=E(m,SK), m=D(c, PK) 公开密钥密码的优点 简化密钥管理 实现数字签名 签名需要有无法被他人获悉的能代表自身的秘密信息 签名验证时不会泄漏上述秘密信息 密钥交换 实现通过公开网络环境下的密钥协商 简化密钥管理 对称加密 密钥分配困难 密钥容易泄漏 通信双方都知道密钥 密钥分配中心KDC 密钥量大 密钥生存期短 简化密钥管理 非对称加密 只需重点保护自己的私有密钥 公有密钥可通过相关机构进行下载,安全压力小 密钥存储量小,使用方便 密钥生存期长 公钥密码的基本工作方式 保持机密性 c=E(m,PKB), m=D(c, SKB) 保持真实性 c=E(m,SKA), m=D(c, PKA) RSA公钥体制 介绍 第一个公钥密码算法 1978年由Rivest, Shamir和Adleman提出 RSA密码被誉为是一种风格幽雅的公开密钥密码 迄今理论上最为成熟完善的公钥体制 应用广泛 安全性基于大整数分解 RSA公钥体制 构造过程 RSA算法验证 E和D的可逆性 c=E(m,e)=me mod n D(c,d)=cd mod n=(me)dmod n ed=1 modφ(n) ? D(c,d)=(me)dmod n=m tφ(n)+1 数论Euler定理? D(c,d)=m tφ(n)+1 =m 加密和解密运算的可交换性 D(E(m))=(me)d mod n =(md))e mod n=E(D(m)) RSA算法示例 产生密钥 选择两个素数: p=17 q=11 计算 n = pq =17×11=187 f(n)=(p–1)(q-1)=16×10=160 选择加密密钥 e : gcd(e,160)=1; choose e=7 确定对应的解密密钥 de=1 mod 160 , d 160 ? d=23 由于 23×7=161= 10×160+1 公钥PK={e, n}={7,187} 私钥SK={d,p,q}={23,17,11} RSA算法示例 加密与解密 公钥PK={e, n}={7,187} 私钥SK={d,p,q}={23,17,11} 明文m = 88 加密 c=me mod n= 887 mod 187 = 11 解密 m =cd mod n= 1123 mod 187 = 88 RSA的安全性 RSA破解 RSA的安全性 安全性建议 Rivest, Shamir和Adleman建议p和q为100位的十进制数,这样n为200位的十进制数。 估计200位的十进制数的因式分解在亿次机要进行55万年。 安全密钥的产生 p和q的长度接近 p-1和q-1都包含大的素因子 gcd(p-1,q-1)很小 混合密码机制 比较 RSA涉及高次幂运算,加密和解密速度较慢 DES加密和解密速度较RSA快近一个数量级 RSA宜于密钥管理而DES难于密钥管理 结合使用 使用RSA进行密钥的加密/解密 使用DES进行数据的加密/解密 对称加密和非对称加密的混合使用 加密过程 数据加密密钥k c1=Edes(m,k) c2=RSA(k,pkb) c=(c1, c2) 对称加密和非对称加密的混合使用 解密过程 数据加密密钥k c=(c1, c2) k=RSA (c2, skb) m=Ddes(c1, k) 数字信封技术 Diffie-Hellman密钥交换 密钥交换(密钥协商) 通信双方通过不安全信道协商密钥 窃听者无法获得密钥 Diffie-Hellman密钥交换 Diffie-Hellman密钥交换 安全性 离散对数问题 问题 有限域上的离散对数问题是难解问题 DH密钥交换算法示例 Alice和Bob协商后采用素数p=353及其本原根a=3; Alice选择随机数x=97,计算X=397 mod 353=40,并发送给Bob; Bob选择随机数y=233,计
文档评论(0)