第05-08讲 分组密码 现代密码学 教学课件

合集下载

现代密码学PPT课件

现代密码学PPT课件
因此要了解信息安全,首先应该知道信息安全面临 哪些威胁。
信息安全所面临的威胁来自很多方面,并且随着时 间的变化而变化。这些威胁可以宏观地分为人为威 胁和自然威胁。
自然威胁可能来自于各种自然灾害、恶劣的场地环 境、电磁辐射和电磁干扰、网络设备自然老化等。 这些事件有时会直接威胁信息的安全,影响信息的 存储媒质。
3. 完整性业务
和保密业务一样,完整性业务也能应用于消息流、 单个消息或一个消息的某一选定域。用于消息流的 完整性业务目的在于保证所接收的消息未经复制、 插入、篡改、重排或重放,即保证接收的消息和所 发出的消息完全一样;这种服务还能对已毁坏的数 据进行恢复,所以这种业务主要是针对对消息流的 篡改和业务拒绝的。应用于单个消息或一个消息某 一选定域的完整性业务仅用来防止对消息的篡改。
2. 认证业务
用于保证通信的真实性。在单向通信的情况下,认 证业务的功能是使接收者相信消息确实是由它自己 所声称的那个信源发出的。在双向通信的情况下, 例如计算机终端和主机的连接,在连接开始时,认 证服务则使通信双方都相信对方是真实的(即的确 是它所声称的实体);其次,认证业务还保证通信 双方的通信连接不能被第三方介入,以假冒其中的 一方而进行非授权的传输或接收。
恶意软件指病毒、蠕虫等恶意程序,可分为两类, 如图1.2所示,一类需要主程序,另一类不需要。前 者是某个程序中的一段,不能独立于实际的应用程 序或系统程序;后者是能被操作系统调度和运行的 独立程序。来自图1.2 恶意程序分类
对恶意软件也可根据其能否自我复制来进行分类。 不能自我复制的一般是程序段,这种程序段在主程 序被调用执行时就可激活。能够自我复制的或者是 程序段(病毒)或者是独立的程序(蠕虫、细菌 等),当这种程序段或独立的程序被执行时,可能 复制一个或多个自己的副本,以后这些副本可在这 一系统或其他系统中被激活。以上仅是大致分类, 因为逻辑炸弹或特洛伊木马可能是病毒或蠕虫的一 部分。

《分组密码理论》课件

《分组密码理论》课件

分组密码的工作模式
ECB模式
电子密码本模式,是最简单的分组密码工作模式。它将明 文分成固定长度的块,然后对每个块进行加密。
CBC模式
密码块链接模式,将前一块的密文作为下一块的加密密钥 ,使得明文中的重复内容在密文中也呈现规律性变化。
CFB模式
密码反馈模式,将前一块的密文作为下一块的加密密钥, 同时将加密后的密文反馈回来与明文进行异或操作,以实 现加密和解密过程。
介绍量子密码学的基本原理, 包括量子态的叠加性和纠缠性 ,以及量子不可克隆定理等。 这些原理为抗量子计算攻击的 分组密码提供了理论基础。
列举一些已经提出的抗量子计 算攻击的分组密码算法,如基 于多线性映射、基于哈希函数 、基于编码理论的算法等。
分析抗量子计算攻击分组密码 研究中面临的挑战,如算法效 率、实现难度和安全性证明等 ,并对未来的研究方向进行展 望。
分组密码的应用场景
通信安全
01
分组密码广泛应用于通信加密领域,如TLS/SSL协议中的AES加
密算法。
存储安全
02
在存储加密中,分组密码也扮演着重要的角色,用于保护数据
的机密性和完整性。
身份认证
03
分组密码还可以用于身份认证,通过加密和验证消息的完整性
来确保通信双方的身份安全。
2023
PART 02
2023
REPORTING
THANKS
感谢观看
基于云计算的分组密码
ห้องสมุดไป่ตู้云计算环境下的 安全需求
随着云计算技术的普及,数 据安全和隐私保护成为重要 需求。因此,研究基于云计 算的分组密码是必要的。
基于云计算的分 组密码算法原理
介绍基于云计算的分组密码 算法的基本原理,包括如何 利用云计算的分布式处理能 力提高加密和解密的速度, 以及如何利用云计算的存储 能力实现密钥的分布式存储 等。

