现代密码学 (杨波 著) 清华大学出版社_khdaw
杨波, 《现代密码学(第2版)》06-1

图6.1 MAC的基本使用方式
如果仅收发双方知道K,且B计算得到的MAC 与接收到的MAC一致,则这一系统就实现了以下 功能: ① 接收方相信发送方发来的消息未被篡改,这是 因为攻击者不知道密钥,所以不能够在篡改消息后 相应地篡改MAC,而如果仅篡改消息,则接收方 计算的新MAC将与收到的MAC不同。 ② 接收方相信发送方不是冒充的,这是因为除收 发双方外再无其他人知道密钥,因此其他人不可能 对自己发送的消息计算出正确的MAC。
第1轮 已知M1、MAC1,其中MAC1=CK(M1)。对 所有2k个可能的密钥计算MACi=CKi(M1),得2k-n个 可能的密钥。 第2轮 已知M2、MAC2,其中MAC2=CK(M2)。对 上一轮得到的2k-n个可能的密钥计算MACi=CKi(M2), 得2k-2×n个可能的密钥。
如此下去,如果k=αn,则上述攻击方式平均需要α 轮。例如,密钥长为80比特,MAC长为32比特, 则第1轮将产生大约248个可能密钥,第2轮将产生 216个可能的密钥,第3轮即可找出正确的密钥。
⑤ 已知x,找出y(y≠x)使得H(y)=H(x)在计算上是不 可行的。称满足这一性质的杂凑函数为弱单向杂凑 函数。 ⑥ 找出任意两个不同的输入x、y,使得H(y)=H(x) 在计算上是不可行的。称满足这一性质的杂凑函数 为强单向杂凑函数。
第⑤和第⑥个条件给出了杂凑函数无碰撞性的概念, 如果杂凑函数对不同的输入可产生相同的输出,则 称该函数具有碰撞性。
杂凑函数的目的是为需认证的数据产生一个“指 纹”。为了能够实现对数据的认证,杂凑函数应满 足以下条件: ① 函数的输入可以是任意长。 ② 函数的输出是固定长。 ③ 已知x,求H(x)较为容易,可用硬件或软件实现。 ④ 已知h,求使得H(x)=h的x在计算上是不可行的, 即满足单向性,称H(x)为单向杂凑函数。
现代密码学杨波课后习题讲解

选择两个不同的大素数p和q, 计算n=p*q和φ(n)=(p-1)*(q-1)。 选择整数e,使得1<e<φ(n)且e 与φ(n)互质。计算d,使得 d*e≡1(mod φ(n))。公钥为 (n,e),私钥为(n,d)。
将明文信息M(M<n)加密为 密文C,加密公式为 C=M^e(mod n)。
将密文C解密为明文信息M,解 密公式为M=C^d(mod n)。
课程特点
杨波教授的现代密码学课程系统介绍了密码学的基本原 理、核心算法和最新进展。课程注重理论与实践相结合, 通过大量的案例分析和编程实践,帮助学生深入理解和 掌握密码学的精髓。
课后习题的目的与意义
01 巩固课堂知识
课后习题是对课堂知识的有效补充和延伸,通过 解题可以帮助学生加深对课堂内容的理解和记忆。
不要重复使用密码
避免在多个账户或应用中使用相同的密码, 以减少被攻击的风险。
注意网络钓鱼和诈骗邮件
数字签名与认证技术习题讲
05
解
数字签名基本概念和原理
数字签名的定义
数字签名的应用场景
数字签名是一种用于验证数字文档或 电子交易真实性和完整性的加密技术。
电子商务、电子政务、电子合同、软 件分发等。
数字签名的基本原理
利用公钥密码学中的私钥对消息进行签 名,公钥用于验证签名的正确性。签名 过程具有不可抵赖性和不可伪造性。
Diffie-Hellman密钥交换协议分析
Diffie-Hellman密钥交换协议的原理
该协议利用数学上的离散对数问题,使得两个通信双方可以在不安全的通信通道上协商出一个共 享的密钥。
Diffie-Hellman密钥交换协议的安全性
该协议在理论上被证明是安全的,可以抵抗被动攻击和中间人攻击。
《现代密码学(第2版)杨波 01

