第二讲之第4章公钥密码体制课件

合集下载

第4章公钥密码体制

第4章公钥密码体制

密钥
为公钥。 不再需要, 以n,e为公钥。私密钥为d。(p, q不再需要, 可以销毁。 可以销毁。)
RSA算法在计算上的可行性
加密和解密
无论是加密还是解密都需要计算某个整数的模n 整数次幂,即C=Me mod n、M=Cd mod n。但不 、 需要先求出整数的幂再对n取模,而可利用模运 算的性质: (a mod n) * (b mod n)= (a*b) mod n 对于Me mod n,可先求出M1 mod n,M2 mod n, M4 mod n……,再求Me mod n
RSA算法 RSA算法
RSA Algorithm
概况
MIT三位年轻数学家, 1979年发现了一种用数 论构造双钥的方法,称作MIT 体制 MIT体制 MIT 体制,后来被 广泛称之为RSA体制 RSA体制 RSA体制。 它既可用于加密、又可用于数字签字。 RSA算法的安全性基于数论中大整数分解的 困难性。 迄今为止理论上最为成熟完善的公钥密码体 制,该体制已得到广泛的应用。
公钥密码体制有4个组成部分
明文:算法的输入,它们是可读信息或数据,用M 表示; 密文:算法的输出。依赖于明文和密钥,对给定的 消息,不同的密钥产生密文不同。用E表示; 公钥和私钥:算法的输入。这对密钥中一个用于加 密,为Ke,此密钥公开;一个用于解密,为Kd,此 密钥保密。加密算法执行的变换依赖于密钥; 加密、解密算法
选p=7,q=17。 求n=p×q=119,φ(n)=(p-1)(q-1)=96。 取e=5,满足1<e<φ(n),且gcd(φ(n),e)=1。确 定满足d·e=1 mod 96且小于96的d,因为 77×5=385=4×96+1,所以d为77。 因此公开钥为{5,119},秘密钥为{77,119}。 设明文m=19,则由加密过程得密文为 C=195 mod 119≡2476099 mod 119=66 解密为6677mod 119=19

信息安全概论 ppt 公钥密码体制PPT

信息安全概论 ppt  公钥密码体制PPT

公钥密码体制
7
4.1 公钥密码体制的基本原理
如何设计一个公钥算法

公钥和私钥必须相关,而且从公钥到私钥不可推断

必须要找到一个难题,从一个方向走是容易的,从另一个方向 走是困难的


如何把这个难题跟加、解密结合起来
一个实用的公开密钥方案的发展依赖于找到一个陷门单向函数。
陷门单向函数

单向陷门函数是满足下列条件的函数f:
公钥密码体制 4
Bob:
Plain Text E
Cipher Text Network
Cipher Text D
Plain Text
Alice
Secret Key
Bob
公钥密码体制 5
公钥体制的主要特点:


加密和解密能力分开
多个用户加密的消息只能由一个用户解读,(用于公共网络中实现 保密通信)

这一体制的出现为解决计算机信息网中的安全提供了新的理论和 技术基础,被公认为现代公钥密码学诞生的标志。 1978 年, MIT 三位数学家 R.L.Rivest , A.Shamir 和 L.Adleman

发明了一种用数论构造双钥体制的方法,称作MIT体制,后来 被广泛称之为RSA体制。
公钥密码体制
3
4.1 公钥密码体制的基本原理
公钥密码学与其他密码学完全不同:

公钥算法基于数学函数而不是基于替换和置换 使用两个独立的密钥 公钥密码学的提出是为了解决两个问题:

密钥的分配 数字签名
基本思想和要求

用户拥有自己的密钥对(KU,KR),即(公开密钥,私有密钥)

公钥KU公开,私钥KR保密 AB:Y=EKUb(X) B:DKRb(Y)= DKRb(EKUb(X))=X

第四章公钥密码体制PPT精品文档28页

第四章公钥密码体制PPT精品文档28页

