公钥密码技术全解PPT教学课件

合集下载

公钥密码技术全解PPT课件

公钥密码技术全解PPT课件
加密算法E和解密算法D可逆
方案1:c=E(m,PK), m=D(c, SK) 方案2:c=E(m,SK), m=D(c, PK)
2020年9月28日
5
公开密钥密码的优点
简化密钥管理 实现数字签名
签名需要有无法被他人获悉的能代表自身的 秘密信息
签名验证时不会泄漏上述秘密信息
密钥交换
实现通过公开网络环境下的密钥协商
新技术
双密钥:ke≠kd 非对称加密:使用其中一个密钥加密,使用另一个密钥解密 可公开一个密钥:仅知道密码算法和公钥要确定私钥在计算
上是不可行的
2020年9月28日
4
公钥密码体制的原理
五元组(M,C,K,E,D)
双密钥K=< Ke,Kd>
Ke ≠ Kd且由Ke 不能计算出 Kd ; Ke可公开, Kd保密K=(PK, SK) PK为公钥,SK为私钥 SK严格保密,可作为个人的身份指纹
2020年9月28日
13
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
2020年9月28日
K(n, p,q,a,d) n,a,公开;p,q,d保密
加 密 过 程 :mamodnc,加 密 密 钥 a
解 密 过 程 :cdmodnm,解 密 密 钥 a
2020年9月28日
11
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

第九章公钥密码学-PPT课件

第九章公钥密码学-PPT课件

3.公钥加密方案
4.公钥密码理论




由私钥及其他密码信息容易计算出公开密钥 (a polynomial time (P-time) problem) 由公钥及算法描述,计算私钥是难的 (an NPtime problem) 因此,公钥可以发布给其他人(wishing to communicate securely with its owner ) 密钥分配问题不是一个容易的问题(the key distribution problem )





public-key/two-key/asymmetric 包 括两个密钥: 公开密钥(a public-key), 可以被任何人知 道, 用于加密或验证签名 私钥( private-key), 只能被消息的接收者 或签名者知道,用于解密或签名 加密或验证签名者不能解密或多或生成签 名. 是密码学几千年历史中最有意义的结果
例子: 1. 选素数p=47和q=71,得n=3337, (n)=46×70=3220; 2. 选择e=79,求得私钥d=e -1 1019(mod 3220)。 3. 公开n=3337和e=79. 4. 现要发送明文688,计算: 68879(mod 3337)=1570 5.收到密文1570后,用私钥d=1019进行解密: 15701019(mod 3337)=688

Signature Schemes
用于生成对某消息的数字签名 私钥的拥有者生成数字签名 任何人可以用公钥验证签名
6.公钥的安全性