现代密码学精讲PPT课件

现代密码学精讲PPT课件
3
2.1.1 什么是密码学(续)
发送者 Alice
明文m 加密器 Ek
密文c 公 共 信道
密钥k
密钥源
安全 信道
图 2.1 Shannon保密系统
分析者 Eve
解密器 明文m Dk
密钥k
接收者 Bob
4
2.1.1 什么是密码学(续)
通信中的参与者 (1) 发送者(Alice): 在双方交互中合法的信息发 送实体。 (2) 接收者(Bob):在双方交互中合法的信息接收 实体。 (3) 分析者(Eve):破坏通信接收和发送双方正常 安全通信的其他实体。可以采取被动攻击和主动 攻击的手段。 信道 (1) 信道:从一个实体向另一个实体传递信息的 通路。 (2) 安全信道:分析者没有能力对其上的信息进 行阅读、删除、修改、添加的信道。 (3) 公共信道:分析者可以任意对其上的信息进 行阅读、删除、修改、添加的信道。
定义2 一个加密方案可以被破译是指,第三方在 没有事先得到密钥对(e, d)的情况下,可以在适当 的时间里系统地从密文恢复出相对应的明文。 # 适当的时间由被保护数据生命周期来确定。
12
2.1.4 现代密码学主要技术(续)
私钥加密 定义3 一个由加密函数集{Ee: eK}和解密函数集{Dd: dK}组成加密方案,每一个相关联的密钥对(e, d) , 如果知道了e在计算上很容易确定d,知道了d在计算 上很容易确定e,那么,就是私钥加密方案。 # 私钥加密需要一条安全信道来建立密钥对。
2.1.4 现代密码学主要技术(续)
公钥加密实例
A1
Ee(m1)=c1
e
c1
e
A2
Ee(m2)=c2
c2
Dd(c1)=m1 Dd(c2)=m2

《密码学分组密码》PPT课件

《密码学分组密码》PPT课件

.
8
Feistel结构定义
•加密: Li = Ri-1; Ri = Li-1F(Ri-1,Ki) •解密: Ri-1 = Li
Li-1 = RiF(Ri-1,Ki)
= RiF(Li,Ki.)
9
Feistel结构图
.
10
数据加密标准
DES描述 二重DES 两个密钥的三重DES 三个密钥的三重DES
k57= k49= k41= ……= k9= k1=0 或1
k63= k55= k47= ……= k15= k7=0 或1
• 举例:共有4种,如:0101010.101010101。
33
(2) 半弱密钥:
定义:当存在子密钥K和K’,使得: DESk ( m ) = DESk’ -1 ( m ) 或 DESk ( DESk’ ( m ) ) = m 则K和K’成对构成半弱密钥。
C 1( 28 位 )
D 1( 28 位 )
8 2 16 1
( 56 位 ) 置 换 选 择 2
k1
(48 位 )
循环左移
循环左移
C i( 2 8 位 )
D i( 2 8 位 )
置 换 选 择 2 ki
( 56 位 )
( 48 位 )
.
29
置换选择1和置换选择2
.
30
DES解密
和Feistel密码一样,DES的解密和加密使 用同一算法,只是子密钥的使用顺序相 反。
.
32
关于DES的若干问题:
1. DES的坏密钥问题:
(1)弱密钥:
定义:当密钥K所产生的子密钥满足:K1 = K2 = ……= K16 则有:DESk ( m ) = DESk -1 ( m ) , 或:DESk ( DESk ( m ) ) = m 这样的密钥K称为弱密钥。

现代密码学-分组密码DES

现代密码学-分组密码DES

