第二章 密码学基础(NEW)_第1页
第二章 密码学基础(NEW)_第2页
第二章 密码学基础(NEW)_第3页
第二章 密码学基础(NEW)_第4页
第二章 密码学基础(NEW)_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章第二章 密码学基础密码学基础目标要求目标要求 基本要求基本要求 理解密码系统的理解密码系统的模型模型 理解对称密码体制和非对称密码体制的原理理解对称密码体制和非对称密码体制的原理 掌握掌握IDEA算法、算法、ECC等公开密码算法的原理与应用等公开密码算法的原理与应用 了解常见的了解常见的加密方式和各自的特点加密方式和各自的特点目标要求目标要求 重点重点 掌握对称密码体制和非对称密码体制的原理掌握对称密码体制和非对称密码体制的原理 熟悉熟悉IDEA算法、算法、ECC公开密码算法的原理与应用公开密码算法的原理与应用 熟悉各种熟悉各种加密方式和各自的特点加密方式和各自的特点 难点难点 非对称密

2、码体制的原理非对称密码体制的原理本章内容本章内容2.1 密码技术概述密码技术概述2.2 密码算法密码算法2.3 对称密钥密码加密模式对称密钥密码加密模式2.4 网络加密方式网络加密方式2.1 密码技术概述密码技术概述2.1.1 密码学历史密码学历史 1000 BC:姜子牙阴阳符姜子牙阴阳符 500-600 BC: 天书天书 100-44 BC: Caesar cipherthe romans arecoming todayCaesar cipher:移位密码:移位密码密文表:密文表:abcdefghijklmnopqrstuvwxyz密文表:密文表:defghijklmnopqrstuvwxy

3、zabcAn example: 明文明文-Plaintext: How are you 密文密文-Ciphertext ? 1790: 转轮密码,转轮密码,Thomas Jefferson 二战二战: German Enigma machine 二战二战: Japanese Purple machine Born: 30 April 1916 in Gaylord, Michigan, USADied: 24 Feb 2001 in Medford, Massachusetts, USA2.1.2 密码系统密码系统加密变换加密变换不安全信道不安全信道Plain TextCipher TextC

4、ipher Text解密变换解密变换Plain Text发送者:发送者:AliceDecryption KeyEncryption Key接受者:接受者:AliceCipher Text密码分析密码分析?窃密者:窃密者:Eve密钥信道密钥信道(1)密码学基本概念)密码学基本概念 密码学密码学(Cryptology):研究信息系统安全保密:研究信息系统安全保密 的科学。它包含两个分支:的科学。它包含两个分支: 密码编码学密码编码学(Cryptography),对信息进行编对信息进行编 码实现隐蔽信息的一门学问;码实现隐蔽信息的一门学问; 密码分析学密码分析学(Cryptanalysis),研究分

5、析破译研究分析破译 密码的学问。密码的学问。 明文明文(消息消息)(Plaintext) :被隐蔽消息,常用被隐蔽消息,常用M表示表示 密文密文(Ciphertext)或密报或密报(Cryptogram):明文经明文经 密码变换成的一种隐蔽形式,常用密码变换成的一种隐蔽形式,常用C表示表示 加密加密(Encryption):将明文变换为密文的过程将明文变换为密文的过程 解密解密(Decryption):加密的逆过程,即由密文恢加密的逆过程,即由密文恢 复出原明文的过程复出原明文的过程 加密员或密码员加密员或密码员(Cryptographer):对明文进行对明文进行 加密操作的人员。加密操作的人

6、员。 常用常用E()() 表示表示 控制加密和解密算法操作的数据处控制加密和解密算法操作的数据处 理,分别称作加密密钥和解密密钥,常用理,分别称作加密密钥和解密密钥,常用k表示表示 在信息传输和处理系统在信息传输和处理系统 中的非受权者,通过搭线窃听、电磁窃听、声音中的非受权者,通过搭线窃听、电磁窃听、声音 窃听等来窃取机密信息。窃听等来窃取机密信息。 (2)密码系统组成)密码系统组成 明文空间:明文空间:信息本来的原始空间信息本来的原始空间 密文空间:密文空间:明文经过加密后得到难以理解和辨明文经过加密后得到难以理解和辨 认的信息空间认的信息空间 密钥空间:密钥空间:控制算法的实现,由信息通

