[工学]第4章信息安全_技术_基础

上传人:油条 文档编号:49691576 上传时间:2018-08-01 格式:PPT 页数:49 大小:960KB
返回 下载 相关 举报
[工学]第4章信息安全_技术_基础_第1页
第1页 / 共49页
[工学]第4章信息安全_技术_基础_第2页
第2页 / 共49页
[工学]第4章信息安全_技术_基础_第3页
第3页 / 共49页
[工学]第4章信息安全_技术_基础_第4页
第4页 / 共49页
[工学]第4章信息安全_技术_基础_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《[工学]第4章信息安全_技术_基础》由会员分享,可在线阅读,更多相关《[工学]第4章信息安全_技术_基础(49页珍藏版)》请在金锄头文库上搜索。

1、对称密码技术对称密码技术4 4信息安全技术基础信息安全技术基础2011201220112012第一学期第一学期2信息安全技术基础 制作:张浩军学习目标学习目标数据加密标准DES高级加密标准AES其它典型分组密码算法流密码算法分组密码算法工作模式本章以几个典型对称密码算法为例,介 绍对称密码算法实现过程、机理及特点,理 解密码算法的应用背景。 23信息安全技术基础 制作:张浩军目目 录录4.1 数据加密标准DES4.2 高级加密标准AES4.3 其他分组密码算法介绍4.4 流密码算法RC44.5 分组密码工作模式34信息安全技术基础 制作:张浩军如何实现加解密过程相同、如何实现加解密过程相同、

2、密钥相同的对称密码算法密钥相同的对称密码算法?4Symmetric Cryptography ?5信息安全技术基础 制作:张浩军4.1 4.1 数据加密标准数据加密标准DESDES 数据加密标准DES(Data Encryption Standard)是一个 著名分组加密算法。 美国国家标准局1973年5月公开征集用于计算机数据在传 输和存储期间实现加密保护的密码算法。 1975年美国国家标准局接受了IBM公司提交的一种密码算 法并向社会公开征求意见。 1997年正式采用该算法作为美国数据加密标准。 1980年12月美国国家标准协会正式采用该算法作为美国商 用加密算法。56信息安全技术基础 制

3、作:张浩军4.1.1 4.1.1 概述概述美国国家标准局征求加密算法的要求:(1)提供高质量的数据保护,防止数据未经授权的泄露和 未被察觉的修改。(2)具有相当高的复杂性,使得破译的开销超过可能获得 的利益,同时又便于理解和掌握。(3)密码体制的安全性应该不依赖于算法的保密,其安全 性仅以加密密钥的保密为基础。 (4)实现经济,运行有效,并且适用于多种完全不同的应 用。67信息安全技术基础 制作:张浩军4.1.1 4.1.1 概述概述 DES是一种分组密码算法,加密和解密使用相同的密钥。 DES的分组长度为64比特位 使用64比特密钥(其中包括8比特奇偶校验位),密钥通 过扩展后 经过16轮对

4、明文分组的代换和置换7加加/ /解密密钥相同有何好处?解密密钥相同有何好处?长度为什么选择长度为什么选择6464比特?比特?为什么要做为什么要做1616轮?轮?8信息安全技术基础 制作:张浩军4.1.2 DES4.1.2 DES工作过工作过程程89信息安全技术基础 制作:张浩军1. 初始置换及其逆置换9IP置换逆IP置换10信息安全技术基础 制作:张浩军2. f函数1011信息安全技术基础 制作:张浩军2. f函数11f函数中扩展操作S1替换阵列12信息安全技术基础 制作:张浩军2. f函数12置换P13信息安全技术基础 制作:张浩军4.1.3 4.1.3 密钥调度密钥调度 56比特密钥作为初

5、始输入,经过置换选择操作PC1,输出 56比特分作左右两个部分(各28比特),分别做左循环移 位,之后左右两部分合并再进行置换选择操作PC2,产生 48比特轮密钥。13置换选择PC1置换选择PC214信息安全技术基础 制作:张浩军4.1.4 DES4.1.4 DES安全性分析安全性分析 S盒是DES的核心,也是DES算法最敏感的部分,所有替换 都是固定的,甚显神秘。许多密码学家曾担心NSA设计S盒 时隐藏了某些陷门。 DES算法具有很好的雪崩效应。 1997年互联网利用上万台微机个月成功破译DES。 1998年EFF花费大约25万美元定制构造了一个DES解密器, 该机器包含1856个定制芯片,

