第三章-对称密码体制08课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第三章-对称密码体制08课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 对称 密码 体制 08 课件
- 资源描述:
-
1、 按算法的不同,对称密码体制又分为两类:按算法的不同,对称密码体制又分为两类:u序列密码体制序列密码体制 u分组密码体制分组密码体制3.1 两种对称密码体制两种对称密码体制 序列(流)密码序列(流)密码(Stream Cipher):明文信息逐:明文信息逐位位(或逐字符或逐字符)和一个永不重复的随机密钥序列异或,和一个永不重复的随机密钥序列异或,且密钥的长度等于明文的长度。且密钥的长度等于明文的长度。算法描述:算法描述:Ci Pi ki Pi Ci ki 3.1.1 序列密码体制序列密码体制如:如:加密过程加密过程 解密过程解密过程 明文明文(P):密文密文(C):密钥密钥(K):密钥密钥(K
2、):-密文密文(C):明文明文(P):本例中,序列流的长度为本例中,序列流的长度为5位,则密钥长度也应为位,则密钥长度也应为5位,而其密钥空间应为位,而其密钥空间应为?序列密码的序列密码的优点:优点:计算简单,效率高,保密性好。计算简单,效率高,保密性好。缺点缺点:密钥管理困难(因为需要有可靠:密钥管理困难(因为需要有可靠 的密钥传输渠道和密钥保存方法)的密钥传输渠道和密钥保存方法)。25,即可能的加密密钥为,即可能的加密密钥为 32个。个。分组密码:分组密码:在密钥的控制下一次变换一个明文分组。在密钥的控制下一次变换一个明文分组。3.1.2 分组密码体制分组密码体制 -分组长度要足够长分组长
3、度要足够长,密钥量应足够大密钥量应足够大 以防止穷举密钥空间的攻击。以防止穷举密钥空间的攻击。-密码算法应足够复杂密码算法应足够复杂 使破译者除了穷举法攻击之外,找不到其它简洁使破译者除了穷举法攻击之外,找不到其它简洁的数学破译方法。的数学破译方法。分组密码设计要求分组密码设计要求 基于加密的基本方法基于加密的基本方法代替代替和和换位换位.(代替:用以(代替:用以实现扩散实现扩散;换位:用以;换位:用以实现混乱实现混乱)nDiffusion(扩散扩散)明文的的统计结构被扩散消失在密文中,明文一位影响明文的的统计结构被扩散消失在密文中,明文一位影响密文的多位,增加密文与明文之间关系的复杂性。密文
4、的多位,增加密文与明文之间关系的复杂性。nConfusion(混乱混乱)强调密钥的作用,使得密文的统计特性与密钥的取值之强调密钥的作用,使得密文的统计特性与密钥的取值之间的关系尽量复杂。间的关系尽量复杂。分组密码的工作机制分组密码的工作机制 首先要将一个明文消息首先要将一个明文消息M分成若干块,分成若干块,M=M1,M2,.,Mi 分别对每一块进行加密:分别对每一块进行加密:基于密钥替换一次再换位一次,构成一轮;这个基于密钥替换一次再换位一次,构成一轮;这个过程重复多次构成循环,循环的正向进行构成加密,过程重复多次构成循环,循环的正向进行构成加密,反向进行构成解密。反向进行构成解密。(目前,使
5、用最多的对称密码体制就是分组密码体制)(目前,使用最多的对称密码体制就是分组密码体制)分组密码算法的基本思想分组密码算法的基本思想 有几种分组密码使用模式:有几种分组密码使用模式:(1)电子密码本()电子密码本(ECB)C=C1C2.Ci 其中其中Ci=E(Mi,k)特点特点:每个明文分组的加密是独立的。分组的长度是每个明文分组的加密是独立的。分组的长度是64位,每一个明文分组与位,每一个明文分组与264个密文分组中的一个个密文分组中的一个相对应。相对应。在早期流行的商业软件产品中在早期流行的商业软件产品中,它曾经是最常用它曾经是最常用的方式。的方式。出于安全考虑,该方式目前已很少使用。出于安
6、全考虑,该方式目前已很少使用。分组密码的应用模式分组密码的应用模式 优点:实现简单。优点:实现简单。缺点:易于遭受攻击。攻击者可以根据已知的缺点:易于遭受攻击。攻击者可以根据已知的 “明文明文密文对密文对”建立一个自己的密码本建立一个自己的密码本来来 实施攻击。实施攻击。(2)密码分组链接()密码分组链接(CBC)(目前多采用这种模式目前多采用这种模式)特点特点:前后分组有关联,即前一分组的加密结果被用前后分组有关联,即前一分组的加密结果被用于后一分组的加密,这样,每一个分组的密文不仅于后一分组的加密,这样,每一个分组的密文不仅依赖于该分组的明文,而且还受前面所有分组的影依赖于该分组的明文,而
7、且还受前面所有分组的影响。响。C1=E(M1 V,k),V-初始向量初始向量 .Ci=E(Mi Ci-1,k),i=1,2,s 最后一块最后一块|Mi|若不满若不满64位,则应补齐,以保证位,则应补齐,以保证密文与明文长度相等。密文与明文长度相等。(3)输出反馈(输出反馈(OFB)(4)密文反馈(密文反馈(CFB)这两种模式的特点都是将分组用流密码方式加密,这两种模式的特点都是将分组用流密码方式加密,目前不常用。目前不常用。常用的分组密码算法包括常用的分组密码算法包括:DES,3DES,IDES,RC5,.,AES(Rijndael)3.2 DES 3.2.1 DES概述概述 DES(数据加密
8、标准)为(数据加密标准)为feistel 密码。密码。H.Feistel是是IBM 的一个专家的一个专家,最初设计了一个最初设计了一个128位密钥的分组密码位密钥的分组密码,70年代因不需要年代因不需要128位长的位长的密钥密钥,太浪费,降为太浪费,降为64 位(位(8个字节)个字节),其中每个字其中每个字节的最后一位为奇偶校验,因此,实际密钥长度为节的最后一位为奇偶校验,因此,实际密钥长度为56位。位。DES的密钥空间为的密钥空间为256,即对一个分组的可能加,即对一个分组的可能加密密钥为密密钥为256个。个。对对DES攻击的唯一有效方法是:攻击的唯一有效方法是:“穷举法穷举法”。穷举法:穷
9、举法:逐个试验所有的密钥逐个试验所有的密钥 k,直到,直到 C=Ek(m)。由于由于DES的的256的密钥空间,通过猜测的密钥空间,通过猜测256个可能个可能的密钥破译一个分组,按当时的计算机水平,使用的密钥破译一个分组,按当时的计算机水平,使用穷举法需要穷举法需要2283年。年。该标准该标准1977年由美国国家标准局年由美国国家标准局(NBS)颁布,颁布,1981年,被美国商业组织所采纳,作为美国国家标年,被美国商业组织所采纳,作为美国国家标准数据加密算法,之后,很快被用于政府、金融等准数据加密算法,之后,很快被用于政府、金融等领域。并成为事实上的国际标准。领域。并成为事实上的国际标准。NB
10、S规定:每规定:每5年对年对DES进行一次重新审查和修订。进行一次重新审查和修订。1983年年-没有任何修改没有任何修改 1987年年-NBS认为认为DES已不够安全,宣布不再对已不够安全,宣布不再对其进行认证,但仍宣布过渡其进行认证,但仍宣布过渡5年。年。1993年年-由于由于NSA没有提出新的民用加密算法,没有提出新的民用加密算法,而且而且DES也没有被攻破的公开声明,因此要继续过也没有被攻破的公开声明,因此要继续过度度5年。年。1998年年-1997年人们通过穷举密钥破译了它,年人们通过穷举密钥破译了它,(通过网络,利用集体的力量,用了大约(通过网络,利用集体的力量,用了大约100天左天
11、左右的时间)。它的主要缺陷就是右的时间)。它的主要缺陷就是密钥太短密钥太短。关于。关于DES的另一个争论焦点是,的另一个争论焦点是,DES中中是否存在陷门是否存在陷门。但由于当时还没有更好的算法来代替它,所以但由于当时还没有更好的算法来代替它,所以1998年的情况依然如此,年的情况依然如此,DES仍然继续使用。仍然继续使用。2000年年10月月,NIST(美国国家标准和技术协会)(美国国家标准和技术协会)宣布将从宣布将从15种侯选算法中选出一项新的加密标准。种侯选算法中选出一项新的加密标准。新的标准将会代替旧的新的标准将会代替旧的DES算法。算法。Rijndael被选中被选中成为将来的成为将来
12、的AES(高级加密标准高级加密标准Advanced Encryption Standard)。Rijndael这个名字是从它这个名字是从它的两个发明者的两个发明者Rijmen和和Daemen的名字得来的。的名字得来的。从从2001年年开始,美国政府开始使用开始,美国政府开始使用DES的的“接接班人班人”-AES。在其他国家,在其他国家,DES还在广泛使用。还在广泛使用。DES是一个分组加密算法,它以是一个分组加密算法,它以64位为一个分位为一个分组对数据加密。组对数据加密。64位一组的明文从算法的一端输入,位一组的明文从算法的一端输入,64位的密文从另一端输出。由于它是对称体制,加位的密文从另
13、一端输出。由于它是对称体制,加密解密使用同一算法密解密使用同一算法。DES算法的原理算法的原理:简单地说,算法只不过是加密的两个基本技术简单地说,算法只不过是加密的两个基本技术 混乱混乱(confusion)和扩散和扩散(diffusion)的组合。的组合。实现实现混乱和扩散的方法是:混乱和扩散的方法是:代替和换位。代替和换位。3.2.2 DES的基本原理的基本原理 它基于密钥作用于明文,运算一次为一轮,它基于密钥作用于明文,运算一次为一轮,共进行共进行16轮相同的运算,即在明文分组上轮相同的运算,即在明文分组上16次次实施相同的组合运算,最后输出密文。实施相同的组合运算,最后输出密文。为什么
14、要进行为什么要进行16轮迭代运算?轮迭代运算?轮数越多越安全,但代价与轮数成正比,轮数越多越安全,但代价与轮数成正比,16轮轮是一个合适的选择。是一个合适的选择。算法流程:算法流程:首先,通过一个初始置换将首先,通过一个初始置换将64位的明文分组分成位的明文分组分成左右两部分,各左右两部分,各32位长,然后进行位长,然后进行16轮完全相同的轮完全相同的运算。运算。这些运算被称为这些运算被称为f 函数函数,在运算过程中,数据与密在运算过程中,数据与密钥结合。钥结合。f函数的作用是将函数的作用是将32比特的比特的0,1打乱,即实现混乱。打乱,即实现混乱。每一轮中的密钥每一轮中的密钥K不同。不同。1
15、 算法的描述:算法的描述:输入输入X=x1,x2,.,x64(明文)(明文)初始换位初始换位 L(0)=L1,.,L32 R(0)=R1,R32 L(1)=L1,.,L32 R(1)=R1,R32 L(16)=L1,.,L32 R(16)=R1,R32 Y=y1,y2,y64(密文(密文)k1 f fk16 逆换位逆换位 )(6416,2,1),(16,2,1)64(1616111100LRIPbitikRfLRiRLbitIPRLiiiiii密文输入码 示意图:示意图:2 DES的加密和解密过程的加密和解密过程 令令i表示迭代次数,表示迭代次数,表示逐位模表示逐位模2求和,求和,f为加密函数
16、。为加密函数。n加密过程:加密过程:n解密过程:解密过程:)(6416,2,1),(16,2,1)64(1616111100LRIPbitikRfLRiRLbitIPRLiiiiii密文输入码)(641,15,16),(1,15,16)64(0011111616LRIPbitikRfRLiLRbitIPLRiiiiii明文密文初始置换初始置换IP和初始逆置换和初始逆置换IP-1:3 每一轮的简单描述每一轮的简单描述 每一轮:每一轮:(如下图)(如下图)简单描述:简单描述:K(48K(48位位)32位位8个个S盒盒 48位位 32位位 在每一轮中,密钥位移位,然后再从密钥的在每一轮中,密钥位移位
17、,然后再从密钥的56位中选出位中选出48位。通过一个扩展置换将数据的右半部分扩展成位。通过一个扩展置换将数据的右半部分扩展成48位(位(实现扩散实现扩散),并通过一个异或操作与),并通过一个异或操作与48位密钥结合,再通位密钥结合,再通过过8个个S盒将这盒将这48位替代成新的位替代成新的32位数据位数据(实现混乱实现混乱),再将,再将其置换一次。这四步运算为一轮,称为其置换一次。这四步运算为一轮,称为函数函数f。DES的安全性主要依赖于的安全性主要依赖于S盒,而且盒,而且S盒是唯一的非线性部分。盒是唯一的非线性部分。解密过程与加密过程一样解密过程与加密过程一样,只是所使用的密钥次序为逆序。只是
展开阅读全文