- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[第4章公钥密码系统
第4章 公钥密码体系 第4章 公钥密码体系 4.1 公钥密码概述 4.2 RSA密码系统 4.3 Diffie-Hellman密钥交换 4.4 数字签名 4.5??? 数字签名的算法 4.6 PGP 导读 将讨论解密密钥与加密密钥不同的情况。 非对称密码系统的解密密钥与加密密钥是不同的,一个称为公开密钥,另一个称为私人密钥(或秘密密钥),因此这种密码体系也称为公钥密码体系。 公钥密码除可用于加密外,还可用于数字签名。 《中华人民共和国电子签名法》已于2005年4月1日实行。 回顾 网络安全的五个目标 秘密密钥密码体系—对称密钥密码体系 数据加密标准DES(Data Encryption Standard) 加密和解密用同一个密钥 如何共享同一个密钥? 电子邮件 电话 邮局邮寄 4.1 公钥密码概述 1 公钥的起源 公钥密码体系于1976年由W. Diffie和M. Hellman提出。 公钥密码又叫非对称密码,这种密码体系采用了一对不同的密钥——加密密钥和解密密钥; 这一对密钥,一个可以公开(称之为公钥),另一个为用户专用(私钥)。 2 数学原理--陷门单向函数 公钥密码系统是基于陷门单向函数的概念。 单向函数是易于计算但求逆困难的函数。 而陷门单向函数是在不知道陷门信息情况下求逆困难,而在知道陷门信息时易于求逆的函数。 3 公开密钥算法的特点 (1)发送者用加密密钥PK(public key)对明文X加密后,接收者用解密密钥SK (secure key)解密,即可恢复出明文,或写为: DSK(EPK(X))? X 此外,加密和解密的运算可以对调,即 EPK(DSK(X)) ? X。 (2)加密密钥是公开的,但不能用它来解密,即 DPK(EPK(X))? X (3)在计算机上可以容易地产生成对的PK和SK。 (4)从已知的PK实际上不可能推导出SK,即从PK到SK是“计算上不可行的”。 (5)加密和解密算法都是公开的。 4 公钥密码系统用于三个方面 (1) 通信保密:此时将公钥作为加密密钥,私钥作为解密密钥,通信双方不需要交换密钥就可以实现保密通信。 (2) 数字签名:将私钥作为加密密钥(数字签名),公钥作为解密密钥(验证签名),可实现由一个用户对数据加密而使多个用户解读。 《中华人民共和国电子签名法》已于2005年4月1日实行。 (3) 密钥交换:通信双方交换会话密钥,以加密通信双方后续连接所传输的信息。 Diffie -Hellman密钥交换协议 –-只能用来交换密钥 实际应用中,考虑效率和安全性两个因素,通常用非对称密钥密码传递密钥,用对称密钥密码系统实现保密通信。 公钥密码算法一般比对称算法慢1000倍 5 对称密钥与非对称密钥的比较 4.2 RSA密码系统4.2.1 RSA算法 第一个较完善的公开密钥算法RSA (取名字的首字母)。 RSA密码系统的安全性基于大数分解的困难性。 求一对大素数的乘积很容易,但要对这个乘积进行因式分解则非常困难(求逆)。 因此,可以把一对大素数的乘积公开作为公钥,而把素数作为私钥,从而由一个公开密钥和密文中恢复出明文的难度等价于分解两个大素数之积。 公钥密码系统一般都涉及数论的知识,如素数、欧拉函数、中国剩余定理等等。 1 加密算法 若用整数X表示明文,用整数Y表示密文(X和Y均小于n),则加密和解密运算为: 加密:Y ? Xe mod n 解密:X ? Yd mod n (encryption discryption ) 2 密钥的产生 现在讨论RSA公开密钥密码体制中每个参数是如何选择和计算的。 ① 计算n。用户秘密地选择两个大素数p和q,计算出n ? pq。n称为RSA算法的模数。 ② 计算φ(n)。 计算 n的欧拉函数 φ(n)?(p ? 1)(q ? 1) ③ 选择e。从[1, φ(n) ? 1]中选择一个与φ(n)互素的数e作为公开的加密指数。 ④ 计算d作为解密指数。用户计算出满足下式的d ed ?1 modφ(n) 即:(ed –1) modφ(n)=0 由此推出 ed =t φ(n)+1 (t 是大于等于1的正整数) ⑤ 得出所需要的公开密钥和秘密密钥: 公开密钥(即加密密钥)PK ? {e, n} 秘密密钥(即解密密钥)SK ? {d, n} 其中,p、q、φ(n
文档评论(0)