基本特征
两个密钥:
使用一个密钥进行加密,用另一个相关的密钥进行 解密
用加密密钥生成的密文只有使用其对应的解密密钥才能解 密。
两个密钥的关系满足:
两个密钥是不相同; 且在仅知道密码算法和加密密钥的情况下,要推断解密密
钥在计算上是不可行的。
优点
密钥管理
加密密钥是公开的; 解密密钥需要妥善保存; 在当今具有用户量大、消息发送方与接收方具有明显的信息
可以提供单向函数的三大数学难题
大整数分解问题(简称IFP); 离散对数问题(简称DLP); 椭圆曲线离散对数问题(简称ECDLP)。
公钥密码算法基础
单向陷门函数
对于一个单向函数 f (x) ,如果其逆函数 在 f 1(y) 已知某些辅助信息的情况下容易求解得出,则称 该单向函数 f (x) 为单向陷门函数。
通信的一方利用某种数学方法可以产生一个密钥对,一个 称为公钥(Public-key),另外一个称为私钥(Private-key)。 该密钥对中的公钥与私钥是不同的,但又是相互对应的,并 且由公钥不能推导出对应的私钥。选择某种算法(可以公开) 能做到:用公钥加密的数据只有使用与该公钥配对的私钥才 能解密。
RSA公钥密码算法(续)
算法内容 (1)公钥
选择两个互异的大质数 p和 q ,使 npq,n p 1 q 1 , (n)是
欧拉函数,选择一个正数 e,使其满足 e ,n 1 ,n 1, 则将 Kp n,e作为公钥。
(2)私钥
求出正数d使其满足e d 1 mn o ,n d 1 ,则将
Ks d,p,q作为私钥。
(3)加密变换
将明文 M作变换,使 CEp K M M emn o,d 从而得到密文 C。

第四章-公钥密码体制

第四章-公钥密码体制
(p-1)! = 12…(p-1) [(a mod p)(2a mod p)…((p-1)a mod p)] mod p [a2a…(p-1)a] mod p [ap-1(p-1)!] mod p 注意到(p-1)!与p互素,因此定理成立.
• 推论: p素数,a是任意整数,则: ap a mod p
– M kφ(n)+1=M mod n
RSA算法举例(1)
p = 53,q = 61,n = pq = 3233, φ(n)=52x60 = 3120 令d = 791,则e = 71 令m = RE NA IS SA NC E 即m = 1704 1300 0818 1800 1302 0426 170471 mod 3233 = 3106,…, C = 3106 0100 0931 2691 1984 2927
欧拉定理
• 证明: • R={x1,x2,…,x(n)}为所有小于n且与n互素的正整数,考虑集 合 • S={(ax1mod n), (ax2mod n),…, (ax(n) mod n)} • (aximod n)与n互素 • (aximod n)两两不等: • (aximod n) = (axjmod n) ximod n = xjmod n • S有(n)个元素 • 故S也是所有小于n且与n互素的正整数,因此S=R,从而 xi=(aximod n)((axi)) mod n • (a(n) xi) mod n • 注意到xi 与n互素,从而得到结论.
费马(Fermat)定理
• 若p是素数,a是正整数,且gcd(a,p)=1,则ap1≡1mod p • 证明:考虑集合{1,2,…,p-1},对每个数乘以a,得到 集合{a mod p,2a mod p,…,(p-1)a mod p},对于p, 后者两两不同且都在1与p-1之间,因此两个集合相 同,于是:

公钥密码体制 PPT课件