17
DES子密钥生成算法
循环左移LSi 将28位的密钥段作为Ci, Di循环左移1或2位,左移位数由 下表确定. i
1 2 1 3 2 4 2 5 2 6 2 7 2 8 2 9 1 10 11 12 13 14 15 16 2 2 2 2 2 2 1
LSi 1
18
DES子密钥生成算法
置换选择2: PC-2 从56位密钥段Ci||Di中选择48位作为子密钥Ki. PC-2 14 3 23 16 41 30 44 46 17 28 19 7 52 40 49 42 11 15 12 27 31 51 39 50 24 6 4 20 37 45 56 36 1 21 26 13 47 33 34 29 5 10 8 2 55 48 53 32
6
Feistel 密码
密文: y(2w-bit) L0(w-bit) R0(w-bit) F R1 …. …. Ki Ri …. …. K1 Rh Rh+1 明文: x(2w-bit)
7
Feistel解密结构 与加密结构相同 子密钥使用次序相反: Kh, Kh-1,…,K2,K1 输入:密文y 输出:明文x
置换选择2: 从56个密钥比特中取 出48个作为子密钥
20
DES解密算法
与DES加密结构相同 子密钥使用次序相反: K16 K15,…,K2,K1 输入:密文y 输出:明文x
21
DES的解密过程可描述为:
Ri 1 Li Li 1 Ri f ( Li , K i ), i 16,15,1
L1
Kh
Li
F

F
Lh
Lh+1
2 数据加密标准(DES)

现代密码学第5章 共65页

现代密码学第5章 共65页

2019/7/25
27
托管加密芯片
Skipjack算法 80比特族密钥KF(Family key),同一批芯
片的族密钥都相同 芯片单元识别符UID 80bit的芯片单元密钥KU(unique key),由
两个80bit密钥分量异或得到 控制软件被固化在芯片上
2019/7/25
28
第5章 密钥分配与密钥管理
Key Distribution and Key Management
2019/7/25
1
内容提要
单钥加密体制的密钥分配 公钥加密体制的密钥管理 密钥托管 随机数的产生 秘密分割
2019/7/25
2
单钥加密体制的密钥分配
Key Distribution of symmetric cryptography
噪声源的功能就是产生二进制的随机序列或与之对应 的随机数,它是密钥产生设备的核心部件。
噪声源的另一个用途是在物理层加密的环境下进行信 息填充,使网络具有防止流量分析的功能,当采用序 列密码时也有防止乱数空发的功能。
噪声源还被用于某些身份验证技术中,如在对等实体 中,为了防止口令被窃取常常使用随机应答技术,这 时的提问与应答都是由噪声控制的。
对数列中以后的数是不可预测的 对于真随机数,满足独立性,所以不可
预测 伪随机数列需要特别注意满足不可预测

2019/7/25
36
随机数源
真随机数源-物理噪声产生器
离子辐射脉冲检测器 气体放电管 漏电容
数的随机性和精度不够 这些设备很难联入网络
2019/7/25
37
H h (CV ) K in K m H K out E K m H [ K S ] K S D K in [ K out ]

《现代密码学基础》课件

《现代密码学基础》课件
2 RSA算法
RSA算法是一种常用的公钥加密算法,基于数论的难题,广泛应用于数字签名和密钥交换 等场景。
3 椭圆曲线算法
椭圆曲线算法是一种新兴的公钥加密算法,具有更短的密钥长度和更高的安全性。
消息认证码
消息认证码用于验证消息的完整性和真实性,常用于数据完整性校验和身份认证。
1 消息认证码概述
2 常用的消息认证码
总结
通过此课件,我们回顾了现代密码学的基础知识,并推荐了后续学习的方向。
《现代密码学基础》PPT 课件
现代密码学基础课程的PPT课件,包括密码学概述、对称加密算法、公钥加密 算法、消息认证码、密码学协议、密码学安全等内容。
密码学概述
密码学是研究信息安全和通信安全的一门学科,主要包括加密与解密技术、密钥管和认证协议 等内容。
1 密码学定义
密码学是研究信息安全和通信安全的一门学科,涉及加密与解密技术、密钥管理和认证 协议等内容。
消息认证码用于验证消息的完整性和真实性, 通常包括消息摘要和密钥。
• HMAC算法 • CMAC算法 • GMAC算法
密码学协议
密码学协议用于实现安全的通信和身份认证,常用于保护网络通信和数据传输的安全性。
1 密码学协议定义
2 常用的密码学协议
密码学协议用于实现安全的通信和身份认证, 通常包括密钥协商、身份认证和数据加密等 功能。
对称加密算法使用相同的密钥对信息进行加 密和解密,加密和解密过程效率高,但密钥 管理复杂。
2 常用的对称加密算法
• DES算法 • 3DES算法 • AES算法
公钥加密算法
公钥加密算法使用不同的密钥对信息进行加密和解密,具有更高的安全性。
1 公钥加密算法概述
公钥加密算法使用不同的密钥对信息进行加密和解密,提供更高的安全性和密钥管理的 便利。