依赖于足够大大的困难性差别 类似与对称算法,穷搜索在理论上是能够破解公 钥密码 exhaustive search 但实际上,密钥足够长 (>512bits) 一般情况下,有一些已知的困难问题(hard problem” 要求足够大的密钥长度 (>512 bits) 导致加密速度比对称算法慢

06公钥密码.ppt (恢复)信息安全概论 教学课件

06公钥密码.ppt  (恢复)信息安全概论 教学课件
(3)若ac bc mod m,且(c,m)=d, 则 ab mod m/d; 特别的,若(c,m)=1,则ab mod m
(4)若m≥1,(a,m)=1,则存在c使得 ac1 mod m,称c是a对模m的逆,记做a-1
同余
(5)设a1和a2为任意整数,op为操作符,如+、 -等,则:
(a1 op a2) mod m=( (a1 mod m) op (a2 mod m)) mod m
类是模m的既约同余类。 在模m的一个完全剩余系中,所有与m互素的数的集合
构成模m的既约剩余系。
eg. m=5 {0,1,2,3,4} {1,2,3,4}
m=10 {0,1,2,...9} {1,3,7,9} •欧拉函数
模m的所有既约同余类的个数记为φ(m),通常称作 Euler函数。 eg. φ(5)=4, φ(10)=4
公钥密码基于的数学难题
• 背包问题 • 大整数分解问题(The Integer Factorization
Problem,RSA体制) • 有限域的乘法群上的离散对数问题
(The Discrete Logarithm Problem, ElGamal体制)
• 椭圆曲线上的离散对数问题(The Elliptic Curve Discrete Logarithm Problem, 类比的ElGamal体制)
Fermat小定理
•Fermat小定理: p素数,(a,p)=1,则: ap-1 1 mod p •推 定论理: p素数,a是任意整数,则: ap a mod p
若(a,m)=1,则同余方程 ax1 mod m有唯一的解 eg. 7x 1 mod 5 x=3,8,13,...
证明:一定有解,因为aaφ(m)-1 1 mod m 若有不同的解x1,x2,则ax1 ax2 mod m 由于(a,m)=1,则x1 x2 mod m

密码学公钥密码-PPT

密码学公钥密码-PPT

RSA算法得论证
假设截获密文C, 从中求出明文M。她知道 M≡Cd mod n,
因为n就是公开得,要从C中求出明文M,必须先求出d,而d 就是保密得。但知道,
ed≡1 mod Ø(n), E就是公开得,要从中求出d,必须先求出Ø(n),而Ø(n)就是 保密得。
RSA算法得论证
在计算上由公开密钥不能求出解密密钥 但知道,Ø(n)=(p-1)(q-1) 要从中求出Ø(n),必须先求出p与q,而p与q就是保密得。 知道 n=pq,要从n求出p与q,只有对n进行因子分解。 而当n足够大时,这就是很困难得。 只要能对n进行因子分解,便可攻破RSA密码。由此可以 得出,破译RSA密码得困难性<=对n因子分解得困难性。 目前尚不能证明两者就是否能确切相等,因为不能确知除 了 对n进行因子分解得方法外,就是否还有别得更简捷得破译 方法。 目前只有Rabin密码具有:
注:严格来说,公开钥为 e,秘密钥为 d, n 算做公开信息,p,q 为保密信息
2. 加密 先将明文比特串分组,使得每个分组对应的十进制数小于 n,
即分组长度小于 log2n,设分组大小为 k, 2k < n ≤ 2k+1。 然后对每个明文分组 m,作加密运算: c≡me mod n
3. 解密 对密文分组的解密运算为: m≡cd mod n
见:第8章 数论入门、
经典例子
RSA算法 Diffe-Hellman密钥交换算法 ElGamal密码体制 椭圆曲线密码体制ECC
RSA公开密钥算法
RSA算法描述 RSA得实现问题 RSA得安全性
RSA公开密钥算法
1977年由Ron Rivest、Adi Shamir与Len Adleman发明,1978年公布 就是一种分组加密算法

(完整版)公钥密码技术PPT课件

 (完整版)公钥密码技术PPT课件
12
5.1.3 RSA算法实现中的计算问题
如何快速进行模指数运算?
• 模幂运算满足分配律 [ (a mod n) × (b mod n)] mod n = (a × b) mod n 利用中间结果对n取模,即降低了存储要求,并可实现高 效算法。
• 递进式指数计算
例如计算ad (mod n),为了便于计算机实现,其中指数d可
A计算会话密钥K=YBa mod p。
B计算会话密钥K=YAb mod p。
模 素 数 p=23 , 原 根 g=5 。
则可以由两个用户对同一个明文的不同加密结果,恢复出原始明文。 设 c1 me1 (modn) 、c2 me2 (modn) ,若攻击者获得这两个密文,
根据中国剩余定理推论: 存在 s、t,使得 t e1 s e2 1,使得 c1t c2s m(modn) ,从而恢
复出明文。
18
5.1.4 RSA体制安全性分析
• 由明密文对 (m0 ,c0 ) ,可以获得对 m0r 的加密结果,因为 (m0r )e c0r (mod n)
• 此外, 能够获得 (c 2e )(mod n) 的解密结果,就可以恢复 出c对应的明文。
17
5.1.4 RSA体制安全性分析
(5)共模攻击 通信系统中使用相同的 n,且存在两个用户的公钥 e1 和 e2 互素,
理,有: • med ≡ m1+kφ(n) ≡ m(mφ(n)) k ≡ m (mod n)
8
5.1.2 RSA加密算法的数论基础
• 定义1(同余):设a、b、m是正整数,如果m|(a-b),即
m整除(a-b),则称a和b模m同余,记为 a b(mod m)
• 定理1:(素数分解定理):对任意正整数n,存在唯一的

第9讲公钥密码概述ppt课件

第9讲公钥密码概述ppt课件

不可行的
▪ 两个密钥中任何一个都可以作为加密而另一个用作解
密(不是必须的)
基于公开密钥的加密过程
用公钥密码实现保密
▪ 用户拥有自己的密钥对(KU,KR) ▪ 公钥 KU公开,私钥KR保密
A B:YEKUb(X) B :D K R b(Y ) D K R b(E K U b(X )) X
基于公开密钥的鉴别过程
▪ 满足下列条件的函数f:
(1) 给定x,计算y=f(x)是容易的 (2) 给定y, 计算x使y=f(x)是困难的 (3) 存在z,已知z 时, 对给定的任何y,若相应的x 存在,则计算x使y=f(x)是容易的
▪ 所谓计算x= f-1(Y)困难是指计算上相当复杂,已无
实际意义
单向陷门函数说明
▪ 仅满足(1)、(2)两条的称为单向函数;第(3)条称为陷门性,
后xv m, odp
不将它们送给用户V和用户U,而是随机选取整
数 xw 1:1xw 1p2 ,并计算出 xw1 modp
将它明传给用户U,同时暂时保留 x w1 ;同时随机 选取整数 xw2:1xw2p2,并计算出 xw2 modp
后,将明传给用户V,同时暂时保留 x w 2.
具体方法
用户U计算出 k1( xw 1mo p)xu dmo pd 用户V计算出 k2( xw 2mo p)xv dmo pd
用公钥密码实现鉴别
条件:两个密钥中任何一个都可以用作加密而另外
一个用作解密
▪ 鉴别:
AALL:YEKRa(X)
ALL:DKUa(Y)DKUb(EKRa(X))X
▪ 鉴别+保密
AB:ZEKUb(DKRa(X)) B:EKUa(DKRb(Z))X
公开密钥算法
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

加 密 过 程 :m am o dnc,加 密 密 钥 a
解 密 过 程 :cdm o dnm ,解 密 密 钥 a
2020/10/16
11
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
2020/10/16
13
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
2020/10/16
2020/10/16
8
公钥密码的基本工作方式
保持机密性
c=E(m,PKB), m=D(c, SKB)
保持真实性
c=E(m,SKA), m=D(c, PKA)
SKB
Alic2e020/10/16
Bob
9
RSA公钥体制
介绍
第一个公钥密码算法 1978年由Rivest, Shamir和
Adleman提出 RSA密码被誉为是一种风格
网络信息安全
第5讲 公钥密码技术
18.10.2020
2020/10/16
1
内容
公钥密码的基本概念 RSA公钥体制 Diffie-Hellman密钥交换 公开密钥的管理
2020/10/16
2
密码学中革命-公钥密码
Whitfield Diffie
Martin Hellman
New Directions in Cryptography,
明文数据
加密数据
18
对称加密和非对称加密的混合使用
解密过程
数据加密密钥k c=(c1, c2) k=RSA (c2, skb) m=Ddes(c1, k)
数据加密 密钥
接收者 私钥
解密
数据加密 密钥
解密
2020/10/16
加密数据
明文数据
新技术
双密钥:ke≠kd 非对称加密:使用其中一个密钥加密,使用另一个密钥解密 可公开一个密钥:仅知道密码算法和公钥要确定私钥在计算
上是不可行的
2020/10/16
4
公钥密码体制的原理
五元组(M,C,K,E,D)
双密钥K=< Ke,Kd>
Ke ≠ Kd且由Ke 不能计算出 Kd ; Ke可公开, Kd保密K=(PK, SK) PK为公钥,SK为私钥 SK严格保密,可作为个人的身份指纹
估计200位的十进制数的因式分解在亿次机要进行 55万年。
安全密钥的产生
p和q的长度接近 p-1和q-1都包含大的素因子 gcd(p-1,q-1)很小
2020/10/16
16
混合密码机制
比较
RSA涉及高次幂运算,加密和解密速度较慢 DES加密和解密速度较RSA快近一个数量级 RSA宜于密钥管理而DES难于密钥管理
by Whitfield Diffie and Martin. E. Hellman,
IEEE Trans. Inform. Theory, vol. IT-22, pp. 644--654, Nov. 1976
2020/10/16
3
公钥密码的革命性意义
新理论
基本工具是数学函数而不是代换和置换 安全性是基于数学难题
2020/10/16
6
简化密钥管理
对称加密
密钥分配困难 密钥容易泄漏
通信双方都知道 密钥
密钥分配中心 KDC
密钥量大
密钥生存期短
2020/10/16
7
简化密钥管理
非对称加密
只需重点保护自己的 私有密钥
公有密钥可通过相关 机构进行下载,安全 压力小
密钥存储量小,使用 方便
密钥生存期长
幽雅的公开密钥密码 迄今理论上最为成熟完善的
公钥体制 应用广泛 安全性基于大整数分解
2020/10/16
10
RSA公钥体制
构造过程
选择两个素数p,q npq f(n)(p1)(q1) 寻找一个与f(n)互素的数dgcd(f(n),d)1 计算d逆元ada1modf(n)
K(n,p,q,a,d) n,a,公 开 ;p,q,d保 密
14
RSA的安全性
RSA破解
K(n,p,q,e,d) n,e,公 开 ;p,q,d保 密
计 算 e逆 元 dda1modf(n) f(n)(p1)(q1) npq(大 整 数 分 解 )
RSA的安全性依赖于大整数因子分解的难度 保密性良好
2020/10/16
15
RSA的安全性
安全性建议
Rivest, Shamir和Adleman建议p和q为100位的十进 制数,这样n为200位的十进制数。
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}
加密算法E和解密算法D可逆
方案1:c=E(m,PK), m=D(c, SK) 方案2:c=E(m,SK), m=D(c, PK)
2020/10/16
5
公开密钥密码的优点
简化密钥管理 实现数字签名
签名需要有无法被他人获悉的能代表自身的 秘密信息
签名验证时不会泄漏上述秘密信息
密钥交换
实现通过公开网络环境下的密钥协商
数论Euler定理 D(c,d可交换性
D(E(m))=(me)d mod n =(md))e mod n=E(D(m))
2020/10/16
12
RSA算法示例
产生密钥
选择两个素数: p=17 & q=11 计算 n = pq =17×11=187
结合使用
使用RSA进行密钥的加密/解密 使用DES进行数据的加密/解密
2020/10/16
17
对称加密和非对称加密的混合使用
加密过程
数据加密密钥k c1=Edes(m,k)
c2=RSA(k,pkb) c=(c1, c2)
数据加密 接收者
密钥
公钥
加密
加密的数据 加密密钥
加密
2020/10/16
相关文档
最新文档