公钥密码体制 PPT课件
其他任何人都可以获得Ea,因此,任何人 都可以对s解密(加密、验证);只有A才有 Da,因此,只有A才可以加密(解密、签 名)
公钥密码体制 – RSA体制
RSA公钥密码体制 – 简介
1978年,Rivest、Shamir、Adleman一 起提出RSA公钥密码体制
RSA基于大整数分解难题 n是由两个素数相乘得到,已知n,不存在
RSA公钥密码体制 – 算法
加密:
◦ 设消息m < n, c = m e mod n
解密:
◦ m = c d mod n
解密证明:
◦ c d mod n = m ed mod n = m 1 mod φ(n) mod n = m k* φ(n) + 1 mod n
◦ m与n互素时,由欧拉定理 m k* φ(n) + 1 mod n = m k* φ(n) * m mod n = = m (φ(n))k * m mod n = m mod n , (m φ(n) mod n = 1)
公钥密码体制概念
公钥密码体制的建立是依据数学难问题 寻找一个单向陷门函数f:XY,其中
计算y = f(x)很容易,但如果不知道陷 门,则计算x = f-1(y)很难 现阶段公开且未解决的数学难题:
◦ 大整数分解难题(RSA) ◦ Zp域上的离散对数问题(DH) ◦ EC上点域的离散对数问题(EC)
安全的RSA通常认为需要使用1024比 特以上
国际上建议采用2048、4096比特密钥 长度
RSA用于密钥交换的功能正在被ECDH 所取代
RSA用于数字签名的功能正在被 ECDSA所取代
RSA公钥密码体制 – 数学基础
模运算 缩余系 费马小定理 a p-1 = 1 mod p 欧拉函数 φ(n) 欧拉定理 a φ(n) = 1 mod n 中国剩余定理(加速解密) 二次剩余(RSA参数选取) 欧几里德算法(逆的计算) 模幂的计算

第4章公钥密码体制

第4章公钥密码体制

4.2.3 乘法逆元
如果gcd(a,b)=1,那么: 存在a-1,使a* a-1 ≡1 mod b 存在b-1,使b* b-1 ≡1 mod a 这里,把a-1称为a模b的乘法逆元, b-1称为b 模a的乘法逆元
用扩展的欧几里德算法求乘法逆元
gcd(11111,12345)
12345=1*11111+1234 11111=9*1234+5 1234=246*5+4 5=1*4+1 4=4*1+0
characteristic of algorithms
It is computationally infeasible to determine the decryption key given only knowledge of the cryptographic algorithm and the encryption key. Either of the two related keys can be used for encryption, with the other used for decryption.
4.2 数论基础
数论中的许多概念在设计公钥密码算法时是 必不可少的.掌握这些基础知识对于理解公 钥密码体制的原理和应用十分重要.
整 除
定理:设整数a和b,如果存在整数k,使 b=ak,则说b能被a整除,记作:a|b 例:3|15,-15|60 性质:
对所有整数a≠0, a|0, a|a成立 对任意整数b, 1|b成立
本原根的性质
如果a是n的本原根,且:
x1=a1 mod n,x2=a2 mod n,…,xФ(n)=aФ(n) mod n
则:
x1≠x2≠…≠xФ(n),且xФ(n)=1

公钥密码体制课件

公钥密码体制课件

THANKS
感谢观看
云计算与大数据
数据存储加密
对存储在云端的数据进行加密,确保数据的安全性和 隐确保只有授权用户 能够访问云端数据。
容灾备份
在大数据场景中,公钥密码体制用于容灾备份数据的 加密和完整性校验。
04
公钥密码体制的实现技术
RSA算法
总结词
RSA算法是一种非对称加密算法,基于数论中的一些基础性质,使用一对公钥和私钥进行加密和解密操作。
数据完整性
通过数字签名等技术,公钥密码体 制能够确保数据的完整性和真实性。
身份认证
公钥密码体制可用于身份认证,验 证发送方的身份,防止伪造和冒充。
公钥密码体制的历史与发展
历史
公钥密码体制的思想起源于20世纪 70年代,最早的公钥密码体制是RSA 算法。
发展
随着技术的不断进步,公钥密码体制 的应用越来越广泛,涉及到网络安全、 电子支付、电子政务等领域。
证书吊销与信任链管理
在公钥密码体制中,证书用于验证公 钥的合法性,但证书可能被吊销或受 到信任链上的信任问题影响。
管理证书吊销列表和信任链的有效性 是确保公钥密码体制安全的重要环节, 需要定期检查和更新证书状态,以及 在必要时撤销或更新信任链。
06
公钥密码体制的未来展望
新算法的研究与发展
算法优化
详细描述
RSA算法由Rivest、Shamir和Adleman于1977年提出,是目前应用最广泛的公钥密码算法之一。其安全性基于 大数质因数分解的困难性,通过选取适当的参数,能够保证很高的安全性。RSA算法可用于加密、数字签名等应 用场景。
ECC算法
总结词
ECC算法是一种基于椭圆曲线的公钥密码算法,具有密钥长度相对较小、加密速度快、安全性高等优 点。