7、信双方控制算法的实现,由信息通信双方 所掌握的专门信息空间所掌握的专门信息空间 密码算法:密码算法:规定了明文和密文之间的一个复杂规定了明文和密文之间的一个复杂 的函数变换方式,包括的函数变换方式,包括加密函数加密函数与与解密函数解密函数 加密过程:加密过程:EK(M)=C 加密过程:加密过程:DK(C)=M 密码系统应满足:密码系统应满足:DK(EK(M)=)=M 密码学的密码学的Kerchoff准则准则“一切秘密寓于密钥之中一切秘密寓于密钥之中”1883年荷兰密码学家年荷兰密码学家A.Kerchoff(18351903)就就给出了密码学的一个基本原则给出了密码学的一个基本原则:密码的安全必

8、须完全寓密码的安全必须完全寓于密钥之中。尽管密码学家们大都同意这一看法于密钥之中。尽管密码学家们大都同意这一看法,但直但直到制定到制定DES时才首次认真地遵循这一原则。时才首次认真地遵循这一原则。 2.1.3 密码体制密码体制密码体制:一个密码系统采用的基本工作方式密码体制:一个密码系统采用的基本工作方式密码体制从原理上可以分为两大类:密码体制从原理上可以分为两大类: 对称密钥密码体制(或单钥密码体制)对称密钥密码体制(或单钥密码体制) 非对称密钥密码体制(或双钥密码体制)非对称密钥密码体制(或双钥密码体制)2.1.3.1 对称密钥密码体制对称密钥密码体制加密:加密:E不安全信道不安全信道Pl

9、ain TextCipher TextCipher Text解密解密:DPlain Text发送者:发送者:AliceKK接受者:接受者:Alice密钥信道密钥信道密钥生成器密钥生成器 加密过程:加密过程:EK(M)=C 加密过程:加密过程:DK(C)=M 对称密钥密码根据对明文加密方式的不同分为:对称密钥密码根据对明文加密方式的不同分为: 序列密码(序列密码(Stream Cipher)或流密码)或流密码 分组密码(分组密码(Block Cipher)或块密码)或块密码(1) 序列密码序列密码对明文的单个位(有时对字节)运算的算法。对明文的单个位(有时对字节)运算的算法。 军事和外交场合使用

10、的主要密码技术军事和外交场合使用的主要密码技术 工作原理:工作原理:明文序列:明文序列:m=m0m1m2密文序列:密文序列:c=ccc1c2密钥序列:密钥序列:k=k0k1k2序列密码的加密过程序列密码的加密过程明文序列:明文序列:m=m0m1m2密文序列:密文序列:c=ccc1c2密钥序列:密钥序列:k=k0k1k2序列密码的解密过程序列密码的解密过程 加密过程:加密过程:ci=(ki+mi)(mod 2) 加密过程:加密过程:mi=(ki+ci)(mod 2)(2) 分组密码分组密码 对明文信息分割成块结构,逐块进行加密和解密。对明文信息分割成块结构,逐块进行加密和解密。 工作原理:首先将

11、明文分成相同长度的数据块,工作原理:首先将明文分成相同长度的数据块, 然后分别对每个数据块加密产生一串灭为你数据然后分别对每个数据块加密产生一串灭为你数据 块;解密时,第每个密文数据块进行解密后得到相块;解密时,第每个密文数据块进行解密后得到相 应的明文数据块,将所有的明文数据块合并起来即应的明文数据块,将所有的明文数据块合并起来即 得到明文。得到明文。明文序列:明文序列:m=m0m1m2密文序列:密文序列:c=ccc1c2密钥序列:密钥序列:k=k0k1k2分组密码的加密过程分组密码的加密过程Ek明文序列:明文序列:m=m0m1m2密文序列:密文序列:c=ccc1c2密钥序列:密钥序列:k=

