- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
管理信息学第5章
2017-3-29
5.5 公钥密码算法
公钥密码体制及其设计的基本原理
RSA密码体制
2017-3-29
在私钥密码体制中,解密密钥与加密密钥相同或容易从加密密钥导出。存在的问题:
(1) 加密密钥的暴露会使系统变得不安全;
(2) 在传送密文前,发送者和接收者必须使用一个安全信道预先通信密钥 k,在实际通信中是很困难的。
私钥密码体制存在的问题
2017-3-29
公钥密码体制及其设计的基本原理
在公钥密码中,解密密钥和加密密钥不同,从一个难于推出另一个,解密和加密是可分离的,加密密钥是可以公开的。信息可通过编码被加密在一个NP-完全问题之中,以普通方法破译该密码等价于解一个NP-完全问题。
2017-3-29
如果函数 f(x) 满足:对 f (x) 的定义域中的任意 x,都容易计算函数值 f (x) ,而对于 f (x) 的值域中的几乎所有的 y,即使已知 f 要计算 f--1(y) 也是不可行的,则称 f (x) 是单向函数。
公钥密码体制:陷门单向函数(troop-door one-way function)
若给定某些辅助信息时又容易计算单向函数 f 的逆 f -1,则称 f (x) 是一个陷门单向函数。这一辅助信息就是秘密的解密密钥。公钥密码体制的安全性是指计算安全性,由求 f -1 的复杂性决定。
2017-3-29
单向函数举例
例1:y=anxn+an-1xn-1+…+a1x+a0
例2:设 n 是两个大素数 p 和 q 的乘积,b是一个正整数,对 x∈Zn ,令 f(x) ≡ xb(mod n),即 f(x) 等于被n除所得的余数,人们认为 f(x) 是一个从 Zn 到 Zn 的单向函数
2017-3-29
定义5.1 设m,n是两个整数,如果正整数 d 满足:
(1) d 整除 m 和 n,即 d|m,d|n;
(2) 若 d’|m 且 d ’|n,则 d ’|d。
则称 d 是 m 与 n 的最大公因数,记为d = (m,n)。若(m,n)=1,则称 m 与 n 互素。
RSA密码体制:互素
2017-3-29
设 n 是任一自然数,记1,2,…,n-1中与 n 互素的数的个数为 ?(n),并称 ?(n) 为欧拉(Euler)函数。
若 n = pq,其中 p 与 q是不同的素数,则? (n) = (p-1)(q-1)
定理5.1 设Z*n={ m |( m,n ) = 1,1≤ m ≤ n-1},则对?a∈Z*n,有 a?(n) ≡ 1 (mod n)
定理5.2 设 p 与 q 是两个不同的素数,n = pq,则对任意的x∈Zn={ 1,2,…,n-1 }及任意的非负整数 k,有
xk?(n)+1 ≡ x (mod n)
RSA密码体制:欧拉函数
2017-3-29
设p,q是两个不同的奇素数,n=pq,则?(n) = (p-1)(q-1),密钥k={ (n,p,q,a,b) | ab ≡ 1(mod ?(n)),a,b∈Z*n)}对每一个k=(n,p,q,a,b)
定义加密变换为:
y = Ek(x) ≡ xb (mod n),x∈Zn
定义解密变换为:
x = Dk(y) ≡ ya (mod n),y∈Zn
RSA密码体制是公开加密密钥n与b,保密解密密钥a以及辅助信息p与q
RSA密码体制:密钥
2017-3-29
例3:设用户A选择两个素数:p = 5,q = 7,
则:n = 35,? (n) = 24。
A 取a = 11∈Z*35,再由Euclidean算法求出b = a-1(mod?(n))。
公开n = 35和b = 11,保密 p = 5,q = 7和a = 11。
现在用户B想把明文 x = 2∈Z35 发送给A。B加密明文 x = 2 得密文:y = Ek(x) ≡ xb (mod 35) ≡ 211(mod 35) = 18;
B在公开信道上将加密后的密文 y = 18 发送给A,
当A收到密文 y=18 时,A解密可得:ya=1811≡2 (mod35),从而A得到B发送的明文 x=2。
RSA密码体制:举例
2017-3-29
例:设a = 11, n=35,?(n)=24 ,计算 b解: ab ≡ 1(mod ?(n)) , 即
11b = 24k+ 1,即b = (24k + 1)/11 = 2k + (2k + 1)/11 (1)
令(2k + 1)/11 = c, 则: 2k + 1 = 11c
那么 k = (
文档评论(0)