第4章公钥密码体制

第4章公钥密码体制

第4章公钥密码体制(1)内容●公开密钥密码算法−公开密钥密码算法的基本思想−公开密钥密码算法的数学基础−一些经典算法(2)概述[37:188]●也称“双钥密码体制”。

是密码学史上划时代的事件,为计算机信息网中的安全提供了新的理论和基础。

●最大特点:采用两个密钥将加密和解密能力分开;一个公开作为加密密钥(公钥),一个为用户专用,作为解密密钥(私钥),通信双方无需实现交换密钥就可进行保密通信。

●从已经公开的公钥或密文分析出明文或私钥,在计算上是不可行的。

●若用公钥作为加密密钥,以私钥作为解密密钥,则可实现多个用户加密的消息只能由一个用户解读(用于保密通信);反之,以私钥作为加密密钥而以公钥作为解密密钥,则可实现由一个用户加密的消息而使多个用户解读(用于数字签名)。

(3)理论:基于数学函数,不基于替换和置换(4)安全性•和对称方案一样,强力攻击在计算上不可行的,但使用的密钥更大(>512bits)•安全性基于一些陷门单向函数,只是计算上不可行–要求使用非常大的数–因此比对称方案计算速度慢•选择明文攻击–通过对报文附加随机比特来实现(5)对公钥密码的常见误解:●从密码分析角度看,公钥密码比传统密码更安全;●公钥密码是一种通用的方法,所以传统密码已经过时;●传统密码中与密钥分配中心的握手是一件异常麻烦的事,与之相比,用公钥密码实现密钥分配则非常简单。

(6)公开密钥密码经典算法– RSA算法– Diffie-Hellman密钥交换算法–背包算法– EIGamal算法–椭圆曲线密码算法ECC4.1 公钥密码体制的基本原理(一)传统密码最困难的问题●密钥分配问题:要求通信双方共享或通过第三方分配,后一种情形容易泄密,密码系统再好也无用。

密钥必须通过某一信道协商,对这个信道的安全性的要求比正常的传送消息的信道的安全性要高。

●数字签名问题:传统加密算法无法实现抗抵赖的需求。

(二)其它问题●密钥量大,n个用户,需要()212-=nnCn个密钥,管理更困难;●每个用户要记n-1个密钥,用载体(纸张、外存等)记录极不安全。

密码学公钥密码-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--公钥密码体制

公钥密码体制
17
4.1 一些数学基础
❖ 费马(Fermat)定理:
p素数,a是整数且不能被p整除,则:ap-1 1 mod p 例:a = 7,p = 19,则ap-1 = 718 1 mod 19
a = 3,p = 5,则ap-1 = 34 1 mod 5
❖ 欧拉(Euler)函数(n):
如果gcd(a,b)=1,则称a和b互素。
公钥密码体制
11
素数和素分解
任一整数p>1,若只有+(-)1和+(-)p为约数,就称其 为素数(prime),否则为一合数。素数在数论和现代密码学中扮演 重要角色。 判断:
所有奇数都是素数。所有偶数都是合数。 除了1,自然数不是素数就是合数。 除了2,5,个位上是0,2,4,6,8,5的数都是合数。 两个自然数相乘,乘得的数一定是合数。 除了3,能被3整除的数都是合数。 一个自然数不是素数就是合数。 合数至少有三个因数。 素数一定是奇数。合数一定是偶数。 1不是素数也不是合数。
公钥密码体制
16
4.1 一些数学基础
❖ 模运算:
求余数运算(简称求余运算)a mod n将整数a映射到集合
{0,1, …,n-1},称求余运算在这个集合上的算术运算为模运算
模运算有以下性质: [(a mod n)+(b mod n)] mod n = (a+b) mod n [(a mod n)- (b mod n)] mod n = (a-b) mod n [(a mod n)×(b mod n)] mod n = (a×b) mod n
❖ 数论简介:
数论是密码学特别是公钥密码学的基本工具。研究“离散数字集合” 的相关问题。