12、k0k1k2分组密码的加密过程分组密码的加密过程Dk(1)对称密钥密码体制的问题)对称密钥密码体制的问题2.1.3.2 非称密钥密码体制非称密钥密码体制ENetwork or Storage明文明文Plain Text密文密文Cipher TextD原明文原明文OriginalPlain TextBob私钥私钥Secret KeyAlice私钥私钥Secret Key密文密文Cipher Text 若若N个人相互保密通信,每人必须拥有(个人相互保密通信,每人必须拥有(N-1)个)个 私钥,私钥,N很大时,需要保存的私钥很多。如何解很大时,需要保存的私钥很多。如何解 决?决? 可信中心分发:共需

13、要发可信中心分发:共需要发N*(N-1)/2个私钥个私钥 N =1000时时, 999 *1000/2 = 499500 双方事先约定:用户之间自己秘密会面双方事先约定:用户之间自己秘密会面 (第一次远距离通信如何办?)(第一次远距离通信如何办?) 加密:加密:E不安全信道不安全信道Plain TextCipher TextCipher Text解密解密:DPlain Text发送者:发送者:AliceK2K1接受者:接受者:Alice 1976,由,由Diffie和和Hellman提出,提出,被公认为现代被公认为现代 密码学诞生的标志。密码学诞生的标志。 工作原理:工作原理:每个用户都有一对

14、选定的密钥(公钥:每个用户都有一对选定的密钥(公钥: K1,私钥,私钥K2) K1是可以公开的,可以像电话号是可以公开的,可以像电话号 码一样进行注册公布;码一样进行注册公布; K2则是秘密的。则是秘密的。 特点:特点:(1)将加密和解密能力分开;(将加密和解密能力分开;(2)多个)多个 用户加密的消息只能由一个用户解读(秘密通用户加密的消息只能由一个用户解读(秘密通 信);(信);(3)一个用户加密的消息而使多个用户可)一个用户加密的消息而使多个用户可 以解读(认证);(以解读(认证);(4)不用事先分配秘钥。)不用事先分配秘钥。(2)非对称密钥密码体制)非对称密钥密码体制2.1.4 密码分

15、析密码分析 密码分析:密码分析:试图获得加密体制细节、解密密钥和试图获得加密体制细节、解密密钥和 明文等机密信息的过程,通常包括:分析统计截明文等机密信息的过程,通常包括:分析统计截 获的密文材料、假设、推断和证实等步骤。获的密文材料、假设、推断和证实等步骤。 密码分析方法有密码分析方法有传统破译方法传统破译方法和和物理破译方法物理破译方法两两 大类。大类。(1) 基本概念基本概念 传统破译方法传统破译方法包括包括穷举破译法穷举破译法和和数学分析法数学分析法两类。两类。 数学分析法数学分析法又分为又分为确定性分析法确定性分析法的和的和统计分析法统计分析法。 四种破译类型:四种破译类型: 唯密文

16、破译唯密文破译(ciphertext only attacks),), 分析者仅知道有限数量的密文。分析者仅知道有限数量的密文。 已知明文破译已知明文破译(known plaintext attacks),), 分析者除了拥有有限数量的密文外,还有数量限分析者除了拥有有限数量的密文外,还有数量限 定的一些已知定的一些已知“明文明文密文密文”对。对。 四种破译类型(续):四种破译类型(续): 选择明文破译选择明文破译(chosen plaintext attacks),), 分析者除了拥有有限数量的密文外,还有机会使分析者除了拥有有限数量的密文外,还有机会使 用注入了未知密钥的加密机,通过自由选

