书签 分享 收藏 举报 版权申诉 / 95
上传文档赚钱

类型第二讲之第3章-对称密码体系课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3032718
  • 上传时间:2022-06-24
  • 格式:PPT
  • 页数:95
  • 大小:2.70MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《第二讲之第3章-对称密码体系课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    第二 对称 密码 体系 课件
    资源描述:

    1、第第2章章 密码技术基础密码技术基础第第3章章 对称密码体系对称密码体系第第4章章 公钥密码体系公钥密码体系第第5章章 公钥基础设施公钥基础设施PKI第六章第六章 信息隐藏技术信息隐藏技术u3.13.1 概述概述u3.2 3.2 序列密码(流密码)序列密码(流密码)u3.3 3.3 分组密码分组密码u3.4 DES3.4 DES数据加密标准数据加密标准 u3.5 IDEA3.5 IDEA算法算法u3.6 RC53.6 RC5算法算法对称加密算法是应用较早的加密算法,技对称加密算法是应用较早的加密算法,技术成熟。术成熟。在对称加密算法中,使用的密钥只有一个在对称加密算法中,使用的密钥只有一个,发

    2、收信双方都使用这个密钥对数据进行加,发收信双方都使用这个密钥对数据进行加密和解密。密和解密。也称为也称为“传统加密算法传统加密算法”、“单密钥加密单密钥加密算法算法”、“秘密密钥算法秘密密钥算法”。注意:一个密钥u优点:优点:算法简单,效率高,系统开销小,适合加密算法简单,效率高,系统开销小,适合加密大量数据。大量数据。u缺点:缺点:(1)通信双方都使用同样钥匙,安全性得不到通信双方都使用同样钥匙,安全性得不到保证,存在密钥安全交换问题。保证,存在密钥安全交换问题。(2)每对用户每次使用对称加密算法时,都需每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得要使用其他人不

    3、知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量成几何级数增发收信双方所拥有的钥匙数量成几何级数增长,密钥管理成为用户的负担。长,密钥管理成为用户的负担。u(1)(1)序列密码(流密码)序列密码(流密码) (stream cipher)一次只对明文中的单个位(有时对字节)运算一次只对明文中的单个位(有时对字节)运算的算法称为序列算法或序列密码。的算法称为序列算法或序列密码。u(2)(2)分组密码分组密码 (block cipher)对明文的一组位进行运算,这些位组称为分组对明文的一组位进行运算,这些位组称为分组,相应的算法称为分组算法或分组密码。,相应的算法称为分组算法或分组密码。u序列密码

    4、是由一种专业的密码,序列密码是由一种专业的密码,VernamVernam 密码(也称为一次性密码本(密码(也称为一次性密码本(one-one-time padtime pad),发展而来的。),发展而来的。u具有实现简单、便于硬件实施、加解密具有实现简单、便于硬件实施、加解密处理速度快、没有或只有有限的错误传处理速度快、没有或只有有限的错误传播等特点。播等特点。u通过有限状态机产生性能优良的伪随机序列通过有限状态机产生性能优良的伪随机序列,使用该序列加密信息流,(逐比特加密),使用该序列加密信息流,(逐比特加密)得到密文序列。得到密文序列。u加密:加密:u解密:解密:iiiKMCiiiKCM构

    5、造密钥流生成器是流密码最核心的内容。构造密钥流生成器是流密码最核心的内容。密钥流生成器的目的是由一个短的随机密钥密钥流生成器的目的是由一个短的随机密钥( (也称实际密钥或种子密钥也称实际密钥或种子密钥) ) k k 生成一个长的生成一个长的密钥流,用这个长的密钥流对明文加密或对密钥流,用这个长的密钥流对明文加密或对密文解密,从而使一个短的密钥可用来加密密文解密,从而使一个短的密钥可用来加密更长的明文或解密更长的密文的目的。更长的明文或解密更长的密文的目的。 由于大部分密码是基于世界上公开由于大部分密码是基于世界上公开的数学难题,所以造成大多数密钥的数学难题,所以造成大多数密钥流生成器的不安全性

    6、。流生成器的不安全性。目前应用最广泛的流密码是目前应用最广泛的流密码是同步流同步流密码密码。一个同步流密码是否具有很高的密一个同步流密码是否具有很高的密码码强度强度主要取决于密钥流生成器的主要取决于密钥流生成器的设计。设计。 uRC4算法算法RC4加密算法是大名鼎鼎的加密算法是大名鼎鼎的RSA三人组中的三人组中的头号人物头号人物Ron Rivest在在1987年设计的密钥长年设计的密钥长度可变的流加密算法簇。之所以称其为簇,度可变的流加密算法簇。之所以称其为簇,是由于其核心部分的是由于其核心部分的S-box长度可为任意,但长度可为任意,但一般为一般为256字节。该算法的速度可以达到字节。该算法

    7、的速度可以达到DES加密的加密的10倍左右。倍左右。uA5算法算法欧洲欧洲GSM标准中规定的加密算法,用于数字标准中规定的加密算法,用于数字蜂窝移动电话的加密,加密从用户设备到基蜂窝移动电话的加密,加密从用户设备到基站之间的链路。站之间的链路。A5算法包括很多种,主要为算法包括很多种,主要为A5/1和和A5/2。其中,。其中,A5/1为强加密算法,适为强加密算法,适用于欧洲地区;用于欧洲地区;A5/2为弱加密算法,适用于为弱加密算法,适用于欧洲以外的地区。欧洲以外的地区。uSeal算法算法IBM提出的、适合于软件实现的提出的、适合于软件实现的160位流密码位流密码算法,世界公认的高安全加密算法

    8、。算法,世界公认的高安全加密算法。加解密速度快,比加解密速度快,比 128bit AES 快快 8 倍左右倍左右。uPKZIP广泛应用于数据压缩的算法,是一种按字广泛应用于数据压缩的算法,是一种按字节加密的流密码。节加密的流密码。u自同步流密码的研究自同步流密码的研究;u有记忆前馈网络密码系统的研究有记忆前馈网络密码系统的研究;u多输出密码函数的研究多输出密码函数的研究;u高速密码芯片的开发高速密码芯片的开发;u同步序列密码在失步后如何重新同步的同步序列密码在失步后如何重新同步的问题问题;3.3.1 分组密码工作方式分组密码工作方式3.3.2 分组密码的设计原则分组密码的设计原则 3.3.3

    9、典型分组密码算法典型分组密码算法u分组密码的工作方式:分组密码的工作方式: 将明文分成固定长度的组(块),如将明文分成固定长度的组(块),如64比特一比特一组组 ,用同一密钥和算法对每一块加密,输出也,用同一密钥和算法对每一块加密,输出也是固定长度的密文。是固定长度的密文。 其中,明文为分组长度为m比特的序列,密文为分组长度为n的序列,加密与解密过程由x比特密钥控制。u分组密码主要有两个优点:分组密码主要有两个优点:易于标准化易于标准化易于实现同步易于实现同步u一些局限性。一些局限性。比如:分组密码不便于隐藏明文的数据模式,对于重放比如:分组密码不便于隐藏明文的数据模式,对于重放、插入、删除等

    10、攻击方式的抵御能力不强。但是通过采、插入、删除等攻击方式的抵御能力不强。但是通过采用流密码的设计思想,在加密过程中采用合理的记忆组用流密码的设计思想,在加密过程中采用合理的记忆组件,能够消除这些局限性。件,能够消除这些局限性。u如果在构造分组密码系统的时候直接采用分组密如果在构造分组密码系统的时候直接采用分组密码算法,则称这种工作模式为电码本(码算法,则称这种工作模式为电码本(ECBECB)模式。)模式。分组密码的上述缺陷导致了这种工作模式也具有相分组密码的上述缺陷导致了这种工作模式也具有相应的缺陷。因此,实际采用的分组密码工作模式是应的缺陷。因此,实际采用的分组密码工作模式是对电码本(对电码

    11、本(ECBECB)模式的改进。)模式的改进。u为保证密码的安全性,为保证密码的安全性,Shannon提出了混乱原提出了混乱原则和扩散原则则和扩散原则 : 混乱原则混乱原则指的是:为了避免密码分析者利用明指的是:为了避免密码分析者利用明文和密文之间的依赖关系进行破译,密码的设计文和密文之间的依赖关系进行破译,密码的设计因该保证这种依赖关系足够复杂。因该保证这种依赖关系足够复杂。 扩散原则扩散原则指的是:为避免密码分析者对密钥逐指的是:为避免密码分析者对密钥逐段破译,密码的设计因该保证密钥的每位数字能段破译,密码的设计因该保证密钥的每位数字能够影响密文中的多位数字够影响密文中的多位数字 u在设计分

    12、组密码时,必须结合预定的实现方法在设计分组密码时,必须结合预定的实现方法进行考虑进行考虑 DESIDEARC5SAFERBlowfish Skipjack DESDES算法描述算法描述 DESDES安全分析安全分析 三重三重DESDESuDES算法加密时把明文以算法加密时把明文以64bit为单位分为单位分成块,而后用密钥把每一块明文转化成成块,而后用密钥把每一块明文转化成同样同样64bit的密文块。的密文块。uDES可提供可提供72,000,000,000,000,000个密钥,用每微秒可进行一次个密钥,用每微秒可进行一次DES加加密的机器来破译密码需两千年。密的机器来破译密码需两千年。 u历

    13、史:历史:IBM在在60年代启动了年代启动了LUCIFER项目,当时的项目,当时的算法采用算法采用128位密钥位密钥改进算法,降低为改进算法,降低为56位密钥,位密钥,IBM提交给提交给NBS(NIST),于是产生于是产生DES 1977年由美国的标准化局年由美国的标准化局(NBS,现为现为NIST采纳采纳)选为数据加密标准。选为数据加密标准。该标准每该标准每5年重新审查和评估一次,至今继续年重新审查和评估一次,至今继续u64位分组、位分组、56位密钥位密钥lDES算法大致可以分成四个部分:算法大致可以分成四个部分:(1)初始置换)初始置换(2)迭代过程)迭代过程(3)逆初始置换)逆初始置换(

    14、4)子密钥生成)子密钥生成u16轮迭代:轮迭代:Round1 Round16u每轮采用不同的密钥:每轮采用不同的密钥:K1 K16u每轮的密钥都是从上一轮密钥产生而来每轮的密钥都是从上一轮密钥产生而来DES每一轮:每一轮:Li = Ri-1 Ri = Li-1 F(Ri-1,Ki)Expansion: 32 48S-box: 6 4 Permutation32bits32 | 01 02 03 04 | 0504 | 05 06 07 08 | 0908 | 09 10 11 12 | 1312 | 13 14 15 16 | 1716 | 17 18 19 20 | 2120 | 21 22

    15、 23 24 | 2524 | 25 26 27 28 | 2928 | 29 30 31 32 | 01比特位序号第30个位值把Si的输入b1,b2,b3,b4,b5,b6分成中b1b6和b2,b3,b4,b5,计算出x=b1*2+b6, y=b5+b4*2+b3*4+b2*8。然后从Si表中查出x 行,y 列的值Sxy。将Sxy化为二进制,即得Si盒的输出。IP置换表58504234261810260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393

    16、123157(1) 58表示:结果中位于第表示:结果中位于第1个位置的值,个位置的值,等于等于原文中第原文中第58个位置的值个位置的值(2) 图中的一格代表图中的一格代表1bit,共有共有64bit,即,即8字节字节待加密的64比特明文串m,经过IP置换后,得到的比特串的下标列表如下:34u6464位初始密钥位初始密钥k k8 8位位是奇偶校验位是奇偶校验位5656位位密钥。密钥。u5656位密钥位密钥的密钥生的密钥生成成16个个48比特的子比特的子密钥。其生成过程密钥。其生成过程如右图。如右图。64bits密钥密钥变换为变换为56bits密钥密钥经置换后的56bits密钥分为各28bits的

    17、C0和D0。u初始密钥初始密钥k k经过经过PC-1PC-1置换后分为置换后分为C0C0和和D0D0,其它的,其它的C Ci i和和D Di i循环左移得到:循环左移得到: 式中式中i=1,2,16,LSLS是循环左移位变换,其中是循环左移位变换,其中LSLS1 1、LSLS2 2、LSLS9 9、LSLS1616是循环左移是循环左移一位一位,其余的,其余的LSLSi i是是循环左移循环左移两位两位。u第第i次密钥次密钥-2(,)iiiKPCC D首先将首先将Ci和和Di组合成组合成56位,然后按位,然后按下面表进行置换。下面表进行置换。u解密是加密的逆变换解密是加密的逆变换u解密算法和加密算

    18、法相同,但是它使解密算法和加密算法相同,但是它使用的子密钥顺序是相反的:用的子密钥顺序是相反的:第一次是用第一次是用K16,第第2 2次迭代用次迭代用K K1515,最后一次用最后一次用K K1 1 。取取16进制明文进制明文X:0123456789ABCDEF密钥密钥K为:为:133457799BBCDFF1去掉奇偶校验位以二进制形式表示的密钥是:去掉奇偶校验位以二进制形式表示的密钥是:00010010011010010101101111001001101101111011011111111000应用应用IP,我们得到:,我们得到:L0=110011000000000011001100111

    19、11111L1=R0=11110000101010101111000010101010然后进行然后进行16轮加密。轮加密。最后对最后对L16, R16使用使用IP-1得到密文:得到密文:85E813540F0AB405u第一种:电子密码本方式(第一种:电子密码本方式(ECB)u这种模式是最早采用和最简单的模式,它将加密这种模式是最早采用和最简单的模式,它将加密的数据分成若干组,每组的大小跟加密密钥长度的数据分成若干组,每组的大小跟加密密钥长度相同,然后每组都用相同的密钥进行加密。相同,然后每组都用相同的密钥进行加密。 uDES算法中,采用该模式加密时,就是将要加密算法中,采用该模式加密时,就是

    20、将要加密的数据分成每组的数据分成每组64位的数据,如果最后一组不够位的数据,如果最后一组不够64位,那么就补齐为位,那么就补齐为64位位,然后每组数据都采用然后每组数据都采用DES算法的算法的64位密钥进行加密。位密钥进行加密。 u 在在CBC方式下,每个明文组方式下,每个明文组xi在加密前与在加密前与先一组密文按位模二加后,再送到先一组密文按位模二加后,再送到DES加密加密,CBC方式克服了方式克服了ECB方式报内组重的缺点方式报内组重的缺点,但由于明文组加密与前一组密文有关,因,但由于明文组加密与前一组密文有关,因此前一组密文的错误会传播到下一组。此前一组密文的错误会传播到下一组。1)首先

    21、将数据按照)首先将数据按照8个字节一组进行分组得到个字节一组进行分组得到D1D2Dn(若数据不是(若数据不是8的整数倍,用指定的整数倍,用指定的的PADDING数据补位)数据补位)2)第一组数据)第一组数据D1与初始化向量与初始化向量I异或后的结果异或后的结果进行进行DES加密得到第一组密文加密得到第一组密文C1(初始化向量(初始化向量I为全零)为全零)3)第二组数据)第二组数据D2与第一组的加密结果与第一组的加密结果C1异或异或以后的结果进行以后的结果进行DES加密,得到第二组密文加密,得到第二组密文C24)之后的数据以此类推,得到)之后的数据以此类推,得到Cnu5)按顺序连为)按顺序连为C

    22、1C2C3Cn即为加密结果即为加密结果。u1)首先将数据按照)首先将数据按照8个字节一组进行分组个字节一组进行分组得到得到C1C2C3Cnu2)将第一组数据进行解密后与初始化向)将第一组数据进行解密后与初始化向量量I进行异或得到第一组明文进行异或得到第一组明文D1(注意:(注意:一定是先解密再异或)一定是先解密再异或)u3)将第二组数据)将第二组数据C2进行解密后与第一组进行解密后与第一组密文数据进行异或得到第二组数据密文数据进行异或得到第二组数据D2u4)之后依此类推,得到)之后依此类推,得到Dnu5)按顺序连为)按顺序连为D1D2D3Dn即为解密即为解密结果。结果。u u将少量递增的纯文本

    23、加密成密码文本,而不是一将少量递增的纯文本加密成密码文本,而不是一次处理整个块。次处理整个块。u该模式使用在长度上为一个块且被分为几部分的该模式使用在长度上为一个块且被分为几部分的移位寄存器。例如,如果块大小为移位寄存器。例如,如果块大小为 8 个字节,并个字节,并且每次处理一个字节,则移位寄存器被分为且每次处理一个字节,则移位寄存器被分为 8 个个部分。部分。u如果密码文本中有一个位出错,则一个纯文本位如果密码文本中有一个位出错,则一个纯文本位出错,并且移位寄存器损坏。这将导致接下来若干出错,并且移位寄存器损坏。这将导致接下来若干次递增的纯文本出错,直到出错位从移位寄存器中次递增的纯文本出错

    24、,直到出错位从移位寄存器中移出为止。移出为止。u u将少量递增的纯文本处理成密码文本,而不是一将少量递增的纯文本处理成密码文本,而不是一次处理整个块。此模式与次处理整个块。此模式与 CFB 相似。相似。u与与CFB唯一不同的是唯一不同的是OFB是直接取是直接取DES输出的输出的t个比特,而不是取密文的个比特,而不是取密文的t个比特,其余都与个比特,其余都与CFB相同。但它取的是相同。但它取的是DES的输出,所以它克服了的输出,所以它克服了CFB的密文错误传播的缺点。的密文错误传播的缺点。lDESDES的安全性取决于密钥的保密的安全性取决于密钥的保密 ,与算法,与算法无关。无关。主要表现在:主要

    25、表现在:l密钥的互补性、弱密钥与半弱密钥、密文明密钥的互补性、弱密钥与半弱密钥、密文明文相关性、密文密钥相关性、文相关性、密文密钥相关性、S盒的设计、盒的设计、密钥搜索等。密钥搜索等。l对对DESDES的攻击方法:的攻击方法: (1 1)穷举攻击穷举攻击 (2 2)差分密码分析差分密码分析 (3 3)线性密码分析线性密码分析攻击者类型 密钥长度 个 人 攻击 小 组 攻击 院校网络攻击 大公司 军事情报机构 计算资源 (假设) 1台高性能 计 算机 1 6 台 高性 能 计算机 256台高性能计算机 大型机 (百万美元级) 大型机 (百万美元级)及先进攻击技术 40 bit 数周 数日 数小时

    26、 数毫秒 数微秒 56 bit 数百年 数十年 数年 数小时 数秒钟 64 bit 数千年 数百年 数十年 数日 数分钟 80 bit 不可能 不可能 不可能 数百年 数百年 128 bit 不可能 不可能 不可能 不可能 数千年 uDES的唯一密码学缺点就是密钥长度较短。解决密钥长度的问题的办法之一是采用三重DES。u三重DES由Tuchman 于1979年提出,使用了168 bits密钥。1985年成为金融应用标准,1999年并入美国国家标准与技术研究局的数据加密标准。u三重DES方法需要执行三次常规的DES加密步骤 。其算法步骤:用密钥进行DES加密;用步骤的结果使用密钥进行DES解密用

    27、步骤的结果使用密钥进行DES加密u加密:加密: 设设K1、K2、K3是三个长度为是三个长度为56的密钥,给定的密钥,给定明文明文m,则密文为:,则密文为:u解密:解密: 给定密文给定密文c,则明文为:,则明文为:56三重三重DES的加密次序:考虑兼容性;的加密次序:考虑兼容性;当当K1=K2=K3,三重,三重DES退化为单重退化为单重 DES;当当K1=K3,密钥长度为,密钥长度为112bits。uIDEAIDEAInternation Data Encryption Algorithmu可用于加密和解密,可用于加密和解密,一个非常成功的分一个非常成功的分组密码,并广泛的应用在安全电子邮件组密

    28、码,并广泛的应用在安全电子邮件PGP中。中。u主要有三种运算:异或、模加、模乘,主要有三种运算:异或、模加、模乘,容易用软件和硬件来实现容易用软件和硬件来实现58u由中国学者来学嘉博士和著名的密码专家由中国学者来学嘉博士和著名的密码专家 James L. Massey 于于1990年联合提出的年联合提出的,91年修订,年修订,92公布细节公布细节u128位密钥,位密钥,64位分组位分组u设计目标可从两个方面考虑设计目标可从两个方面考虑加密强度加密强度易实现性易实现性uIDEA总共进行总共进行8轮迭代操作,每轮需要轮迭代操作,每轮需要6个子密钥,另外还需要个子密钥,另外还需要4个额外子密钥,个额

    29、外子密钥,所以总共需要所以总共需要52个子密钥,这个子密钥,这52个子密钥个子密钥都是从都是从128位密钥中扩展出来的。位密钥中扩展出来的。u异或运算(异或运算( )u整数模整数模216加(加( + )u整数模整数模216+1乘(乘( )(IDEA的的S盒)盒)u扩散由称为扩散由称为MA结构结构的算法基本构件提供。的算法基本构件提供。MA盒子64uIDEA的各轮都相同的结构,但所用的子密的各轮都相同的结构,但所用的子密钥和轮输入不同。钥和轮输入不同。u从结构图可见,从结构图可见,IDEA不是传统的不是传统的Feistel密密码结构。每轮开始时有一个变换,该变换的码结构。每轮开始时有一个变换,该

    30、变换的输入是输入是4个子段和个子段和4个子密钥,变换中的运算个子密钥,变换中的运算是两个乘法和两个加法,输出的是两个乘法和两个加法,输出的4个子段经个子段经过异或运算形成了两个过异或运算形成了两个16比特的子段作为比特的子段作为MA结构的输入。结构的输入。MA结构也有两个输入的子结构也有两个输入的子密钥,输出是两个密钥,输出是两个16比特的子段。比特的子段。5、IDEA的轮结构的轮结构65加密过程由连续的加密过程由连续的8轮迭代和一个输出变换轮迭代和一个输出变换组成,算法将组成,算法将64比特的明文分组分成比特的明文分组分成4个个16比特的子段,每轮迭代以比特的子段,每轮迭代以4个个16比特的

    31、子段比特的子段作为输入,输出也为作为输入,输出也为4个个16比特的子段。最比特的子段。最后的输出变换也产生后的输出变换也产生4个个16比特的子段,链比特的子段,链接起来后形成接起来后形成64比特的密文分组。每轮迭代比特的密文分组。每轮迭代还需使用还需使用6个个16比特的子密钥,最后的输出比特的子密钥,最后的输出变换需使用变换需使用4个个16比特的子密钥,所以子密比特的子密钥,所以子密钥总数为钥总数为52。66算法框架算法框架的右半部分表示由初始的的右半部分表示由初始的128比特比特密钥产生密钥产生52个子密钥的子密钥产生器。个子密钥的子密钥产生器。 最后,变换的最后,变换的4个输出子段和个输出

    32、子段和MA结构的两结构的两个输出子段经过异或运算产生这一轮的个输出子段经过异或运算产生这一轮的4个个输出子段。注意,由输出子段。注意,由X2产生的输出子段和由产生的输出子段和由X3产生的输出子段交换位置后形成产生的输出子段交换位置后形成Wi2和和Wi3,目的在于进一步增加混淆效果,使得算法,目的在于进一步增加混淆效果,使得算法更易抵抗差分密码分析。更易抵抗差分密码分析。67u在每一轮中,执行的顺序如下:1. X1和第一个子密钥相乘。2. X2和第二个子密钥相加。3. X3和第三个子密钥相加。4. X4和第四个子密钥相乘。5. 将第1步和第3步的结果相异或。6. 将第2步和第4步的结果相异或。7

    33、、IDEA每一轮的加密顺序每一轮的加密顺序68u7. 将第将第5步的结果与第五个子密钥相乘。步的结果与第五个子密钥相乘。u8. 将第将第6步和第步和第7步的结果相加。步的结果相加。u9. 将第将第8步的结果与第六个子密钥相乘。步的结果与第六个子密钥相乘。u10.将第将第7步和第步和第9步的结果相加。步的结果相加。u11.将第将第1步和第步和第9步的结果相异或。步的结果相异或。u12.将第将第3步和第步和第9步的结果相异或。步的结果相异或。u13.将第将第2步和第步和第10步的结果相异或。步的结果相异或。u14.将第将第4步和第步和第10步的结果相异或。步的结果相异或。IDEA每一轮的加密顺序(

    34、续每一轮的加密顺序(续1)69 算法的第算法的第9步是一个输出变换。它的结构步是一个输出变换。它的结构和每一轮开始的变换结构一样,不同之处在和每一轮开始的变换结构一样,不同之处在于输出变换的第于输出变换的第2个和第个和第3个输入首先交换了个输入首先交换了位置,目的在于撤销第位置,目的在于撤销第8轮输出中两个子段轮输出中两个子段的交换。还需注意,第的交换。还需注意,第9步仅需步仅需4个子密钥,个子密钥,而前面而前面8轮中每轮需要轮中每轮需要6个子密钥。个子密钥。IDEA每一轮的加密顺序(续每一轮的加密顺序(续2)u穷举法攻击穷举法攻击 IDEAIDEA的密匙空间(密匙长度)是的密匙空间(密匙长度

    35、)是128128位,用十进制表位,用十进制表示所有可能的密匙个数将是一个天文数字:示所有可能的密匙个数将是一个天文数字:340,282,366,920,938,463,463,374,607,431,768,21340,282,366,920,938,463,463,374,607,431,768,211,456.1,456.为了试探出一个特定的密匙,平均要试探一半上面的为了试探出一个特定的密匙,平均要试探一半上面的可能性。即使你用了十亿台每秒钟能够试探十亿个密可能性。即使你用了十亿台每秒钟能够试探十亿个密匙的计算机,所需的时间也比目前所知的宇宙的年龄匙的计算机,所需的时间也比目前所知的宇宙的

    36、年龄要长,而即使是在当代制造每秒试探十亿个密匙的计要长,而即使是在当代制造每秒试探十亿个密匙的计算机还是不可能的。算机还是不可能的。 u差分密码分析差分密码分析 已证明已证明IDEAIDEA算法在其算法在其8 8轮迭代的第轮迭代的第4 4圈之后便不受差分密码分析圈之后便不受差分密码分析的影响了的影响了u线性分析线性分析u弱密钥弱密钥 u Ron.Ron.RivestRivest于于19941994年设计的一种新的年设计的一种新的分组算法,分组算法,1995年正式公开年正式公开。u它的前身它的前身RC2RC2、RC4RC4分别是可变密钥长分别是可变密钥长度的分组和流加密算法。度的分组和流加密算法

    37、。uRC5RC5是可变密文长度、可变轮数、可变是可变密文长度、可变轮数、可变密钥长度的分组加密算法。密钥长度的分组加密算法。uRC5RC5加密算法的特点有:加密算法的特点有: 1.1.基本运算是微处理器上常见的初等运算基本运算是微处理器上常见的初等运算 2.2.字的位数作为字的位数作为RC5RC5的参数的参数 3.3.安全性依赖于旋转运算和不同运算的混合安全性依赖于旋转运算和不同运算的混合 4.4.存储要求低,适合在智能卡上实现存储要求低,适合在智能卡上实现 5.5.轮数和密钥长度可以变化轮数和密钥长度可以变化 uRC5RC5算法由密钥扩展算法、加密算法、解密算算法由密钥扩展算法、加密算法、解

    38、密算法组成法组成 。uRC5实际上是由三个参数决定的一族加密实际上是由三个参数决定的一族加密算法。一个特定的算法。一个特定的RC5表示为表示为 RC5-w/r/b , data=2wuRivest建议使用的标注建议使用的标注RC5为为 RC5-32/12/16明文分组明文分组32位的字,长度位的字,长度64位位加密轮数加密轮数12密钥长度密钥长度128 bitsu三个基本运算三个基本运算字的加法字的加法 模模2w +按位异或按位异或 左循环移位左循环移位 u RC5采用采用t=2r+2个子密钥字,个子密钥字,每个密钥的长度为一个字长(w bits)。u子密钥存储在数组子密钥存储在数组Si, i

    39、=0.t-1中中 s0,s1, ,st-1 它为wt矩阵u对给定的密钥K来说,经过一些复合运算可产生总数为t的字密钥,使得每一轮都分配一对密钥。除此之外的非轮运算部分也要分配一对密钥。初始化混合转换s0S1 St-1L0 L1Lc-1K0K1Kb-1S0S1St-1r,wByteswordswordsu将参数将参数r,w输入,左面标出的输入,左面标出的t-字阵列是字阵列是一些伪随机一些伪随机bit,按,按r,w的规格选入的。然的规格选入的。然后把后把b-bytes长的密钥长的密钥K0, ,b-1转换成转换成c-字阵列字阵列L0, ,c-1(字的(字的bit数为数为w,这,这里里c=b8/w;注

    40、意:;注意:密钥长度为密钥长度为b个字节个字节)。如果)。如果b不是不是w的整数倍,那么的整数倍,那么L右端的右端的空位用空位用0填入。填入。u下面描述密钥生成的细节:下面描述密钥生成的细节:对于给定的参数对于给定的参数r和和w,开始初始化运算,开始初始化运算 Pw=Odd(e-2)2w) Qw=Odd( -1)2w)这里这里 e =2.718281828459(自然对数的底)自然对数的底) =1.618033988749(黄金分割比率)(黄金分割比率)并且并且Oddx表示最接近表示最接近x且可左可右的奇整数。且可左可右的奇整数。例:例: Odde=3, Odd =1用上述两个常数,按下述方式

    41、得到初始化的阵列用上述两个常数,按下述方式得到初始化的阵列S: S0=Pw For i=1 to t-1 do Si=Si-1+Qw其中的加法是模其中的加法是模2w的加法运算。的加法运算。 得到初始化阵列得到初始化阵列S,然后与最后产生的密钥阵列,然后与最后产生的密钥阵列L做做混合,最终得到子密钥阵列。混合,最终得到子密钥阵列。注注1*.为了增强复杂性,可对阵列为了增强复杂性,可对阵列S,L做多次处理:做多次处理: i=j=x=y=0 do 3max(t,c) times: Si=(Si+X+Y)3; X=Si;i=(i+1)(mod t); Lj=(Lj+X+Y)(X+Y); Y=Lj;j=

    42、(j+1)(mod c); 2*. Rivest 声称,声称,这个扩张函数具有单向性。这个扩张函数具有单向性。u加密:将明文分组为左右加密:将明文分组为左右A,B;用变量;用变量LEi,REi参与参与u运算程序为:运算程序为: LE0=A+S0 RE0=B+S1 for i=1 to r do LEi= (LEi-1 REi-1)REi-1)+S2i; REi=(REi-1 LEi)LDi) LDi); LDi-1=(LDi-S2*iRDi-1) RDi-1); B=RD0-S1; A=LD0-S0.uRFC2040 定义了定义了 RC5 的的4种运行模式种运行模式 RC5 Block Cip

    43、her, is ECB modeRC5-CBC, is CBC modeRC5-CBC-PAD, is CBC with padding by bytes with value being the number of padding bytesRC5-CTS, a variant of CBC which is the same size as the original message, uses ciphertext stealing to keep size same as originaluRC5的安全主要依赖循环移位操作和不的安全主要依赖循环移位操作和不同运算的混合使用。同运算的混合使

    44、用。u逐位异或操作与逐位异或操作与mod2w加法操作存在漏加法操作存在漏洞。洞。u5轮迭代后的统计特性相当好。轮迭代后的统计特性相当好。u56位密钥的位密钥的RC5算法已被攻破。算法已被攻破。1、分组密码设计原则应考虑哪些问题?、分组密码设计原则应考虑哪些问题?2、试述试述DES算法的加密过程。算法的加密过程。3、在、在DES数据加密标准中,设主密钥数据加密标准中,设主密钥K(64位)为:位)为: K=0000 0001* 0010 0011* 0100 0101* 0110 0111* 1000 1001* 1010 1011* 1100 1101* 1110 1111* 其中带其中带*号为

    45、奇偶校验位,分别求出:号为奇偶校验位,分别求出: (1)经过经过PC-1选定后的选定后的C0、D0(56位位)结果;结果; (2)经循环左移经循环左移LS1=1位后的位后的C1、D1结果;结果; (3)由由C1、D1再经再经PC-2选择后的选择后的K1 (48位位)结果。结果。4、DES算法中,密钥的生成主要分几步?算法中,密钥的生成主要分几步?5、试分析、试分析DES的安全性。的安全性。u6、简述、简述DES的四种加密方式。的四种加密方式。u7、简述三重、简述三重DES的加密过程。的加密过程。u8、简述分组密码设计的两个原则及其目、简述分组密码设计的两个原则及其目的。的。u9、典型的流密码算

    46、法有哪些?、典型的流密码算法有哪些?u10、典型的分组密码算法有哪些?、典型的分组密码算法有哪些?u11、试简述攻击、试简述攻击DES的方法。的方法。an American electronic engineer and mathematician, is “the father of information theory”。http:/zh.wikipedia.org/wiki/Claude_Shannon穷举攻击穷举攻击穷举各种可能性的攻穷举各种可能性的攻击。穷举攻击可用于任何分组密码击。穷举攻击可用于任何分组密码,攻击的复杂性只依赖于分组长度,攻击的复杂性只依赖于分组长度和密钥长度。和密

    47、钥长度。u差分分析是以色列密码学家差分分析是以色列密码学家Biham和和Shamir于于1991年提出的一种分析方法。年提出的一种分析方法。u其基本思想是:通过分析明文对的差值对密文其基本思想是:通过分析明文对的差值对密文对的差值的影响来恢复某些密钥比特。差分密对的差值的影响来恢复某些密钥比特。差分密码分析最初是针对码分析最初是针对DES提出的一种攻击方法,提出的一种攻击方法,虽然差分密码分析方法未能破译虽然差分密码分析方法未能破译16-轮的轮的DES,但是用它破译轮数低的但是用它破译轮数低的DES是很成功的。差分是很成功的。差分密码分析有许多的推广方法,如截段差分密码密码分析有许多的推广方法

    48、,如截段差分密码分析、高阶差分密码分析、不可能差分密码分分析、高阶差分密码分析、不可能差分密码分析等。析等。Biham Eli,Shamir Adi; Differential Cryptanalysit of Feal and N-hash M;Lecture Notes in Computer Science; 1991年u线形分析是线形分析是Matsui和和Yamagishi于于1992年年提出的一种攻击方法。提出的一种攻击方法。u基本思想:通过寻找一个给定密码算法的基本思想:通过寻找一个给定密码算法的有效的线性近似表达式来破译密码系统。有效的线性近似表达式来破译密码系统。本质是一种已知

    49、明文攻击方法。本质是一种已知明文攻击方法。u这种方法可用于这种方法可用于243个已知明文破译个已知明文破译8轮轮DES。Mitsuru Matsui, Atsuhiro Yamagishi: A New Method for Known Plaintext Attack of FEAL Cipher. EUROCRYPT 1992: 8191 u弱密钥弱密钥 (Weak key)是指因为它的独特数是指因为它的独特数 学特性能够被很容易破坏的密码密钥。学特性能够被很容易破坏的密码密钥。uDES 只有四个弱密钥和只有四个弱密钥和 12 个次弱密钥,个次弱密钥, 而而 IDEA 中的弱密钥数相当可观,有中的弱密钥数相当可观,有 2 的的 51 次方个。次方个。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第二讲之第3章-对称密码体系课件.ppt
    链接地址:https://www.163wenku.com/p-3032718.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库