分组密码技术讲义(ppt 58页)

分组密码技术讲义(ppt 58页)

第二章 分组密码技术 3
1. 密码学的历史 2. 香农安全理论 3. 分组密码的基本概念 4. 分组密码设计原理 5. 典型的分组密码算法 6. 对分组密码的攻击 7. 分组密码的工作模式 8. 多重加密
什么是分组密码
分组密码,顾名思义是将明文分成固定长度的组, 如64位一组,用同一密钥和算法对每一块分组加 密,输出固定长度的密文。分组密码加密函数实际 上是从n位明文块到n位密文块之间的映射 Ek : { 0 , n1} { 0n ,,1 }n 称 为 块 长 。 解 密 函 数 Dk Ek1 满足 Dk (Ek (m)) m 。为了保证解密的唯一 性,要求加密函数必须是双射。可以把加密函数看
循环左移
循环左移
6 2 14 2 7 2 15 2
C 1( 2 8 位 )
D 1( 2 8 位 )
8 2 16 1
( 56 位 ) 置 换 选 择 2
k1
(48 位 )
循环左移
循环左移
C i( 2 8 位 )
D i( 2 8 位 )
置换选择 2 ( 56 位 )
ki
( 48 位 )
DES的强度分析
Rijndael算法的原型是Square算法,其设计策略是宽轨迹策略(Wide Trail Strategy),以针对差分分析和线性分析;
Rijndael是迭代分组密码,其分组长度和密钥长度都是可变的,为了 满足AES的要求,分组长度为128bit,密码长度为128/192/256bit, 相应的轮数r为10/12/14;
瑞士联邦理工学院Xuejia Lai和James Massey提出; IDEA是对称、分组密码算法,输入明文为64位,密钥为128位,

现代密码技术ppt课件

现代密码技术ppt课件
.
(舍弃了第
9,18,22,25,35,38,43,54 比特位)
总结:DES一轮迭代的过程
.
DES解密操作
由迭代操作的定义,显然可以得到 Ri-1=Li Li-1=Ri⊕f(Li,ki)
若记加密算法每一轮的操作为Ti,我们
可以方便的得出解密算法: DES-1=IP-1∘T1∘T2∘…T15∘T16∘IP
3次循环以后密文有21个比特不同,16次循环 后有34个比特不同 ➢ 如果用只差一比特的两个密钥加密同样明文: 3次循环以后密文有14个比特不同,16次循环 后有35个比特不同
.
3.1 数据加密标准DES
DES的强度
▪ 56位密钥长度问题 ➢ 56-bit 密钥有256 = 72,057,584,037,927,936 ≈ 7.2亿亿 之多
《计算机网络安全》
Chapter 3
现代密码技术
DES、RSA
.
3.1 数据加密标准DES
▪ 19世纪70年代,DES(the Data Encryption Standard)最初由IBM公司提出。
▪ DES是一种分组密码,它采用56比特长的密 钥将64比特的数据加密成64比特的密文。
▪ DES完全公开了加密、解密算法。因而是一 个最引人注目的分组密码系统。
(1)初始置换与逆置换
58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 IP: 64 56 48 40 32 24 16 8 57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3 61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7

现代密码学清华大学出版社课堂课件ppt课件

现代密码学清华大学出版社课堂课件ppt课件