17、择明文用注入了未知密钥的加密机,通过自由选择明文 来获取所希望的来获取所希望的“明文明文密文密文”对(集合)。对(集合)。 选择密文破译选择密文破译(chosen ciphertext attacks),), 分析者除了拥有有限数量的密文外,还有机会使分析者除了拥有有限数量的密文外,还有机会使 用注入了未知密钥的解密机,通过自由选择密文用注入了未知密钥的解密机,通过自由选择密文 来获取所希望的来获取所希望的“密文密文明文明文”对(集合)。对(集合)。(2)防止密码破译的措施)防止密码破译的措施为防止密码被破译,可以采取以下措施:为防止密码被破译,可以采取以下措施: 强壮的加密算法;强壮的加密算

18、法; 动态会话密钥动态会话密钥 保护关键密钥保护关键密钥2.2 密码算法密码算法(1)IDEA的历史的历史 1990年,年,瑞士的来学嘉(瑞士的来学嘉(Xuejia Lai)和和 James Massey于于1990年公布了年公布了IDEA密码算法第密码算法第 一版,称为一版,称为PES (Proposed Encryption Standard); 1991年,为抗击差分密码攻击,他们增强了算法的强年,为抗击差分密码攻击,他们增强了算法的强 度,称度,称IPES(Improved PES); 1992年,改名为年,改名为IDEA(International Data Encryption A

19、lgorithm)。)。2.2.1 IDEA算法算法(2)IDEA加密过程加密过程 IDEA是一个分组长度为是一个分组长度为 64bit的分组密码算法,密的分组密码算法,密 钥长度为钥长度为128bit(抗强力攻(抗强力攻 击能力比击能力比DES强),同一强),同一 算法既可加密也可解密。算法既可加密也可解密。 IDEA的的“混淆混淆”和和“扩散扩散” 设计原则来自三种运算,设计原则来自三种运算, 它们易于软、硬件实现它们易于软、硬件实现 (加密速度快):(加密速度快):Z6F2F1Z5G1G21. 在在IDEA的模乘运的模乘运算中,为什么将模数算中,为什么将模数取为取为216+1,而不是,而

20、不是 216 ? 2. 在其模加运算中,为什么模数取为在其模加运算中,为什么模数取为216而不是而不是 216+1 ? IDEA加密的总体方案图加密的总体方案图循环循环2循环循环8循环循环1输出变换输出变换64位密文位密文64位明文位明文Z1Z6Z7Z12Z43Z48Z49Z52子密钥生成器子密钥生成器128bit密钥密钥Z1Z5216IDEA加密的单个循环图加密的单个循环图X1X2X3X4Z1Z2Z3Z4Z5Z6W11W12W13W14IDEA的密钥生成的密钥生成 56个个16bit的子密钥从的子密钥从128bit的密钥中生成前的密钥中生成前8 个子密钥直接从密钥中取出;个子密钥直接从密钥中

21、取出; 对密钥进行对密钥进行25bit的循环左移,接下来的密钥的循环左移,接下来的密钥 就从中取出;就从中取出; 重复进行直到重复进行直到52个子密钥都产生出来。个子密钥都产生出来。(3)IDEA的解密的解密 加密解密实质相同,但使用不同的密钥;加密解密实质相同,但使用不同的密钥; 解密密钥以如下方法从加密子密钥中导出:解密密钥以如下方法从加密子密钥中导出: 解密循环解密循环I的头的头4个子密钥从加密循环个子密钥从加密循环10I 的头的头4个子密钥中导出;解密密钥第个子密钥中导出;解密密钥第1、4个个 子密钥对应于子密钥对应于1、4加密子密钥的乘法逆元;加密子密钥的乘法逆元; 2、3对应对应2

22、、3的加法逆元;的加法逆元; 对前对前8个循环来说,循环个循环来说,循环I的最后两个子密钥的最后两个子密钥 等于加密循环等于加密循环9I的最后两个子密钥;的最后两个子密钥; 使用子分组:使用子分组:16bit的子分组;的子分组; 使用简单操作(易于加法、移位等操作实现)使用简单操作(易于加法、移位等操作实现) ; 加密解密过程类似;加密解密过程类似; 规则的结构(便于规则的结构(便于VLSI实现)。实现)。(4)实现上的考虑)实现上的考虑(5)IDEA的安全性的安全性 IDEA能抗差分分析和相关分析;能抗差分分析和相关分析; IDEA似乎没有似乎没有DES意义下的弱密钥;意义下的弱密钥; ID