6、可以在2天内强力搜索一个 DES密钥。 2006年德国Bochum和Kiel大学花费1万美元,构建了一个 名为COPACOBANA机器,它包含120个低成本FPGA,平均在9 天内能够完成一个DES密钥穷举。1415信息安全技术基础 制作:张浩军4.1.5 3DES4.1.5 3DESP = EK3(DK2(EK1(M)标准中定义3种密钥使用方式: (1)3个密钥相互独立,互不相同。这种方式提供最强安全 性,相当于提供356=168比特长度密钥。 (2)K1和K2相互独立,互不相同,而K3=K1。提供 256=112比特长度密钥,密钥空间为2112=51033。实际 应用多采用此方法。 (3)

7、3个密钥完全相等,即K1=K2=K3。算法退化为标准DES ,保证向后兼容。1516信息安全技术基础 制作:张浩军如何设计数学上可证明安全性的如何设计数学上可证明安全性的 对称密码算法对称密码算法?16Provable Security?17信息安全技术基础 制作:张浩军目目 录录4.1 数据加密标准DES4.2 高级加密标准AES4.3 其他分组密码算法介绍4.4 流密码算法RC44.5 分组密码工作模式1718信息安全技术基础 制作:张浩军4.2.1 AES4.2.1 AES基本操作流程基本操作流程 AES也是由多轮操作组成,轮数由分组和密钥长度决定。 AES在4n字节数组(矩阵)上操作,

8、称为状态(State) ,其中n是密钥字节数除4。1819信息安全技术基础 制作:张浩军4.2.1 AES4.2.1 AES基本操作流程基本操作流程 AES允许分组和密钥以128比特为基础,以8字节倍数扩展 长度,因此192、256比特分组(或密钥)就被组织成46 、48矩阵。 AES标准中使用Nb、Nk分别表示分组矩阵、密钥矩阵列数 ,如当分组为46矩阵,即Nb=6,密钥为48矩阵,则 Nk=8。 AES算法流程中轮数依赖于密钥长度,标准中使用Nr表示 轮数。AES包括3个分组密码套件: AES-128、AES-192、 AES-265对应Nk分别为4、6、8,即密钥长度对应128、192

9、和256比特,对应轮数Nr等于10、12、14,分组长度都为 128比特。1920信息安全技术基础 制作:张浩军4.2.1 AES4.2.1 AES基本操作流程基本操作流程(1)字节替换(Byte):执行一个非线性替换操作,通过 查表替换每个字节。 (2)行移位:状态(矩阵)的每一行按字节为单位循环移 动若干字节。 (3)列混合:基于状态列的混合操作。 (4)轮密钥叠加:状态的每一个字节混合轮密钥。轮密钥 也是由密钥调度算法产生。2021信息安全技术基础 制作:张浩军2122信息安全技术基础 制作:张浩军4.2.2 4.2.2 轮操作轮操作221. 字节替换23信息安全技术基础 制作:张浩军4

10、.2.2 4.2.2 轮操作轮操作232. 行移位24信息安全技术基础 制作:张浩军4.2.2 4.2.2 轮操作轮操作243. 列混合25信息安全技术基础 制作:张浩军4.2.2 4.2.2 轮操作轮操作254. 轮密钥加26信息安全技术基础 制作:张浩军4.2.3 4.2.3 密钥扩展密钥扩展2627信息安全技术基础 制作:张浩军对称密码中混乱与替换的不同实对称密码中混乱与替换的不同实 现方法现方法?27Provable Security?28信息安全技术基础 制作:张浩军目目 录录4.1 数据加密标准DES4.2 高级加密标准AES4.3 其他分组密码算法介绍4.4 流密码算法RC44.

11、5 分组密码工作模式2829信息安全技术基础 制作:张浩军4.3.1 4.3.1 IDEAIDEA算法算法 国际数据加密算法IDEA是1991年由James Massey和我国学 者来学嘉共同设计的,在协议PGP中广泛应用。 IDEA算法采用64比特分组和128比特密钥,包括相同的8轮 转换和1个输出转换(半轮)。 IDEA通过交叉使用不同群-模加和乘运算,以及比特位异 或,这些运算在代数上是“不协调的”。 轮变换输入将64比特分为4个16比特子分组,经过变换输 出4个16比特子分组,作为下一轮输入。 每轮变换中,在模乘或模加运算中混合6个16比特密钥, 最后一轮4个运算,混合K1到K4密钥,

12、4个16比特输出,合 并后作为IDEA加密产生的64比特密文。2930信息安全技术基础 制作:张浩军30IDEA加密轮变换31信息安全技术基础 制作:张浩军4.3.2 Blowfish4.3.2 Blowfish算法算法 Bruce Schneier在1993设 计的分组加密算法,速度 快。 依赖密钥的S盒和复杂密钥 调度。使用64比特分组, 从32比特到448比特可变长 度密钥,采用16轮Feistel 结构。3132信息安全技术基础 制作:张浩军4.3.2 Blowfish4.3.2 Blowfish算法算法3233信息安全技术基础 制作:张浩军4.3.3 RC5/RC64.3.3 RC5

13、/RC6算法算法33RC5算法: 可变分组长度(32、64或128比特) 、密钥长度(0到2040比特)以及轮 数(0到255),原始建议选择参数64 比特分组、128比特密钥和12轮。 用于研究和评估作为密码原语相关操 作。 RC5包括一系列模加和异或运算,采 用类Feistel网络结构。 其密钥调度本质上单向函数扩展密钥 。 每一轮变换有相同的2个半轮构成。34信息安全技术基础 制作:张浩军如何实现如何实现“无限无限”长度密钥的对长度密钥的对 称密码算法称密码算法?34Stream Cipher?35信息安全技术基础 制作:张浩军目目 录录4.1 数据加密标准DES4.2 高级加密标准AE

14、S4.3 其他分组密码算法介绍4.4 流密码算法RC44.5 分组密码工作模式3536信息安全技术基础 制作:张浩军4. 4 4. 4 流密码算法流密码算法RC4RC4 RC4算法由主密钥(通信双方共享的一定长度密钥)按一 定密钥调度算法产生任意长度伪随机密钥字节流(以字节 为单位),与明文流按字节异或生成密文流,解密时密文 流与相同的密钥流按字节异或恢复出明文字节流。3637信息安全技术基础 制作:张浩军4. 4 4. 4 流密码算法流密码算法RC4RC4 RC4算法首先使用1到256字节(8到2048比特)的可变长度 密钥初始化一个256个字节的状态矢量,记为S,S的元素 记为S0、S1、

15、S2 S255,类似于数组表示。 至始至终S向量始终包含0255(十进制)所有的8比特数 。 加密和解密过程中,密钥流每个字节由S中的256个元素按 一定方式依次选出一个元素生成,每生成一个密钥字节, S中的元素就被重新置换一次。3738信息安全技术基础 制作:张浩军4. 4 4. 4 流密码算法流密码算法RC4RC4 S最初被初始化时,从低到高字节顺序放置0至255这256个 数。同时设置一个临时向量T,将密钥K按字节赋值给T, 也称使用密钥调度算法KSA。 使用T产生S的初始置换。下标i从0到255,依次当前根据 Ti和Si的值,确定将Si中元素与S中另一个元素交 换。 通过初始置换,原先

16、顺序排列数值0255的S向量根据T( 主密钥)被重新乱序,不同的主密钥,乱序结果不同。3839信息安全技术基础 制作:张浩军4. 4 4. 4 流密码算法流密码算法RC4RC4 以初始化后的矢量S为基础,依次产生密钥流的每一个字 节,每选择一个密钥字节,还有再完成一次置换,密钥字 节产生算法(也称伪随机发生算法PRGA)如下,其中使用 2个8比特指针,表示为i和j。39生成密钥流40信息安全技术基础 制作:张浩军如何应用有限密钥长度分组密码如何应用有限密钥长度分组密码 安全加密长消息安全加密长消息?40Working Mode?41信息安全技术基础 制作:张浩军目目 录录4.1 数据加密标准DES4.2 高级加密标准AES4.3 其他分组密码算法介绍4.4 流密码算法RC44.5 分组密码工作模式4142信息安全技术基础 制作:张浩军4.5.1 4.5.1

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号