公钥密码体制及典型算法课件

公钥密码体制及典型算法课件
基于数学难题 • 标志性文献
W.Diffie and M.E.Hellman, New Directions in Cryptography, IEEE Transaction on Information Theory, V.IT-22.No.6, Nov 1976, PP.644-654
学习交流PPT
在计算上是容易的。 ② 发方A用收方的公开钥对消息m加密以产生密
文c,即c=EPKB[m] 在计算上是容易的。
③ 收方B用自己的秘密钥对c解密,即m=DSKB[c] 在计算上是容易的。
学习交流PPT
25
公钥密码算法应满足的要求
④ 敌手由B的公开钥PKB求秘密钥SKB在计算上是不 可行的。
⑤ 敌手由密文c和B的公开钥PKB恢复明文m在计算 上是不可行的。
• 密钥分配问题不是一个容易的问题(the key distribution problem )
学习交流PPT
6
公钥算法分类
• Public-Key Distribution Schemes (PKDS,公钥分配系统)
• 用于交换秘密信息(依赖于双方主体) • 常用于对称加密算法的密钥
• Public Key Encryption (PKE,公钥加密)
学习交流PPT
15
公钥密码体制的原理
• ③ A要想向B发送消息m,则使用B的公开钥加密m, 表示为c=EPKB[m],其中c是密文,E是加密算法。
• ④ B收到密文c后,用自己的秘密钥SKB解密,表示 为m=DSKB[c],其中D是解密算法。
学习交流PPT
16
公钥密码体制认证框图
学习交流PPT
17
学习交流PPT
13
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3)为保证安全性,n 至少也要 600 bits以上 ,且还在增加。在运算上要付出代价。
12. RSA算法和DES算法比较
比较1
在加密、解密的处理效率方面,DES算法 优于RSA算法。因为DES密钥的长度只有56 比特,可以利用软件和硬件实现高速处理; RSA算法需要进行诸如200比特整数的乘幂 和求模等多倍字长的处理,处理速度明显慢于 DES算法。
用户将自己的公开(加密)密钥登记在一个公 开密钥库或实时公开,秘密密钥则被严格保密 。信源为了向信宿发送信息,去公开密钥库查
一对密钥 找对方的公开密钥,或临时向对方索取公钥, 将要发送的信息用这个公钥加密后在公开信道 上发送给对方,对方收到信息(密文)后,则 用自己的秘密(解密)密钥解密密文,读取信 息。
对方收到消息后,为了确定信源的真实性,用对方的解密密钥解 密签名消息──称为(签名)验证,如果解密后的消息与原消息 一致,则说明信源是真实的,可以接受,否则,拒绝接受。
4.2 Diffie-Hellman 密钥交换算法
W.Diffie和M.E.Hellman于1976年提出的,让A和B 两个陌生人之间建立共享秘密密钥的公开密钥算 法,称为Diffie-Hellman算法,它定义了公开密 钥密码体制。它的目的是使得两个用户安全地交 换一个密钥以便用于以后的报文加密,这个算法 本身限于密钥交换的用途。许多商用产品都使用 这种密钥交换技术。
总之,RSA对用户要求太苛刻,密钥不能常更换。
9.RSA算法的攻击方法
(1)选择密文攻击
(2)过小加密指数e (3) RSA的公共模数攻击 (4)RSA的计时攻击法
10. RSA的实用性
公开密钥密码体制有优点,但它的运算量大 ,计算复杂。
结合对称密钥密码体制使用
RSA算法在互联网的许多方面得以广泛应 用。
2.交换示例(续) (2)交换YA和YB; (3)交换密钥后,A、B分别计算共享的秘密
会话密钥KA、KB: 用 户A计 算: KA=YB XA mod 47=178 mod
47=4 mod 47
用户B计算: KB=YA XB mod 47=2810 mod 47=4 mod 47
A和B双方独立地决定采用数据“4”作为 会话密钥。
第二讲 信息安全技术
第2章 密码技术基础 第3章 对称密码体系 第4章 公钥密码体系 第5章 公钥基础设施PKI 第6章 信息隐藏技术
第四章 内容
4.1公钥密学概述 4.2 Diffie-Hellman 密钥交换算法 4.3 RSA算法
4.1 公钥密码概述
1976年,Diffie 和Hellmann提出了公开密 钥密码体制(简称公钥体制),它的加密 、解密密钥是不同的,也是不能(在有效 的时间内)相互推导。所以,它可称为双 钥密码体制。
公开密钥=(n,e)=(143,7)。 ③ 对于这个e值,可以算出其逆:d=103。 ④ 因为e×d=7×103=721,满足e×d mod z =1 ;即721 mod 120=1成立。
则秘密密钥=(n,d)=(143,103)。
6.RSA例2
张小姐需要发送机密信息(明文)m=85给李 先生,她已经从公开媒体得到了李先生的公开密 钥(n,e)=(143,7),于是她算出加密值:
c= me mod n=857 mod 143=123,并发送给 李先生。
李先生在收到密文c=123后,利用只有他自己 知道的秘密密钥计算:m= cd mod n =123103 mod 143=85,所以,李先生可以得到张小姐发 给他的真正的信息m=85,实现了解密。
7.RSA算法的安全性
依赖于大数分解,但是否等同于大数分解一直 未能证明。不管怎样,分解n是最显然的攻击方法 。 1994年4月26日,美国各大媒体报道:由RSA发 明人在17年前出的129位数字已被因子分解,并破 解了附带的密语:
可见,这里省去了从秘密信道传递密钥的过程 。这是公钥体制的一大优点。