23、EA是是PGP的一部分;的一部分; Bruce Schneier 认为认为IDEA是是DES的最好替代,但的最好替代,但 问题是问题是IDEA太新,许多问题没解决。太新,许多问题没解决。2.2.2 ECC公钥密码公钥密码(1)简要历史)简要历史 椭圆曲线椭圆曲线(Elliptic curve)作为代数几何中的重要问题作为代数几何中的重要问题 已有已有100多年的研究历史多年的研究历史 1985年,年,N. Koblitz和和V. Miller独立将其引入密码学独立将其引入密码学 中,成为构造公钥密码体制的一个有力工具中,成为构造公钥密码体制的一个有力工具。 利用有限域利用有限域GF(2n )上

24、的椭圆曲线上点集所构成的群上上的椭圆曲线上点集所构成的群上 定义的离散对数系统,可以构造出基于有限域上离散定义的离散对数系统,可以构造出基于有限域上离散 对数的一些公钥体制对数的一些公钥体制-椭圆曲线离散对数密码体制椭圆曲线离散对数密码体制 (ECDLC ),如,如Diffie-Hellman,ElGamal, Schnorr,DSA等等 实数上的椭圆曲线:实数上的椭圆曲线: 其中的其中的 是满足简单条件的实数是满足简单条件的实数 一些曲线上的点连同无穷远点一些曲线上的点连同无穷远点O的集合。的集合。232yaxybyxcxdxe,abcde 实数上的椭圆曲线例子:实数上的椭圆曲线例子: 23