保密通信系统的组成
明文消息空间M,密文消息空间C,密钥空间 K1和K2,在单钥体制下K1=K2=K,此时密钥K需 经安全的密钥信道由发送方传给接收方; 加密变换Ek1:M→C,其中k1∈K1,由加密器 完成; 解密变换Dk2:C→M,其中k2∈K2,由解密器 实现. 称总体(M,C,K1,K2,EK1,DK2)为保密通信系统.对 于给定明文消息m∈M,密钥k1∈K1,加密变 换将明文m变换为密文c,即 c=f(m,k )=E (m)m∈M,k ∈K
20世纪90年代,因特网爆炸性的发展把人类 带进了一个新的生存空间.因特网具有高度 分布,边界模糊,层次欠清,动态演化,而 用户又在其中扮演主角的特点,如何处理好 这一复杂而又巨大的系统的安全,成为信息 安全的主要问题.由于因特网的全球性,开 放性,无缝连通性,共享性,动态性发展, 使得任何人都可以自由地接入,其中有善者, 也有恶者.恶者会采用各种攻击手段进行破 坏活动.
如何产生满足保密要求的密钥以及如何将密 钥安全可靠地分配给通信双方是这类体制设 计和实现的主要课题. 密钥产生,分配,存储,销毁等问题,统称 为密钥管理.这是影响系统安全的关键因素. 单钥体制可用于数据加密,也可用于消息的 认证. 单钥体制有两种加密方式:
– 明文消息按字符(如二元数字)逐位地加密,称 之为流密码; – 将明文消息分组(含有多个字符),逐组地进行 加密,称之为分组密码.
在信息传输和处理系统中,除了预定的接收 者外,还有非授权者,他们通过各种办法 (如搭线窃听,电磁窃听,声音窃听等)来 窃取机密信息,称其为截收者. 截收者虽然不知道系统所用的密钥,但通过 分析可能从截获的密文推断出原来的明文或 密钥,这一过程称为密码分析,ห้องสมุดไป่ตู้事这一工 作的人称为密码分析员,研究如何从密文推 演出明文,密钥或解密算法的学问称为密码 分析学.
现代密码学_清华大学_杨波着+习题答案