(2)保护信息机密
任何人均可将明文加密成密文,此后只有拥有解密密钥 的人才能解密。
(3)实现不可否认功能
公钥体制用于数字签名时:
信源为了他人能够验证自己发送的消息确实来自本人,他将自己 的秘密(解密)密钥公布,而将公开(加密)密钥严格保密。与 别人通信时,则用自己的加密密钥对消息加密──称为签名,将 原消息与签名后的消息一起发送.
具体实现步骤: (1)发送方A生成用于DES加密的密钥K,为了
提高数据的安全性,每一个密钥K只用一次。 (2)发送方从密钥服务器中获取接收方的
RSA的公开加密密钥Keb,并用Keb加密DES的密 钥K形成密文Ck。
续(1)
(3)发送方A生成需要签名的信息,并用 自己的RSA的解密密钥Kda和Keb共同形成 数字签名。
The magic words are squeamish ossifrage. 目前,已能分解140位十进制的大素数。因此, 模数n必须选大一些。 RSA最快的情况也比DES慢上100倍,无论是软 件还是硬件实现。速度一直是RSA的缺陷。一般只 用于少量数据加密。
8.RSA算法的脆弱性
不能证明RSA密码破译等同于大数因子分解 1) 速度问题:增大p•q将使开销指数级增长 2) 至少有9个明文,加密后不变,即me mod n=m 3) 普通用户难于选择p、q。对p、q的基本要求:
在Diffie-Hellman密钥交换算法中的单向函数 是模指数运算。它的逆过程是离散对数问题,其 Diffie-Hellman算法的保密性基于求mod p解离散 对数问题的困难。
离散对数
定义素数p的原元(原始根)为这样一个 数,他能生成1~p-1所有数的一个数。现 设a为p的原元,则
a mod p, a2 mod p, , a p1 mod p
基于背包问题的Merkle-Hellman背包公 钥体制
基于有限域上离散对数问题的ElGamal 公钥体制
基于椭圆曲线的ECC密码体制
……
公钥密码体制介绍
公钥密码体制加解密过程主要有以下几步 :
不一样的密码
安全的公开密钥密码达到的功能
(1)简化密钥分配及管理问题
公钥体制用于数据加密时:
特征与不足
特征:
•(1)仅当需要时才产生密钥,减少储存时间,减 少受攻击的机会; •(2)除对全局参数的约定外,密钥交换不需要事 先存在的基础结构。
不足:
(1)没有通信双方身份的信息; (2)计算是密集性的,容易受到阻塞性攻击; (3)没办法防止重放攻击; (4)容易受到中间人攻击。
4.3 RSA算法
续(2)
比较3 在安全性方面,DES算法和RSA算法
的安全性都较好,还没有在短时间内破译 它们的有效的方法。
比较4 在签名和认证方面,DES算法从原理
上不可能实现数字签名和身份认证,但 RSA算法能够容易地进行数字签名和身份 认证。
13. 基于DES和RSA的加密方案
设发送方为A(加密密钥为Kea,解密密钥为 Kda),接收方为B(加密密钥为Keb,解密密钥为 Kdb)。
密钥交换过程
(1)选择一个素数P和它的一个原元a;
(公2)开通密信钥方YAA选: 择自己的秘密密钥XA,并计算自己的 YA=a XA mod P
(3)通信方B选择自己的秘密密钥XB,并计算自己的 公开密钥YB: YB=a XB mod P
(4)通信双方A和B交换YA和YB; (5)A独立计算会话密钥,B独立计算会话密钥KS; (6)通信双方利用会话密钥KS进行通信。
4.RSA 的使用
发送方要加密明文M:
获得接收方的公钥 KU={e,N} 计算: C=Me mod N, where 0≤M<N
接收方解密密文C:
使用自己的私钥 KR={d,N} 计算: M=Cd mod N
注意:M必须比N小
5.RSA例1
①取两个质数p=11,q=13,p和q的乘积为 n=p×q=143,算出另一个数z=(p-1)×(q-1)=120; ②再选取一个与z=120互质的数,例如e=7,则
续(1)
比较2
在密钥的管理方面,RSA算法比DES 算法更加优越。因为RSA算法可采用公开 形式分配加密密钥,对加密密钥的更新也 很容易,并且对不同的通信对象,只需对 自己的解密密钥保密即可;DES算法要求 通信前对密钥进行秘密分配,密钥的更换 困难,对不同的通信对象,DES需产生和 保管不同的密钥。
2.交换示例 为了计算简单,使用很小数字。设P=47和47
的一个原元,a=3。
A选择秘密密钥XA=8,B选择秘密密钥XB=10, 各自计算其公开密钥。
(1)双方各自计算
用户A计算:YA=3 8mod 47=6561 mod 47=28 mod 47
用 户 B 计 算 : YB=3 10mod 47= 59049 mod 47=17 mod 47
两两互不相同,构成一个1~p-1的全体数 的一个排列。对于任意数b及素数p的原元 a,可以找到一个唯一的指数 i,满足
b ai mod p , 0<=i<=p-1
则称指数i为以a为底、模p的b的离散对数。
1.基本原理
用户A
公开 YA 秘密 XA
用户B
YB 秘密 KA 密钥交换过程 KB 会话秘密
基于RSA算法的公钥加密系统具有数据加 密、数字签名(Digital Signature)、信息 源识别及密钥交换等功能。
11. RSA算法的优缺点
优点
密钥空间大
缺点
1)产生密钥很麻烦,受到素数产生技术的限 制,因而难以做到一次一密。
2)速度太慢。RSA速度比DES慢得多,无论是 软件还是硬件实现,速度一直是RSA的缺陷。
相关文档
最新文档