25、1yxx(2) 运算定义:运算定义: 12121211;,22,OOOO pOpXp pppOOppQRXpQRpOQSQQS 若曲线三点在一条直线上,则其和为 ,用作加法的单位:,一条竖直线交 轴两点则于是,如果两个点 和 的 轴不同,则画一连线,得到第三个点 ,则,倍,一个点 的 倍是,找到它的切线与曲线的另一交点于是l有限域上的椭圆曲线:有限域上的椭圆曲线:l模模P椭圆群记为椭圆群记为 群中的元素(群中的元素(x, y)是满足是满足 以上方程的小于以上方程的小于P的非负整数另外加上无穷远点的非负整数另外加上无穷远点Ol计算计算2332mod4270modyxaxbppabp是奇素数,且,

26、:pEa b30,mod,pxpxaxbpyx yx ypEa b针对所有的计算确定是否可以求出有效的 得到曲线上的点其中,记为。,:pEa b 的加法规则:的加法规则: ,pEa b 112233231231312121211,modmod,/,3/ 2pPOPPx yPxyOxyPPxyEa bPx yQxyPQxyxxxpyxxypPQyyxxPQxay如果则点是 的负点,记为。而且也在中如果则为其中,如果则 如果则 ECC的加解密:的加解密:, , ,:,:ppmmmmmmmEa bGGnGnGOnrPrGp a b G PPrMMEa bPkCkG PkPkkGkPOkCPkPr k

27、GPkrGrkGP选择的元素使得 的阶 是一个大素数的阶是指满足的最小 值秘密选择整数 计算然后公开为公钥保密加密先把消息变换成为中的一个点然后选择随机数计算密文如果 使得或者为则重新选择解密加密消息有扩张 ECC加解密例子加解密例子 23751,1,188 ,188,0,376,562,201 ,386201,5386 0,376676,558562,201386 201,5385,328676 558385 328pmBmBpEyxxGABPAkBPkGPkPA取这等价于曲线假设 希望发送一个报文给这个报文被编码为椭圆曲线上的点而 选择随机数的公钥是我们有因此 发送密文, ECC特别适用:

28、特别适用: 无线无线Modem的实现:对分组交换数据网提供加密,在的实现:对分组交换数据网提供加密,在 移动通信器件上运行移动通信器件上运行4 MHz的的68330 CPU,ECC可实现可实现 快速快速Diffie-Hellman密钥交换,并极小化密钥交换占用密钥交换,并极小化密钥交换占用 的带宽,将计算时间从大于的带宽,将计算时间从大于60秒降到秒降到2秒以下。秒以下。 Web服务器的实现:在服务器的实现:在Web服务器上集中进行密码计算会形成服务器上集中进行密码计算会形成 瓶颈,瓶颈,Web服务器上的带宽有限使带宽费用高,采用服务器上的带宽有限使带宽费用高,采用ECC可节可节 省计算时间和

29、带宽,且通过算法的协商较易于处理兼容性。省计算时间和带宽,且通过算法的协商较易于处理兼容性。 集成电路卡的实现:集成电路卡的实现:ECC无需协处理器就可以在标准卡上实现无需协处理器就可以在标准卡上实现 快速、安全的数字签名,这是快速、安全的数字签名,这是RSA体制难以做到。体制难以做到。ECC可使程可使程 序代码、密钥、证书的存储空间极小化,数据帧最短,便于实序代码、密钥、证书的存储空间极小化,数据帧最短,便于实 现,大大降低了现,大大降低了IC卡的成本。卡的成本。 Menezes,Okamoto和和Vanstone 指出应避免选指出应避免选 用超奇异曲线,否则椭圆曲线群上的离散对数问用超奇异

30、曲线,否则椭圆曲线群上的离散对数问 题退化为有限域低次扩域上的离散对数问题,从题退化为有限域低次扩域上的离散对数问题,从 而能在多项式时间上可解。他们还指出,若所用而能在多项式时间上可解。他们还指出,若所用 循环子群的阶数达循环子群的阶数达2160,则可提供足够的安全性。,则可提供足够的安全性。 (3)ECC的安全性的安全性 ECC和和RSA对比:在实现相同的安全性下,对比:在实现相同的安全性下,ECC 所需的密所需的密 钥量比钥量比RSA少得多,如下表所示。其中少得多,如下表所示。其中MIPS年表示用每秒年表示用每秒 完成完成100万条指令的计算机所需工作的年数,万条指令的计算机所需工作的年

31、数,m表示表示ECC 的密钥由的密钥由2 m点构成。以点构成。以40 MHz的钟频实现的钟频实现155 bits的的 ECC,每秒可完成,每秒可完成40,000次椭园曲线运算,其速度比次椭园曲线运算,其速度比1024 bits的的DSA和和RSA快快10倍。倍。 ECC的密钥长度的密钥长度m RSA的密钥长度的密钥长度 MIPS-年年 160 1024 1012 320 5120 1036 600 21000 1078 1200 120000 101682.3.1 分组密码的工作模式分组密码的工作模式2.3 网络加密方法网络加密方法 分组密码可以按不同的模式工作,实际应用的环分组密码可以按不同

32、的模式工作,实际应用的环境不同应采用不同的工作模式境不同应采用不同的工作模式 电码本电码本(ECB)模式模式 密码分组链接密码分组链接(CBC)模式模式 密码反馈密码反馈(CFB)模式模式 输出反馈输出反馈(OFB)模式模式 计数器计数器(CTR)模式模式 2.3.2 电码本(电码本(ECB)模式)模式 最简单的运行模式,一次对一个最简单的运行模式,一次对一个64bit长的明长的明文文 分组加密,且每次加密密钥都相同。分组加密,且每次加密密钥都相同。 在用于短数据(如加密密钥)时非常理想,是安在用于短数据(如加密密钥)时非常理想,是安 全传递全传递DES密钥的最合适的模式密钥的最合适的模式 在

33、给定的密钥下同一明文组总产生同样的密文组。在给定的密钥下同一明文组总产生同样的密文组。 这会暴露明文数据的格式和统计特征。这会暴露明文数据的格式和统计特征。 明文数据都有固定的格式,需要以协议的形式定明文数据都有固定的格式,需要以协议的形式定 义,重要的数据常常在同一位置上出现,使密码义,重要的数据常常在同一位置上出现,使密码 分析者可以对其进行统计分析、重传和代换攻击分析者可以对其进行统计分析、重传和代换攻击2.3.3 密码分组链接(密码分组链接(CBC)模式)模式 一次对一个明文分组加密,每次加密使用同一密一次对一个明文分组加密,每次加密使用同一密 钥,加密算法的输入是当前明文分组和前一次

34、密钥,加密算法的输入是当前明文分组和前一次密 文分组的异或(在产生第文分组的异或(在产生第1个密文分组时,需要个密文分组时,需要 有一个初始向量有一个初始向量IV与第一个明文分组异或);与第一个明文分组异或); 解密时,每一个密文分组被解密后,再与前一个解密时,每一个密文分组被解密后,再与前一个 密文分组异或(第一个密文分组解密后和初始向密文分组异或(第一个密文分组解密后和初始向 量量IV异或恢复出第一个明文分组)。异或恢复出第一个明文分组)。 为使安全性最高,为使安全性最高,IV应像密钥一样被保护。可使用应像密钥一样被保护。可使用ECB 加密模式来发送加密模式来发送IV; 保护保护IV原因是

35、:如果敌手能欺骗接受方使用不同的原因是:如果敌手能欺骗接受方使用不同的IV, 敌手就能够在明文的第一个分组中插入自己选择的比特值;敌手就能够在明文的第一个分组中插入自己选择的比特值; IV的完整性要比其保密性更为重要。在的完整性要比其保密性更为重要。在CBC模式下,最好模式下,最好 是每发一个消息,都改变是每发一个消息,都改变IV,比如将其值加一;,比如将其值加一; 由于由于CBC模式的链接机制,该模式对于加密长于模式的链接机制,该模式对于加密长于64bit的消的消 息非常合适;息非常合适; CBC模式除能获得保密性外,还能用于认证。模式除能获得保密性外,还能用于认证。2.3.4 密码反馈(密

36、码反馈(CFB)模式)模式 加密算法的输入是加密算法的输入是64bit移位寄存器,其初始值为某个初始向量移位寄存器,其初始值为某个初始向量IV,加密算法输出的最左(最高有效位),加密算法输出的最左(最高有效位)j bit与明文的第一个单与明文的第一个单元进行异或,产生第一个密文单元元进行异或,产生第一个密文单元 并传送该单元。然后将移位并传送该单元。然后将移位寄存器的内容左移寄存器的内容左移j位并将位并将 送入移位寄存器最右边(最低有效位)送入移位寄存器最右边(最低有效位)j位。这一过程持续到明文的所有单元都被加密为止位。这一过程持续到明文的所有单元都被加密为止1C1C 解密时,将解密时,将

37、收到的密文收到的密文 单元与加密单元与加密 函数的输出函数的输出 进行异或进行异或l为什么此时仍然使用加密算法为什么此时仍然使用加密算法而不是解密算法?而不是解密算法? 利用利用CFB模式或者模式或者OFB模式可将模式可将DES转换为流转换为流 密码;密码; 流密码不需要对消息进行填充,而且运行是实时流密码不需要对消息进行填充,而且运行是实时 的,因此如果传送字母流,可使用流密码对每个的,因此如果传送字母流,可使用流密码对每个 字母直接加密进行传送;字母直接加密进行传送; CFB模式除了获得保密性外,还能用于认证。模式除了获得保密性外,还能用于认证。2.3.5 输出反馈输出反馈(OFB)模式模式 OFB模式的结构类似于模式的结构类似于CFB,不同之处在于:,不同之处在于: OFB模式将加密算法的输出反馈到移位寄存器,模式将加密算

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论