•单击此处编辑母版标题样式 无条件安全 • 如果算法产生的密文不能给出唯一决定相应明 文的足够信息,无论截获多少密文,花费多少时 间都不能解密密文。 • 单击此处编辑母版副标题样式 • Shannon指出,仅当密钥至少和明文一样长时 达到无条件安全(即一次一密) • 计算安全 – 破译密文的代价超过被加密信息的价值 – 破译密文所花时间超过信息的有效期
1.1 信息的安全威胁
因特网的开放性和共享性,给人们提供了方便 也带来了危险。
图1.1 攻击类型分类
单击此处编辑母版标题样式
• 单击此处编辑母版副标题样式
图1.2 恶意程序分类
安全业务
安全业务指安全防护措施,有以下5种。 1. 保密业务 2. 认证业务 3. 完整性业务 4. 不可否认业务 5. 访问控制
• 2.1 流密码的基本概念 单击此处编辑母版标题样式 • 流密码 关键密钥流产生器 • •同步流密码 单击此处编辑母版副标题样式 • 自同步流密码 • 有限状态自动机 • 密钥流序列具有如下性质: 极大的周期、良好的统计特性、抗线性分析、抗 统计分析。 • 密钥流产生器:驱动部分和非线性组合部分
应用中对于分组码的要求 单击此处编辑母版标题样式
• 安全性
• 运行速度 • 单击此处编辑母版副标题样式 • 存储量(程序的长度、数据分组长度、高速缓存大 小) • 实现平台(硬、软件、芯片)
• 运行模式
称明文分组到密文分组的可逆变换为代换 单击此处编辑母版标题样式
• 设计的算法应满足下述要求: • 分组长度n要足够大,使分组代换字母表中的元素 • 单击此处编辑母版副标题样式 个数2n足够大,防止明文穷举攻击法奏效。 • 密钥量要足够大(即置换子集中的元素足够多), 尽可能消除弱密钥并使所有密钥同等地好,以防 止密钥穷举攻击奏效。 • 由密钥确定置换的算法要足够复杂: 充分实现明文与密钥的扩散和混淆,没有简单的 关系可循,要能抗击各种已知的攻击。

现代密码学PPT课件

现代密码学PPT课件

1.3 密码学基本概念
1.3.1 保密通信系统
通信双方采用保密通信系统可以隐蔽和保护需要发 送的消息,使未授权者不能提取信息。发送方将要 发送的消息称为明文,明文被变换成看似无意义的 随机消息,称为密文,这种变换过程称为加密;其 逆过程,即由密文恢复出原明文的过程称为解密。 对明文进行加密操作的人员称为加密员或密码员。 密码员对明文进行加密时所采用的一组规则称为加 密算法。
② 系统的保密性不依赖于对加密体制或算法的保密, 而依赖于密钥。这是著名的Kerckhoff原则。
③ 加密和解密算法适用于所有密钥空间中的元素。
④ 系统便于实现和使用。
1.3.2 密码体制分类
密码体制从原理上可分为两大类,即单钥体制和双 钥体制。
1.1.3 安全业务
安全业务指安全防护措施,有以下5种。 1. 保密业务
保护数据以防被动攻击。保护方式可根据保护范围 的大小分为若干级,其中最高级保护可在一定时间 范围内保护两个用户之间传输的所有数据,低级保 护包括对单个消息的保护或对一个消息中某个特定 域的保护。保密业务还包括对业务流实施的保密, 防止敌手进行业务流分析以获得通信的信源、信宿、 次数、消息长度和其他信息。
20世纪90年代,因特网爆炸性的发展把人类带进了 一个新的生存空间。因特网具有高度分布、边界模 糊、层次欠清、动态演化,而用户又在其中扮演主 角的特点,如何处理好这一复杂而又巨大的系统的 安全,成为信息安全的主要问题。由于因特网的全 球性、开放性、无缝连通性、共享性、动态性发展, 使得任何人都可以自由地接入,其中有善者,也有 恶者。恶者会采用各种攻击手段进行破坏活动。信 息安全面临的攻击可能会来自独立的犯罪者、有组 织的犯罪集团和国家情报机构。对信息的攻击具有 以下新特点: 无边界性、突发性、蔓延性和隐蔽性。

现代密码学课件--第9讲分组密码5

现代密码学课件--第9讲分组密码5



2019/2/27
13
差分密码分析(Differential cryptanalysis)