一、古典密码(1,2,4)解:设解密变换为m=D(c)≡a*c+b (mod 26)由题目可知密文ed 解密后为if,即有:D(e)=i :8≡4a+b (mod 26) D(d)=f :5≡3a+b (mod 26) 由上述两式,可求得a=3,b=22。
因此,解密变换为m=D(c)≡3c+22 (mod 26)密文用数字表示为:c=[4 3 18 6 8 2 10 23 7 20 10 11 25 21 4 16 25 21 10 23 22 10 25 20 10 21 2 20 7] 则明文为m=3*c+22 (mod 26)=[8 5 24 14 20 2 0 13 17 4 0 3 19 7 8 18 19 7 0 13 10 0 19 4 0 7 2 4 17]= ifyoucanreadthisthankateahcer4. 设多表代换密码C i≡ AM i + B (mod 26) 中,A是2×2 矩阵,B是0 矩阵,又知明文“dont”被加密为“elni”,求矩阵A。
解:dont = (3,14,13,19) => elni = (4,11,13,8)二、流密码 (1,3,4)1. 3 级 线 性 反 馈 移 位 寄 存 器 在 c 3=1 时 可 有 4 种 线 性 反 馈 函 数 , 设 其 初 始 状 态 为 (a 1,a 2,a 3)=(1,0,1),求各线性反馈函数的输出序列及周期。
解:设反馈函数为 f(a 1,a 2,a 3) = a 1⊕c 2a 2⊕c 1a 3当 c1=0,c2=0 时,f(a 1,a 2,a 3) = a 1,输出序列为 101101…,周期为 3。
当 c1=0,c2=1 时,f(a 1,a 2,a 3) = a 1⊕a 2,输出序列如下 10111001011100…,周期为 7。
当 c1=1,c2=0 时,f(a 1,a 2,a 3) = a 1⊕a 3,输出序列为 10100111010011…,周期为 7。
现代密码学_清华大学_杨波著_部分习题答案[1]
![现代密码学_清华大学_杨波著_部分习题答案[1]](https://img.taocdn.com/s3/m/1ce7aa8502d276a200292edc.png)
= YWPKXYHVKXONPTJCHYBXLPKTB ∵ 11*19 ≡ 1 mod 26 (说明:求模逆可采用第 4 章的“4.1.6 欧几里得算法”,或者直接穷举 1~25) ∴ 解密变换为 D(c)≡19*(c-23)≡19c+5 (mod 26) 对密文 C 进行解密:
密文用数字表示为:
c=[4 3 18 6 8 2 10 23 7 20 10 11 25 21 4 16 25 21 10 23 22 10 25 20 10 21 2 20 7] 则明文为 m=3*c+22 (mod 26)
=[8 5 24 14 20 2 0 13 17 4 0 3 19 7 8 18 19 7 0 13 10 0 19 4 0 7 2 4 17]
⇒
Ri'
=
L' i −1
⊕
F
(
R' i −1
,
Ki' )
( ) ( ) ⇔
Li−1 ⊕ F (Ri−1, Ki )
'=
Li−1
⊕
F
(
R' i −1
,
Ki'
)
'
根据(i)(ii) 根据(iii)
⇔
F (Ri−1, Ki )
=
F
(
R' i −1
,
Ki' )
⇔
P(S
( E ( Ri −1 )
⊕
杨波, 《现代密码学(第2版)》02

• 初始状态由用户确定。 • 当第i个移位时钟脉冲到来时,每一级存储器ai都将 其内容向下一级ai-1传递,并计算f(a1,a2,…,an)作为 下一时刻的an。 • 反馈函数f(a1,a2,…,an)是n元布尔函数,即n个变元 a1,a2,…,an可以独立地取0和1这两个可能的值,函数 中的运算有逻辑与、逻辑或、逻辑补等运算,最后 的函数值也为0或1。
例2.3 图2.11是一个5级线性反馈移位寄存器,其 初始状态为(a1,a2,a3,a4,a5)=(1,0,0,1,1),可求出输 出序列为: 1001101001000010101110110001111100110… 周期为31。
图2.11 一个5级线性反馈移位寄存器
n级线性反馈移位寄存器的状态周期小于等于2n-1。 输出序列的周期与状态周期相等,也小于等于2n-1。
又由p(x)A(x)=φ(x)可得p(x)q(x)A(x)=φ(x)q(x)。
所以(xp-1)A(x)=φ(x)q(x)。 由于q(x)的次数为 p-n,φ(x)的次数不超过n-1,
所以(xp-1)A(x)的次数不超过(p-n)+(n-1)=p-1。
将(xp-1)A(x)写成 xp A(x)- A(x),可看出对于任意正整 数i都有ai+p=ai。 设p=kr+t, 0≤t<r,则ai+p=ai+kr+t=ai+t=ai,所以t=0,即 r | p。(证毕)
分组密码与流密码的区别就在于有无记忆性。 流密码的滚动密钥z0=f(k,σ0)由函数f、密钥k和指定 的初态σ0完全确定。 由于输入加密器的明文可能影响加密器中内部记忆 元件的存储状态,σi(i>0)可能依赖于k,σ0,x0, x1,…,xi-1等参数。
杨波, 《现代密码学(第2版)》07

由加密算法产生数字签字又分为外部保密方式 加密算法产生数字签字又分为外部保密方式 产生数字签字又分为 内部保密方式,外部保密方式是指数字签字是直 和内部保密方式,外部保密方式是指数字签字是直 接对需要签字的消息生成而不是对已加密的消息生 否则称为内部保密方式. 成,否则称为内部保密方式. 外部保密方式便于解决争议,因为第3方在处 外部保密方式便于解决争议,因为第 方在处 理争议时,需得到明文消息及其签字. 理争议时,需得到明文消息及其签字.但如果采用 内部保密方式, 内部保密方式,第3方必须得到消息的解密密钥后 方必须得到消息的解密密钥后 才能得到明文消息.如果采用外部保密方式, 才能得到明文消息.如果采用外部保密方式,接收 方就可将明文消息及其数字签字存储下来以备以后 万一出现争议时使用. 万一出现争议时使用.
由此可见,数字签字具有认证功能. 由此可见,数字签字具有认证功能.为实现上 条性质, 要求: 述3条性质,数字签字应满足以下要求: 条性质 数字签字应满足以下要求 ① 签字的产生必须使用发方独有的一些信息以防 伪造和否认. 伪造和否认. 签字的产生应较为容易. ② 签字的产生应较为容易. 签字的识别和验证应较为容易. ③ 签字的识别和验证应较为容易. ④ 对已知的数字签字构造一新的消息或对已知的 消息构造一假冒的数字签字在计算上都是不可行的. 消息构造一假冒的数字签字在计算上都是不可行的.
因此, 因此,在收发双方未建立起完全的信任关系且存在 利害冲突的情况下,单纯的消息认证就显得不够. 利害冲突的情况下,单纯的消息认证就显得不够. 数字签字技术则可有效解决这一问题. 数字签字技术则可有效解决这一问题. 类似于手书签字,数字签字应具有以下性质: 类似于手书签字,数字签字应具有以下性质: 应具有以下性质 能够验证签字产生者的身份, ① 能够验证签字产生者的身份,以及产生签字的 日期和时间. 日期和时间. 能用于证实被签消息的内容. ② 能用于证实被签消息的内容. 数字签字可由第三方验证, ③ 数字签字可由第三方验证,从而能够解决通信 双方的争议. 双方的争议.
现代密码学 (杨波 著) 清华大学出版社_khdaw

am +3 = c1am + 2 + c2 am +1 + c3am + c4am −1 + L + cm −1a4 + cm a3
.c
而第 m+3 比特应为:
om
j =1
.c
输出 1 1
注:s个01
k ≥1
om
da
课后答案网
NCUT 密码学 – 习题与答案
2010
三、分组密码 (1,2,3,4)
1. (1) 设 M’是 M 的逐比特取补,证明在 DES 中,如果对明文分组和密文分组都逐比特取补, 那么得到的密文也是原密文的逐比特取补,即 如果 Y = DESK(X),那么 Y’=DESK’(X’) 提示:对任意两个长度相等的比特串 A 和 B,证明(A⊕B)’=A’⊕B。
20
21
22
23
24
25
w .c
1. 设仿射变换的加密是 E11,23(m)≡11m+23 (mod 26),对明文“THE NATIONAL SECURITY AGENCY”加密,并使用解密变换 D11,23(c)≡11-1(c-23) (mod 26) 验证你的加密结果。 解:明文用数字表示:M=[19 7 4 13 0 19 8 14 13 0 11 18 4 2 20 17 8 19 24 0 6 4 13 2 24] 密文 C= E11,23(M)≡11*M+23 (mod 26) =[24 22 15 10 23 24 7 21 10 23 14 13 15 19 9 2 7 24 1 23 11 15 10 19 1] = YWPKXYHVKXONPTJCHYBXLPKTB ,或者直接穷举 1~25) ∵ 11*19 ≡ 1 mod 26 (说明:求模逆可采用第 4 章的“4.1.6 欧几里得算法” ∴ 解密变换为 D(c)≡19*(c-23)≡19c+5 (mod 26) 对密文 C 进行解密: M’=D(C)≡19C+5 (mod 26) =[19 7 4 13 0 19 8 14 13 0 11 18 4 2 20 17 8 19 24 0 6 4 13 2 24] = THE NATIONAL SECURITY AGENCY
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
.c
根据(i)(ii) 根据(iii)
om
da
课后答案网
NCUT 密码学 – 习题与答案 2010
da
fi ( Li −1 , Ri −1 ) = ( Li −1 ⊕ F ( Ri −1 , Ki ), Ri −1 )
则有,
kh
fi 2 ( Li −1 , Ri −1 ) = ( Li −1 ⊕ F ( Ri −1 , K i ), Ri −1 ) = fi ( Li −1 ⊕ F ( Ri −1 , Ki ), Ri −1 ) = ( Li −1 , Ri −1 ) = ( ( Li −1 ⊕ F ( Ri −1 , Ki )) ⊕ F ( Ri −1 , Ki ), Ri −1 )
w
⎡a b ⎤ ⎥, ⎣c d ⎦
.c
om
A 是 2×2 矩阵, B 是 0 矩阵, 又知明文 “dont” 4. 设多表代换密码 Ci ≡ AMi + B (mod 26) 中, 被加密设解密变换为 m=D(c)≡a*c+b (mod 26) 由题目可知 密文 ed 解密后为 if,即有: D(e)=i : 8≡4a+b (mod 26) D(d)=f : 5≡3a+b (mod 26) 由上述两式,可求得 a=3,b=22。 因此,解密变换为 m=D(c)≡3c+22 (mod 26) 密文用数字表示为: c=[4 3 18 6 8 2 10 23 7 20 10 11 25 21 4 16 25 21 10 23 22 10 25 20 10 21 2 20 7] 则明文为 m=3*c+22 (mod 26) =[8 5 24 14 20 2 0 13 17 4 0 3 19 7 8 18 19 7 0 13 10 0 19 4 0 7 2 4 17] = ifyoucanreadthisthankateahcer
kh
w
解:
dont = (3,14,13,19) 设 A= ⎢
=>
elni = (4,11,13,8)
w
则有:
可求得 A = ⎢
第 1 页
若侵犯了您的版权利益,敬请来信通知我们! ℡
kh
⎡10 13⎤ ⎥ ⎣ 9 23⎦
da
⎡ 4 ⎤ ⎡a b ⎤ ⎡ 3 ⎤ ⎡13⎤ ⎡ a b ⎤ ⎡13⎤ ⎢11⎥ = ⎢ c d ⎥ ⎢14 ⎥ (mod 26) , ⎢ 8 ⎥ = ⎢ c d ⎥ ⎢19 ⎥ (mod 26) ⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎣ ⎦
课后答案网,用心为你服务!
大学答案 --- 中学答案 --- 考研答案 --- 考试答案 最全最多的课后习题参考答案,尽在课后答案网()! Khdaw团队一直秉承用心为大家服务的宗旨,以关注学生的学习生活为出发点, 旨在为广大学生朋友的自主学习提供一个分享和交流的平台。 爱校园() 课后答案网() 淘答案()
w .c
om
F ( R, K ) = P( S ( E ( R) ⊕ K )) 。 因此有如下推理:
Y = DES K ( X ) ⇒ Y ' = DES K ' ( X ') ⇔
.k
⇔ Ri = Li −1 ⊕ F ( Ri −1 , Ki ) ⇒ Ri' = L'i −1 ⊕ F ( Ri'−1 , Ki' )
20
21
22
23
24
25
w .c
1. 设仿射变换的加密是 E11,23(m)≡11m+23 (mod 26),对明文“THE NATIONAL SECURITY AGENCY”加密,并使用解密变换 D11,23(c)≡11-1(c-23) (mod 26) 验证你的加密结果。 解:明文用数字表示:M=[19 7 4 13 0 19 8 14 13 0 11 18 4 2 20 17 8 19 24 0 6 4 13 2 24] 密文 C= E11,23(M)≡11*M+23 (mod 26) =[24 22 15 10 23 24 7 21 10 23 14 13 15 19 9 2 7 24 1 23 11 15 10 19 1] = YWPKXYHVKXONPTJCHYBXLPKTB ,或者直接穷举 1~25) ∵ 11*19 ≡ 1 mod 26 (说明:求模逆可采用第 4 章的“4.1.6 欧几里得算法” ∴ 解密变换为 D(c)≡19*(c-23)≡19c+5 (mod 26) 对密文 C 进行解密: M’=D(C)≡19C+5 (mod 26) =[19 7 4 13 0 19 8 14 13 0 11 18 4 2 20 17 8 19 24 0 6 4 13 2 24] = THE NATIONAL SECURITY AGENCY
am +3 = c1am + 2 + c2 am +1 + c3am + c4am −1 + L + cm −1a4 + cm a3
.c
而第 m+3 比特应为:
om
j =1
.c
输出 1 1
注:s个01
k ≥1
om
da
课后答案网
NCUT 密码学 – 习题与答案
2010
即第 m+3 比特为 0,因此不可能为 1. M 的散列值相同。
若侵犯了您的版权利益,敬请来信通知我们! ℡
kh
da
= c1 ⋅ 1 + c2 ⋅ 0 + c3 ⋅ 1 + c4 ⋅ 0 + LL + cm −1 ⋅ 1 + cm ⋅ 0
= ∑ c2 j −1 = 0
s
w
1. 3 级 线 性 反 馈 移 位 寄 存 器 在 c3=1 时 可 有 4 种 线 性 反 馈 函 数 , 设 其 初 始 状 态 为 (a1,a2,a3)=(1,0,1),求各线性反馈函数的输出序列及周期。 解:设反馈函数为 f(a1,a2,a3) = a1⊕c2a2⊕c1a3 当 c1=0,c2=0 时,f(a1,a2,a3) = a1,输出序列为 101101…,周期为 3。 当 c1=0,c2=1 时,f(a1,a2,a3) = a1⊕a2,输出序列如下 10111001011100…,周期为 7。 当 c1=1,c2=0 时,f(a1,a2,a3) = a1⊕a3,输出序列为 10100111010011…,周期为 7。 当 c1=1,c2=1 时,f(a1,a2,a3) = a1⊕a2⊕a3,输出序列为 10101010…,周期为 2。
解: 根据题目条件,可知初始状态 s0 为:
设该 LFSR 的输出序列满足如下递推关系:
s0 = (a1 , a2 ,L , am −1 , am ) = (0,1,..., 0,1)
hd
第 2 页
w
则第 m+1, m+2 个比特为:
am + k = c1am + k −1 + c2 am −1 + L cm ak ,
da
w
(2) 对 DES 进行穷举搜索攻击时,需要在由 256 个密钥构成的密钥空间进行。能否根据(1) 的结论减少进行穷搜索攻击时所用的密钥空间。
.c
om
根据(iii )可知 E ( Ri −1 ) ⊕ Ki = ( E ( Ri −1 ) ⊕ Ki' )' = ( E ( Ri −1 ))' ⊕ Ki
w .c
om
kh
3. 设 n=4,f(a1,a2,a3,a4)=a1⊕a4⊕1⊕a2a3,初始状态为(a1,a2,a3,a4)=(1,1,0,1),求此非线性 反馈移位寄存器的输出序列及周期。 解:列出该非线性反馈移位寄存器的状态列表和输出列表:
状态(a1,a2,a3,a4) f(a1,a2,a3,a4)
.k
hd
课 后
2. 设由仿射变换对一个明文加密得到的密文为 edsgickxhuklzveqzvkxwkzukvcuh,又已知明文 的前两个字符是“if” 。对该密文解密。
aw
答
案
网
.c
om
da
课后答案网
NCUT 密码学 – 习题与答案
2010
二、流密码 (1,3,4)
课后答案网
NCUT 密码学 – 习题与答案 2010
( 声 明:非 标 准 答 案,仅 供 参 考 )
一、古典密码 (1,2,4)
字母 数字
A
B
C
D
E
F
G
H
om
I J K L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
w
w
若侵犯了您的版权利益,敬请来信通知我们! ℡
kh
解:(1) 根据取补的性质,密钥空间 K 可分成两部分 K1/2 和 K’1/2,即 K= K1/2∪K’1/2 对于任意一个 k∈K1/2,它的取补 k’∈K’1/2;对于任意一个 k∈K’1/2,它的取补 k’∈ K1/2。即,K1/2 和 K’1/2 是一一对应的;它们的空间大小都是 256/2=255。 其中 x、 y 分别为明文和密文, E 为 DES 加密算法, (2) 选择明文攻击时, 假设有 Ek0(x)=y, k0 为真实的密钥。
(1,1,1,1) (1,1,1,0)
案