现代密码学 (杨波 著) 清华大学出版社_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]
= 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
杨波,_《现代密码学(第2版)》第五章 5.1-5.2节
存储会话密钥, 转发E ③ A存储会话密钥,并向 转发 KB[KS‖IDA]。因 存储会话密钥 并向B转发 。 为转发的是由K 加密后的密文, 为转发的是由 B加密后的密文,所以转发过程不 会被窃听。B收到后,可得会话密钥KS,并从IDA 会被窃听。 收到后,可得会话密钥 并从 收到后 可知另一方是A,而且还从E 知道K 可知另一方是 ,而且还从 KB知道 S的确来自 KDC。 。 这一步完成后,会话密钥就安全地分配给了 、 。 这一步完成后,会话密钥就安全地分配给了A、B。 然而还能继续以下两步工作: 然而还能继续以下两步工作:
两个用户A和 获得共享密钥的方法包括: 获得共享密钥的方法包括 两个用户 和B获得共享密钥的方法包括: 密钥由A选取并通过物理手段发送给 选取并通过物理手段发送给B。 ① 密钥由 选取并通过物理手段发送给 。 密钥由第三方选取并通过物理手段发送给A和 。 ② 密钥由第三方选取并通过物理手段发送给 和B。 如果A、 事先已有一密钥 事先已有一密钥, ③ 如果 、B事先已有一密钥,则其中一方选取新密 钥后,用已有的密钥加密新密钥并发送给另一方。 钥后,用已有的密钥加密新密钥并发送给另一方。 如果A和 与第三方 分别有一保密信道, 与第三方C分别有一保密信道 ④ 如果 和B与第三方 分别有一保密信道,则C为A、 为 、 B选取密钥后,分别在两个保密信道上发送给 、B。 选取密钥后, 选取密钥后 分别在• 假定两个用户 、B分别与密钥分配中心 假定两个用户A、 分别与密钥分配中心 分别与密钥分配中心KDC (key distribution center)有一个共享的主密钥 A和KB, 有一个共享的主密钥K 有一个共享的主密钥 A希望与 建立一个共享的一次性会话密钥,可通 希望与B建立一个共享的一次性会话密钥 希望与 建立一个共享的一次性会话密钥, 过以下几步来完成( 过以下几步来完成(图5.1 ): • ① A向KDC发出会话密钥请求。表示请求的消息由 发出会话密钥请求。 向 发出会话密钥请求 两个数据项组成, 项是A和 的身份 的身份, 两个数据项组成,第1项是 和B的身份,第2项是 项是 项是 这次业务的惟一识别符N1, 为一次性随机数, 这次业务的惟一识别符 ,称N1为一次性随机数, 为一次性随机数 可以是时戳、计数器或随机数。每次请求所用的N1 可以是时戳、计数器或随机数。每次请求所用的 都应不同,且为防止假冒,应使敌手对N1难以猜测 难以猜测。 都应不同,且为防止假冒,应使敌手对 难以猜测。 因此用随机数作为这个识别符最为合适。 因此用随机数作为这个识别符最为合适。
密码学及应用 教学大纲
密码学及应用一、课程说明课程编号:090257X10课程名称:密码学及应用/Theory and Application of Cryptography课程类别:专业教育课程学时/学分:64/4先修课程:高等数学适用专业:信息安全、计算机科学与技术、物联网工程、智能科学与技术教材、教学参考书:1.杨波.现代密码学(第3版).北京:清华大学出版社,2015年2. Bruce Schneier著,吴世忠等译.应用密码学—协议、算法与C程序. 北京:机械工业出版社,2014年3. 宋秀丽主编.现代密码学原理与应用.北京:机械工业出版社,2012年二、课程设置的目的意义密码学及应用课程是为信息安全专业的专业必修课,也可以作为计算机科学与技术、物联网工程等计算机类专业的拓展知识体系的专业选修课。
课程的设置目的是让学生通过本课程的学习,掌握密码学涉及的数学知识、常用的密码算法和经典的密码协议及其在当前网络热点研究中的应用,掌握解决计算机网络安全问题的基本策略和方法,为后续信息安全相关课程学习以及应用创新能力的培养奠定基础。
三、课程的基本要求知识:要求学生掌握密码学的基本概念,密码体制的分类,经典的密码算法,数字签名和身份认证的基本概念,密钥交换、数字签名、身份认证等基本的密码协议,盲签名、秘密共享、匿名通信和安全计算等高级密码协议,密钥管理的概念和方法以及相应的标准等知识,学会安全网络协议的分析与设计方法。
能力:将密码学的基本知识应用于计算机网络系统,培养解决当前网络环境下存在的信息安全问题的能力;针对具体的网络安全问题,能进行安全性分析并提出有效的解决方案,培养分析问题和解决问题以及创新的能力。
素质:提高学生信息安全意识的观念,通过课程中的分析讨论辩论培养分析沟通交流素质;通过课外文献阅读和PPT讲解的学习模式培养自主学习的素质,具备发现问题、分析问题和解决问题的能力、不断获取新知识以及较强的应用能力。
四、教学内容、重点难点及教学设计注:实践包括实验、上机等五、实践教学内容和基本要求六、考核方式及成绩评定教学过程中采取讲授、讨论、分析、大型作业、课前导学的方式进行,注重过程考核,考核方式包括:课堂考勤、课堂互动、平时作业、期中检测、上机实验、课外阅读、期末笔试等;分析问题与解决问题能力考核占50%,基础知识笔七、大纲主撰人:大纲审核人:。
杨波,_《现代密码学(第2版)》第五章 5.4-5.5节
5.4.1 随机数的使用
很多密码算法都需使用随机数,例如: 很多密码算法都需使用随机数,例如: • 相互认证。在密钥分配中需使用一次性随机数来 相互认证。 防止重放攻击。 防止重放攻击。 • 会话密钥的产生。 会话密钥的产生。 • 公钥密码算法中密钥的产生,用随机数作为公钥 公钥密码算法中密钥的产生, 密码算法中的密钥, 密码算法中的密钥,或以随机数来产生公钥密码算 法中的密钥。 法中的密钥。 在随机数的上述应用中, 在随机数的上述应用中,都要求随机数序列满 随机性和不可预测性。 足随机性和不可预测性。
一种方法是将高质量的随机数作为随机数库编 一种方法是将高质量的随机数作为随机数库编 辑成书,供用户使用。 辑成书,供用户使用。然而与网络安全对随机数巨 大的需求相比,这种方式提供的随机数数目非常有 大的需求相比,这种方式提供的随机数数目非常有 再者, 限。再者,虽然这时的随机数的确可被证明具有随 机性,但由于敌手也能得到这个随机数源, 机性,但由于敌手也能得到这个随机数源,而难以 保证随机数的不可预测性。 保证随机数的不可预测性。 网络安全中所需的随机数都借助于安全的密码 网络安全中所需的随机数都借助于安全的密码 算法来产生。但由于算法是确定性的, 算法来产生。但由于算法是确定性的,因此产生的 数列不是随机的。然而如果算法设计得好, 数列不是随机的。然而如果算法设计得好,产生的 数列就能通过各种随机性检验,这种数就是伪随机 数列就能通过各种随机性检验,这种数就是伪随机 数。
如果取a=7,其他值不变,则产生的数列为 5, 25, ,其他值不变,则产生的数列为{1, 如果取 29, 17, 21, 9, 13, 1,…},周期增加到 。 ,周期增加到8。 周期尽可能大, 应尽可能大 应尽可能大。 为使随机数数列的周期尽可能大 为使随机数数列的周期尽可能大,m应尽可能大。 普遍原则是选 接近等于计算机能表示的最大整数 接近等于计算机能表示的最大整数, 普遍原则是选m接近等于计算机能表示的最大整数, 如接近或等于2 如接近或等于231。
杨波,_《现代密码学(第2版)》第三章 3.1-3.4节
图3.1 分组密码框图
通常取m=n。 。 通常取 若m>n,则为有数据扩展的分组密码; ,则为有数据扩展的分组密码; 若m<n,则为有数据压缩的分组密码。 ,则为有数据压缩的分组密码。
设计的算法应满足下述要求: 设计的算法应满足下述要求: 分组长度n要足够大 要足够大, ① 分组长度 要足够大,使分组代换字母表中的元素 个数2 足够大,防止明文穷举攻击法奏效。 个数 n足够大,防止明文穷举攻击法奏效。 DES、IDEA、FEAL和LOKI等分组密码都采用 、 等分组密码都采用n=64, 、 和 等分组密码都采用 , 在生日攻击下用232组密文成功概率为1/2,同时要求 在生日攻击下用 组密文成功概率为 , 存贮, 232×64b=215MB存贮,故采用穷举攻击是不现实的。 存贮 故采用穷举攻击是不现实的。
• 如将分组 化分为子段,每段长为 、16或者 。 如将分组n化分为子段 每段长为8、 或者 化分为子段, 或者32。 • 软件实现时,应选用简单的运算,使作用于子段上 软件实现时,应选用简单的运算, 的密码运算易于以标准处理器的基本运算,如加、 的密码运算易于以标准处理器的基本运算,如加、 移位等实现, 乘、移位等实现,避免用以软件难于实现的逐比特 置换。 置换。 • 为了便于硬件实现,加密和解密过程之间的差别应 为了便于硬件实现, 仅在于由秘密密钥所生成的密钥表不同而已。这样, 由秘密密钥所生成的密钥表不同而已 仅在于由秘密密钥所生成的密钥表不同而已。这样, 加密和解密就可用同一器件实现。 加密和解密就可用同一器件实现。 • 设计的算法采用规则的模块结构,如多轮迭代等, 设计的算法采用规则的模块结构,如多轮迭代等, 以便于软件和VLSI快速实现。 快速实现。 以便于软件和 快速实现
数据扩展尽可能地小。一般无数据扩展, ⑤ 数据扩展尽可能地小。一般无数据扩展,在采用同 态置换和随机化加密技术时可引入数据扩展。 态置换和随机化加密技术时可引入数据扩展。 差错传播尽可能地小。 ⑥ 差错传播尽可能地小。
杨波,_《现代密码学(第2版)》第四章 4.1节
交换律: ① 交换律: (w+x) mod n=(x+w) mod n (w×x) mod n=(x×w) mod n × × 结合律: ② 结合律: [(w+x)+y] mod n=[w+(x+y)] mod n [(w×x)×y] mod n=[w×(x×y)] mod n × × × × 分配律: × × × ③ 分配律: [w×(x+y)] mod n=[w×x+w×y] mod n 单位元: ④ 单位元: (0+w) mod n=w mod n (1×w) mod n=w mod n × 加法逆元: 存在z∈ 使得w+z≡0 ∈ ⑤ 加法逆元: 对w∈Zn,存在 ∈Zn,使得 mod n,记z = -w。 , 。
整数具有以下性质: 整数具有以下性质: ① a|1,那么a=1。 ,那么 。 ② a|b且b|a,则a=b。 且 , 。 对任一b ③ 对任一 (b≠0),b|0。 , 。 ④ b|g,b|h,则对任意整数 、n有 b|(mg+nh)。 , ,则对任意整数m 有 。 性质④的证明: 性质④的证明: 由b|g,b|h知,存在整数 1、h1, , 知 存在整数g 使得g=bg1, h=bh1所以 使得 mg+nh=mbg1+nbh1=b(mg1+nh1), 因此 因此b|(mg+nh)。 。
例4.1 设Z8={0, 1,…, 7},考虑 8上的模加法和模乘 ,考虑Z 法。
从加法结果可见,对每一 ,都有一y, 从加法结果可见,对每一x,都有一 ,使得 x+y≡0 mod 8。如对 ,有6,使得 。如对2, ,使得2+6≡0 mod 8,称 , 加法逆元。 y为x的负数,也称为加法逆元。 的负数, 为 的负数 也称为加法逆元 对x,若有 ,使得 ×y≡1 mod 8,如3×3≡1 ,若有y,使得x× , × mod 8,则称 为x的倒数,也称为乘法逆元。本例 的倒数, ,则称y为 的倒数 也称为乘法逆元。 可见并非每一 都有乘法逆元。 并非每一x都有乘法逆元 可见并非每一 都有乘法逆元。 一般地,定义 为小于n的所有非负整数集合 的所有非负整数集合, 一般地,定义Zn为小于 的所有非负整数集合, 为模n的同余类集合 的同余类集合。 即Zn={0, 1, …, n-1},称Zn为模 的同余类集合。其 , 上的模运算有以下性质 性质: 上的模运算有以下性质:
杨波,_《现代密码学(第2版)》第四章 4.2-4.6节
单向函数是两个集合 、 之间的一个映射 之间的一个映射, 单向函数是两个集合X、Y之间的一个映射,使 是两个集合 中每一元素y都有惟一的一个原像 得Y中每一元素 都有惟一的一个原像 ∈X,且由 中每一元素 都有惟一的一个原像x∈ ,且由x 易于计算它的像y, 计算它的原像x是不可行的 易于计算它的像 ,由y计算它的原像 是不可行的。 计算它的原像 是不可行的。 这里所说的易于计算是指函数值能在其输入长 这里所说的易于计算是指函数值能在其输入长 度的多项式时间内求出,即如果输入长n比特 比特, 度的多项式时间内求出,即如果输入长 比特,则求 函数值的计算时间是n 的某个倍数,其中a是一固定 函数值的计算时间是 a的某个倍数,其中 是一固定 的常数。这时称求函数值的算法属于多项式类 多项式类P, 的常数。这时称求函数值的算法属于多项式类 ,否 则就是不可行的。 则就是不可行的。 例如,函数的输入是n比特 比特, 例如,函数的输入是 比特,如果求函数值所用 的时间是2 的某个倍数, 的时间是 n的某个倍数,则认为求函数值是不可行 的。
以上认证过程中, 以上认证过程中,由于消息是由用户自己的秘密钥 加密的,所以消息不能被他人篡改, 加密的,所以消息不能被他人篡改,但却能被他人 窃听。 窃听。这是因为任何人都能用用户的公开钥对消息 解密。为了同时提供认证功能 保密性, 认证功能和 解密。为了同时提供认证功能和保密性,可使用双 重加、解密。如图4.3所示 所示。 重加、解密。如图 所示。来自ˆ m ˆ SKB
m
c
m
PK B
SK B
图4-1 公钥体制加密的框图
加密过程有以下几步: 加密过程有以下几步:
要求接收消息的端系统, ① 要求接收消息的端系统,产生一对用来加密和 解密的密钥,如图中的接收者B,产生一对密钥PK 解密的密钥,如图中的接收者 ,产生一对密钥 B, SKB,其中 B是公开钥,SKB是秘密钥。 其中PK 是公开钥, 是秘密钥。 ② 端系统B将加密密钥(如图中的PKB)予以公开。 端系统 将加密密钥(如图中的 予以公开。 将加密密钥 另一密钥则被保密(图中的SK 另一密钥则被保密(图中的 B)。 要想向B发送消息 的公开钥加密m, ③ A要想向 发送消息 ,则使用 的公开钥加密 , 要想向 发送消息m,则使用B的公开钥加密 其中c是密文 是加密算法。 表示为c=EPKB[m],其中 是密文,E是加密算法。 表示为 其中 是密文, 是加密算法 收到密文c后 用自己的秘密钥SKB解密,表 解密, ④ B收到密文 后,用自己的秘密钥 收到密文 解密 示为m=DSKB[c],其中 是解密算法。 是解密算法。 示为 ,其中D是解密算法
现代密码学 第1讲
2020/6/16
10
系统穿透
未授权人对认证性(真实性Authenticity) 进行攻击,假冒合法人接入系统.
对文件进行窜改(窜改系统中数据内容,修正消息次序、时间、
延时和重放).
窃取机密信息. 非法使用资源等。
一般采取伪装、利用系统的薄弱环节、收 集情报等方式实现。
2020/6/16
11
违反授权原则
2020/6/16
8
Internet上的对抗与威胁
Internet一方面成为人们离不开的信息工具,同时也成为公开 的攻击对象目标。
网络的全球性、开放性、无缝连通性、共享性、动态性,使任 何人都可以自由地接入Internet,其中有善者,也有恶者。
恶意者时刻在试图穿透别人的系统,捣毁别人的信箱、散布破 坏性信息、倾泻信息拉圾。
2020/6/16
33
OSI的安全结构(一)安全业务
OSI的安全结构中划分6类安全业务
• 认证 • 接入控制 • 数据机密性 • 数据完整性 • 不可否认 • 匿名性业务。
2020/6/16
34
OSI的安全结构(一)安全业务
1. 同等实体认证业务(Peer Entity Authentication Service)
为应用进程提供了一种访问OSI环境的方法。应用层 协议标准描述了应用于某一特定的应用或一类应用的通信 功能。
(2) 表示层(第六层)。
提供了应用层实体或它们之间的通信中所使用的信息 表示。
(3) 会话层(第五层)。
为高层实体提供了组织和同步它们的会话,并管理它 们之间数据交换的方法。
2020/6/16
子科技大学出版社 4. 现代密码学――原理与实践,毛文波著,王继林
现代密码学清华大学出版社课堂课件ppt课件
•单击此处编辑母版标题样式 无条件安全 • 如果算法产生的密文不能给出唯一决定相应明 文的足够信息,无论截获多少密文,花费多少时 间都不能解密密文。 • 单击此处编辑母版副标题样式 • Shannon指出,仅当密钥至少和明文一样长时 达到无条件安全(即一次一密) • 计算安全 – 破译密文的代价超过被加密信息的价值 – 破译密文所花时间超过信息的有效期
1.1 信息的安全威胁
因特网的开放性和共享性,给人们提供了方便 也带来了危险。
图1.1 攻击类型分类
单击此处编辑母版标题样式
• 单击此处编辑母版副标题样式
图1.2 恶意程序分类
安全业务
安全业务指安全防护措施,有以下5种。 1. 保密业务 2. 认证业务 3. 完整性业务 4. 不可否认业务 5. 访问控制
• 2.1 流密码的基本概念 单击此处编辑母版标题样式 • 流密码 关键密钥流产生器 • •同步流密码 单击此处编辑母版副标题样式 • 自同步流密码 • 有限状态自动机 • 密钥流序列具有如下性质: 极大的周期、良好的统计特性、抗线性分析、抗 统计分析。 • 密钥流产生器:驱动部分和非线性组合部分
应用中对于分组码的要求 单击此处编辑母版标题样式
• 安全性
• 运行速度 • 单击此处编辑母版副标题样式 • 存储量(程序的长度、数据分组长度、高速缓存大 小) • 实现平台(硬、软件、芯片)
• 运行模式
称明文分组到密文分组的可逆变换为代换 单击此处编辑母版标题样式
• 设计的算法应满足下述要求: • 分组长度n要足够大,使分组代换字母表中的元素 • 单击此处编辑母版副标题样式 个数2n足够大,防止明文穷举攻击法奏效。 • 密钥量要足够大(即置换子集中的元素足够多), 尽可能消除弱密钥并使所有密钥同等地好,以防 止密钥穷举攻击奏效。 • 由密钥确定置换的算法要足够复杂: 充分实现明文与密钥的扩散和混淆,没有简单的 关系可循,要能抗击各种已知的攻击。
杨波, 《现代密码学(第2版)》07
图7.1 消息加密产生数字签字的基本方式
(2) 公钥加密 如图7.1(b)所示,发送方A使用自己的秘密钥SKA对 消息M加密后的密文作为对M的数字签字,B使用A 的公开钥PKA对消息解密,由于只有A才拥有加密 密钥SKA,因此可使B相信自己收到的消息的确来自 A。然而由于任何人都可使用A的公开钥解密密文, 所以这种方案不提供保密性。为提供保密性,A可 用B的公开钥再一次加密,如图7.1(c)所示。
True S Sig x M Verx S , M False S Sig x M
算法的安全性在于从M和S难以推出密钥x或伪造一 个消息M′使M′和S可被验证为真。
7.1.3 数字签字的执行方式
数字签字的执行方式有两类: 直接方式和具有仲 裁的方式。 1. 直接方式 指数字签字的执行过程只有通信双方参与,并假定 双方有共享的秘密钥或接收一方知道发方的公开钥。
DSS签字也利用一杂凑函数产生消息的一个杂凑值, 杂凑值连同一随机数k一起作为签字函数的输入, 签字函数还需使用发送方的秘密钥SKA和供所有用 户使用的一族参数,称这一族参数为全局公开钥 PKG。签字函数的两个输出s和r就构成了消息的签 字(s,r)。接收方收到消息后再产生出消息的杂凑 值,将杂凑值与收到的签字一起输入验证函数,验 证函数还需输入全局公开钥PKG和发送方的公开 钥PKA。验证函数的输出如果与收到的签字成分r 相等,则验证了签字是有效的。
7.1 数字签字的基本概念
7.1.1 数字签字应满足的要求 消息认证的作用是保护通信双方以防第三方 的攻击,然而却不能保护通信双方中的一方防止另 一方的欺骗或伪造。通信双方之间也可能有多种形 式的欺骗,例如通信双方A和B(设A为发方,B为 收方)使用图6.1所示的消息认证码的基本方式通 信,则可能发生以下欺骗:
杨波,_《现代密码学(第2版)》第三章 3.6节
构成的字节b看成系数在 看成系数在{0, 将b7b6b5b4b3b2b1b0构成的字节 看成系数在 1} 中的多项式 b7x7+b6x6+b5x5+b4x4+b3x3+b2x2+b1x+b0 例如: 十六进制数‘57’对应的二进制为 例如: 十六进制数‘ 对应的二进制为01010111, , 对应的二进制为 看成一个字节,对应的多项式为x 看成一个字节,对应的多项式为 6+x4+x2+x+1。 。
第3章 分组密码体制 章
• • • • • • 分组密码概述 数据加密标准 差分密码分析与线性密码分析 分组密码的运行模式 IDEA AES算法 算法——Rijndael 算法
3.6 AES算法 算法——Rijndael 算法
• 1997年4月15日,美国 年 月 日 美国ANSI发起征集 发起征集AES 发起征集 (Advanced Encryption Standard)的活动,并为 )的活动, 此成立了AES工作小组。此次活动的目的是确定一 此成立了 工作小组。此次活动的目的是确定一 工作小组 个非保密的、可以公开技术细节的、 个非保密的、可以公开技术细节的、全球免费使用 的分组密码算法,以作为新的数据加密标准。 的分组密码算法,以作为新的数据加密标准。 • 1997年9月12日,美国联邦登记处公布了正式征集 年 月 日 AES候选算法的通告。对AES的基本要求是: 比 候选算法的通告。 的基本要求 候选算法的通告 的基本要求是 三重DES快、至少与三重 一样安全、 三重 快 至少与三重DES一样安全、数据分组 一样安全 长度为128比特、密钥长度为 比特、 比特。 长度为 比特 密钥长度为128/192/256比特。 比特
密码学之信息安全
课程论文题目:现代密码学之信息安全课程名称现代密码学(第2版) 姓名龚雪学号20121036006专业计算机应用技术班级计科系12级5班现代密码学之信息安全前言:密码学(Cryptology)一词源自希腊语“krypto's”及“logos”两词,意思为“隐藏”及“消息”。
它是研究信息系统安全保密的科学。
其目的为两人在不安全的信道上进行通信而不被破译者理解他们通信的内容。
随着经济的发展和电子信息技术的广泛应用与迅速普及,信息在社会中的地位和作用越来越重要,已成为社会发展的重要战略资源。
信息技术改变着人们的生活和工作方式,信息产业已成为新的经济增长点,社会的信息化已成为当今世界发展的潮流和核心。
与此同时信息的安全问题也已成为世人关注的社会问题。
信息安全分为系统安全、数据安全和内容安全,其中密码技术是保障数据安全的关键技术。
同时,网上购物模式以其快捷、便利等优点愈来愈受到社会的认可与信赖。
网上支付是电子商务的核心环节和关键步骤,但是电子支付方式由于其对客户的分布式和开放性特点,存在体系性的安全问题。
关键词:信息安全;信息安全管理;安全防护措施常见的信息安全技术1、防火墙技术。
防火墙(Firewall)是位于两个或多个网络之间,执行访问控制策略的一个或一组系统,是一类防范措施的总称。
它对两个或多个网络之间传输的数据包和链接方式按照一定的安全策略对其进行检查,来决定网络之间的通信是否被允许,并监视网络运行状态。
简单防火墙技术可以在路由器上实现,而专用防火墙提供更加可靠的网络安全控制方法。
防火墙作为重要的网络安全设备主要有以下作用:一是,网络流量过滤:通过在防火墙上进行安全规则配置,可以对流经防火墙的网络流量进行过滤;二是网络监控审计:当所有的访问经过防火墙时,防火墙能够记录下来并产生网络访问日志,当出现可疑的问题时发出警报,并提供可疑访问的详细信息;三是,NAT部署:网络地址翻译的缩写,用来缓解地址空间短缺的主要技术之一。
- 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)
案