差分密码分析的基本思想是在要攻击的迭代密码系统 中找出某高概率差分来推算密钥。
一个i轮差分是一(, )对,其中是两个不同明文X和X’ 的差分,是密码第i轮输出Y(i)和Y’(i)之间的差分。 在给定明文的差分 X=条件下,第i轮出现一对输出 的差分为的条件概率称之为第i轮差分概率,以 P(Y(i)=|X=)表示。



对于 Markov 密码,第 i 差分概率就是第 i 阶转移概率矩 阵i中的元素(, )。
2019/2/27
14
r轮迭代密码的差分分析

寻求第 ( r-1) 轮差分 ( , ) 使概率 P(Y(r-1)=|X=) 的 值尽可能为最大。
随机地选择明文X,计算X’使X’与X之差分为,在密钥k 下对 X和 X’ 进行加密得 Y(r) 和Y’(r),寻求能使 Y(r-1)= 的所有可能的第 r轮密钥K(r),并对各子密钥 ki(r)计数,若 选定的X=,(X, X’)对在ki(r)下产生的(Y, Y’)满足Y(r- 1)=,就将相应ki(r)的计数增加1。 重复第 2 步,直到计数的某个或某几个子密钥 ki(r) 的值, 显著大于其它子密钥的计数值,这一子密钥或这一小的 子密钥集可作为对实际子密钥K(r)的分析结果。
6
2019/2/27
差分密码分析(Differential cryptanalysis)

差分密码分析是一种攻击迭代分组密码的选择明 文统计分析破译法。
它不是直接分析密文或密钥的统计相关性,而是 分析明文差分和密文差分之间的统计相关性。 给定一个r轮迭代密码,对已知n长明文对X和 X‘, 定义其差分为
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
– 即使敌手能得到密文的一些统计关系,由于密钥和 密文之间的统计关系复杂化,敌手也无法得到密钥
– 使用复杂的代换算法可以得到预期的混淆效果,而 简单的线性代换函数得到的混淆效果则不够理想。
• 扩散和混淆成功地实现了分组密码的本质属性, 因而成为设计现代分组密码的基础
3.1.3 Feistel密码结构
分组密码的设计要求-5
• 数据扩展尽可能小 – 一般无数据扩展,在采用同态置换和随机化 加密技术时可引入数据扩展
• 差错传播尽可能地小
3.1.1 代换
• 明文分组到密文分组的可逆变换为代换 – 如果明文和密文的分组长都为n比特,则明 文的每一个分组都有2n个可能的取值 – 为使加密运算可逆,明文的每一个分组都应 产生惟一的一个密文分组, – 不同可逆变换的个数有2n!个。
• 这种结构是Shannon提出的代换—置换网络 (Substitution-Permutation Network, SPN)的 特有形式。
3.1.3 Feistel密码结构
Feistel网络的实现与以下参数和特性有关:
1.分组大小:分组越大则安全性越高,但加密速度 就越慢(一般取64bit)
2.密钥大小:密钥越长则安全性越高,但加密速度 就越慢(一般取128bit)
i1
– 这时明文的统计特性将被散布到密文中,每一字母 ቤተ መጻሕፍቲ ባይዱ密文中出现的频率比在明文中出现的频率更接近 相等,双字母及多字母出现的频率也更接近相等。
• 扩散的目的是使明文和密文之间的统计关系变 得尽可能复杂,以使敌手无法得到密钥
3.1.2 扩散和混淆
• 混淆是使密文和密钥之间的统计关系变得尽可 能复杂,以使敌手无法得到密钥。
分组密码的设计要求-4
• 加密和解密运算简单,易于软硬件高速实现 – 分组长度n的取值 是8的倍数
– 便于软件实现:选用简单的运算,使作用于 子段上的密码运算易于以标准处理器的基本 运算,如加、乘、移位等实现,避免用以软 件难于实现的逐比特置换。
– 便于硬件实现:加密和解密过程之间的差别 应仅在于由秘密密钥所生成的密钥表不同而 已。设计的算法采用规则的模块结构,如多 轮迭代等,以便于软件和VLSI快速实现
3.1.2 扩散和混淆
• 统计分析
– 敌手知道明文的某些统计特性,如消息中不同字母 出现的频率、可能出现的特定单词或短语,这些统 计特性以某种方式在密文中反映出来,那么敌手就 有可能得出加密密钥或其一部分,或者得出包含加 密密钥的一个可能的密钥集合
• 扩散和混淆是由Shannon提出的设计密码系统 的两个基本方法,目的是抗击敌手对密码系统 的统计分析
第3章 分组密码体制
3.1 分组密码概述 3.2 数据加密标准 3.3 差分密码分析与线性密码分析 3.4 分组密码的运行模式 3.5 IDEA 3.6 AES算法——Rijndael
分组密码的特点
• 与流密码的不同 – 密文每一位值 不是只与相应时刻输入的一位 明文值有关,而是与一组长为n的明文值 有 关
3.轮数:单轮结构远不足以保证安全性,但多轮结 构可提供足够的安全性(一般取16轮)
4.子密钥产生算法:该算法的复杂性越大,则密码 分析的困难性就越大
5.轮函数:轮函数的复杂性越大,密码分析的困难 性也越大
3.1.3 Feistel密码结构
• Feistel网络是很多分组密码的本质结构 • Feistel提出利用乘积密码可获得简单代换密码
– 顺序地执行两个或多个基本密码系统,最后结果的 密码强度高于每个基本密码系统产生的结果
• Feistel还提出了实现代换和置换的方法。其思 想实际上是Shannon提出的利用乘积密码实现 扩散和混淆思想的具体应用。
• 在相同密钥下,分组密码对长为n的输入明文组 所实施的变换是等同的,所以只需研究对任一 组明文数字的变换规则。
• 实质上是字长为n的数字序列的代换密码
分组密码的分类
• 若m>n,称为数据扩展的分组密码 • 若m<n,则为有数据压缩的分组密码 • 通常取m=n
分组密码的设计要求-2
• 分组长度n足够大—防止明文穷举攻击法 – 使分组代换字母表中的元素个数2n足够大 – DES、IDEA、FEAL和LOKI等分组密码都 采用n=64,在生日攻击下用232组密文成功概 率为1/2,同时要求232×64b=215MB存贮,故 采用穷举攻击是不现实的。
• 在Shannon称之为理想密码的密码系统中,密 文的所有统计特性都与所使用的密钥独立
3.1.2 扩散和混淆
• 扩散:将明文的统计特性散布到密文中去
– 实现方式是使得明文的每一位影响密文中多位的值, 等价于说密文中每一位均受明文中多位影响。
– 例如对英文消息M=m1m2m3…的加密操作
ynchrk ordmnimod26
分组密码的设计要求-2
• 密钥空间设计—防止密钥穷举攻击 – 密钥量要足够大 – 尽可能消除弱密钥 – 使所有密钥同等地好 – 密钥又不能过长,以便于密钥的管理
分组密码的设计要求-3
• 由密钥确定置换的算法要足够复杂 – 充分实现明文与密钥的扩散和混淆 – 能抗击各种已知的攻击,如差分攻击和线性 攻击 – 有高的非线性阶数,实现复杂的密码变换 – 使对手破译时除了用穷举法外,无其它捷径 可循。
Feistel网络示意图
3.1.3 Feistel密码结构
• Feistel网络中每轮结构都相同,每轮中右半数 据被作用于轮函数F后,再与左半数据进行异或 运算,这一过程就是上面介绍的代换,起到扩 散的作用
• 每轮的轮函数的结构都相同,但以不同的子密 钥Ki作为参数。代换过程完成后,再交换左、 右两半数据,这一过程称为置换,起到混淆的 作用
3.1.1 代换
实现代换的困难性
• 代换的加密和解密可以由代换表来定义,代换表 就是密钥
• 当分组长度n太小时,代换等价于古典代换密码 • 当分组长度n太大时,密钥管理不方便 • 实际中常将n分成较小的段,例如可选n=r×n0,
将设计n个变量的代换变为设计r个较小的子代换, 而每个子代换只有n0个输入变量。一般n0都不太 大,称每个子代换为代换盒,简称为S盒
相关文档
最新文档