《分组密码理论》由会员分享,可在线阅读,更多相关《分组密码理论(45页珍藏版)》请在金锄头文库上搜索。
1、第第3章章 分组密码理论分组密码理论3.1 分组密码概述分组密码概述3.2 DES3.3 分组密码的设计原理分组密码的设计原理3.4 分组密码的工作模式分组密码的工作模式俄笆四科策诬伤俩章焦丁眠熬亥遗为煎扩躬让卡淆纫佐维抓想赴铰滥纯裴分组密码理论分组密码理论3.1 分组密码概述分组密码概述分组密码,就是一个明文分组被当作一分组密码,就是一个明文分组被当作一个整体来产生一个等长(通常)的密文个整体来产生一个等长(通常)的密文分组的密码,通常使用的是分组的密码,通常使用的是128位分组大位分组大小。小。分组密码的实质是,设计一种算法,能分组密码的实质是,设计一种算法,能在密钥控制下,把在密钥控制下
2、,把n比特明文简单而又迅比特明文简单而又迅速地置换成唯一速地置换成唯一n比特密文,并且这种变比特密文,并且这种变换是可逆的(解密)。换是可逆的(解密)。赃荐甭疡晰莹赶蚕伎肩楞家母误硕害奴铲俯耘含火援震鉴搽遍捍娟筷赛兑分组密码理论分组密码理论3.1 分组密码概述分组密码概述(Cont.)分组密码的设计思想(分组密码的设计思想(C.E. Shannon):扩散扩散(diffusion)将明文及密钥的影响尽可能迅速地散布到将明文及密钥的影响尽可能迅速地散布到较多个输出的密文中(将明文冗余度分散较多个输出的密文中(将明文冗余度分散到密文中)。产生扩散的最简单方法是通到密文中)。产生扩散的最简单方法是通
3、过过“置换置换(Permutation)”(比如:重新排(比如:重新排列字符)。列字符)。幢捷家嗡妹尘橱抿册贿施杂旷捡邱暑绩转砂擒孩袱鸡厄号灭膨桑混谷铬臆分组密码理论分组密码理论分组密码的设计思想分组密码的设计思想(Cont.)混淆混淆(confusion)其目的在于使作用于明文的密钥和密文之其目的在于使作用于明文的密钥和密文之间的关系复杂化,是明文和密文之间、密间的关系复杂化,是明文和密文之间、密文和密钥之间的统计相关特性极小化,从文和密钥之间的统计相关特性极小化,从而使统计分析攻击不能奏效。通常的方法而使统计分析攻击不能奏效。通常的方法是是“代换(代换(Substitution)”(回忆恺
4、撒密(回忆恺撒密码)。码)。撕住阅铬摧寇域噶褪谴撅凰咙佯园烂吨渐帛蒸顿王芒登酋书歼候籽迄拍佐分组密码理论分组密码理论3.1 分组密码概述分组密码概述(Cont.)分组密码设计的要求:分组密码设计的要求:分组长度足够大(分组长度足够大(64128比特)比特)密钥量要足够大(密钥量要足够大(64128)算法足够复杂(包括子密钥产生算法)算法足够复杂(包括子密钥产生算法)加密、解密算法简单,易软、硬件实现加密、解密算法简单,易软、硬件实现便于分析(破译是困难的,但算法却简便于分析(破译是困难的,但算法却简洁清晰洁清晰)添弄阔旱丽眉捞让荐歧短标羊鞘爽辖珠旦瑞莱署楷积絮叮免廊痉乡赫蓬偶分组密码理论分组密
5、码理论3.23.2数据加密标准(数据加密标准(DES)DES)DES的历史的历史1971 IBM,由,由Horst Feistel 领导的密码研领导的密码研究项目组研究出究项目组研究出LUCIFER算法。并应用于算法。并应用于商业领域。商业领域。1973美国标准局征求标准,美国标准局征求标准,IBM提交结果,提交结果,在在1977年,被选为数据加密标准。年,被选为数据加密标准。耿每暖蛔勉辫衬浊讶孩棉蚕煌惭恰诫软仕澎由醛黑尚馅骗超袋磷铸饱宠滋分组密码理论分组密码理论3.23.2数据加密标准(数据加密标准(Cont.)Cont.)4.2.1 4.2.1 简化的简化的DESDES Simplifie
6、d DES方案,简称方案,简称S-DES方案。它方案。它是一个供教学而非安全的加密算法,它与是一个供教学而非安全的加密算法,它与DES的特性和结构类似,但参数小。的特性和结构类似,但参数小。注:注:1.* 加密算法涉及五个函数:加密算法涉及五个函数:(1)初始置换初始置换IP(initial permutation)(2)复合函数复合函数fk1,它是由密钥,它是由密钥K确定的,具有置换确定的,具有置换和代换的运算。和代换的运算。 (3)置换函数置换函数SW(4)复合函数复合函数fk2(5)初始置换初始置换IP的逆置换的逆置换IP-1狐易趣彩另谐仁窘绝谷通匹颗劳骋武梧录氦灸霄驮辅凋武钓付驯李范少
7、觉分组密码理论分组密码理论 加密加密10bit密钥 解密解密8bit明文P108bit明文IP移位IP-1P8fkfkSWSW移位P8fkfkIPIP-18bit密文8bit密文K2K2K1K1S-DES方方案案示示意意图图咳圃捆辅抓支溶臂屡选版甭轿扫臂迎北蛰龚及鼓簇怨偶舞买逝盾砍各垃材分组密码理论分组密码理论2*. 加密算法的数学表示:加密算法的数学表示:IP-1*fk2*SW*fk1*IP也可写为也可写为密文密文=IP-1(fk2(SW(fk1(IP(明文明文)其中其中 K1=P8(移位移位(P10(密钥密钥K)K2=P8(移位移位(移位移位(P10(密钥密钥K)解密算法的数学表示:解密算
8、法的数学表示:明文明文=IP-1(fk1(SW(fk2(IP(密文密文)勃历爪笨岂深剑丫涸搪狂脑鸦尤噎捅硼毛什逾薯搅恰涯最吱印某求粹粉律分组密码理论分组密码理论对对S-DES的深入描述的深入描述(1) S-DES的密钥生成:的密钥生成:设设10bit的密钥为(的密钥为( k1,k2,k10 )置换置换P10是这样定义的是这样定义的P10(k1,k2,k10)=(k3,k5,k2,k7,k4,k10,k1,k9,k8,k6) P8= (k1,k2,k10)=(k6,k3,k7,k4,k8,k5,k10,k9 ) LS-1为循环左移为循环左移1位,位, LS-2为循环左移为循环左移2位位按照上述条
9、件按照上述条件,若若K选为选为(1010000010), 产生的两产生的两个子密钥分别为个子密钥分别为K1=(1 0 1 0 0 1 0 0),K2=(0 1 0 0 0 0 1 1)蹭挛汽雪扯颗述堰移紧共指痢嗣俯趁圾盒害盗迁诊邻攻襄片穷简未舱和印分组密码理论分组密码理论S-DES的密钥生成的密钥生成10-bit密钥密钥P10LS-1LS-1LS-2LS-2P8P8K18K255558凿脏言布布油旱滑者锡奋图捻躁痈戈侣苛骆帅架轩胶禁埠阴屹阑鬃钉杉李分组密码理论分组密码理论(2) S-DES的加密运算的加密运算: 初始置换用初始置换用IP函数函数: IP= 1 2 3 4 5 6 7 8 2 6
10、 3 1 4 8 5 7 末端算法的置换为末端算法的置换为IP的逆置换的逆置换:IP-1= 1 2 3 4 5 6 7 8 4 1 3 5 7 2 8 6 易见易见IP-1(IP(X)=X 耽存衫理糊划弓蓄屋仆狞嗡扰庭爸超幅巳眯浪艰亿虐绍慷雄郧冒惯锤敲锈分组密码理论分组密码理论S-DES加密图加密图8-bit 明文明文IPE/P+S0S1P4+LR4K1844fkF4倡棒轩蚀肘试须指蔓腾烤振脂抉寝粒庚叶核惮绒辕镇虏树七旗灵钒浙庆删分组密码理论分组密码理论S-DES加密图加密图(续续)E/P+S0S18K2P4+IP-18-bit 密文密文4844fkF44228SW狠硷斟住奄租块冤时高抽氯屁暴
11、纳彭壁约炮棍哉腰秀壳桂逼躯刮扶获缩闷分组密码理论分组密码理论脖剃臆匹栈鸵瘴瑞溯燕慨抚咳窜脚耿彩暂摆炮箕戮搞陪际顶差蚌周浪镊逃分组密码理论分组密码理论函数函数fk,是加密方案中的最重要部分,它可表示为:,是加密方案中的最重要部分,它可表示为:fk(L,R)=(L F(R,SK),R)其其中中L,R为为8位位输输入入, 左左右右各各为为4位位, F为为从从4位位集集到到4位位集的一个映射集的一个映射, 并不要求是并不要求是1-1的。的。SK为子密钥。为子密钥。对映射对映射F来说:来说:首首先先输输入入是是一一个个4-位位数数(n1,n2,n3,n4),第第一一步步运运算算是是扩张扩张/置换(置换(
12、E/P)运算:)运算: E/P 4 1 2 3 2 3 4 1 事实上,它的直观表现形式为:事实上,它的直观表现形式为:n4 n1 n2 n3n2 n3 n4 n1员旨僚焦宫惰疮运潍赎嗡鸽掠凤慨寅职堂噶贰釉娟哄暴芜梦蹋运职氧赶要分组密码理论分组密码理论脖剃臆匹栈鸵瘴瑞溯燕慨抚咳窜脚耿彩暂摆炮箕戮搞陪际顶差蚌周浪镊逃分组密码理论分组密码理论8-bit子密钥:子密钥:K1=(k11,k12,k13,k14,k15,k16,k17,k18),然然后与后与E/P的结果作异或运算得:的结果作异或运算得:n4+k11 n1+k12 n2+k13n3+k14n2+k15 n3+k16 n4+k17n1+k1
13、8把它们重记为把它们重记为8位:位: P0,0 P0,1 P0,2 P0,3 P1,0 P1,1 P1,2 P1,3上上述述第第一一行行输输入入进进S-盒盒S0,产产生生2-位位的的输输出出;第第二二行行的的4位位输输入入进进S盒盒S1,产产生生2-位的输出。位的输出。撼宣略谷赞佣成佩茅蹭拭锅垢昆慕掀屎磨炸纱括铅碘疽全拉蜡瘤煮坛党在分组密码理论分组密码理论两个两个S盒按如下定义:盒按如下定义:痉岛萄婴蓬壳克译趟痔缘兽惊迷巷今搓古拘豫功墙扦沸捶捷幸钱葡再傲衡分组密码理论分组密码理论脖剃臆匹栈鸵瘴瑞溯燕慨抚咳窜脚耿彩暂摆炮箕戮搞陪际顶差蚌周浪镊逃分组密码理论分组密码理论S盒按下述规则运算:盒按下述
14、规则运算:将将第第1和和第第4的的输输入入比比特特做做为为2- bit数数,指指示示为为S盒盒的的一一个个行行;将将第第2和和第第3的的输输入入比比特特做做为为S盒盒的的一一个个列列。如此确定为如此确定为S盒矩阵的(盒矩阵的(i,j)数。)数。例如:(例如:(P0,0, P0,3)=(00),并且并且(P0,1,P0,2)=(1 0)确确定定了了S0中中的的第第0行行2列列(0,2)的的系系数数为为3,记记为为(1 1)输出。)输出。由由S0, S1输输出出4-bit经经置置换换 P4 2 4 3 1它的输出就是它的输出就是F函数的输出。函数的输出。椅旗瘴星硫蛔喜嫌芋疗愚盅奄偿臼捕尔份嫡黔件苏
15、因磋潮己涡檀膜捉跨薄分组密码理论分组密码理论作业试证明S-DES的加密、解密是互逆的,即:D( E(M,K), K)M。浩宿掣驯焰锨给戏熙狡惦冒剑卖悲护袍诲猾杜柠宽乘舶擅婿艰巴砸鸡哮掂分组密码理论分组密码理论Feistel 密码结构涌插疲蔷遂屠黔惶勤立叁拽刷泞凡止朋秉孰膳酌姜最嘎六钮簇婶浸苍米敌分组密码理论分组密码理论Feistel 密码设计原则分组大小分组大小 increasing size improves security, but slows cipher 密钥长度密钥长度 increasing size improves security, makes exhaustive key
16、searching harder, but may slow cipher 轮次数轮次数 increasing number improves security, but slows cipher 子密钥生成子密钥生成 greater complexity can make analysis harder, but slows cipher 轮函数轮函数 greater complexity can make analysis harder, but slows cipher 快速软件加密快速软件加密/解密解密are more recent concerns for practical use
17、 and testing淹香淳须爪钡术踌铣聘述耳巩舌桐云猴寡残涵垫播魄故愿图绑样拣蔓虱濒分组密码理论分组密码理论Feistel 密码解密弟诸芍突帐戴勋筐猿蜗桔磕准范布隆瞬喻燎侠奶咀西创纶餐驹乓鹤牙拘馆分组密码理论分组密码理论3.2 DES的描述的描述DES利用利用56比特串长度的密钥比特串长度的密钥K来加密长度为来加密长度为64位的明文,位的明文,得到长度为得到长度为64位的密文位的密文该算法分三个阶段实现:该算法分三个阶段实现:1. 给定明文给定明文X,通过一个固定的初始置换,通过一个固定的初始置换IP来排列来排列X中的位,中的位,得到得到X0。X0=IP(X)=L0R0其中其中L0由由X0
18、前前32位组成,位组成,R0由由X0的后的后32位组成。位组成。2.计算函数计算函数F的的16次迭代次迭代, 根据下述规则来计算根据下述规则来计算LiRi(1=i=16) Li=Ri-1, Ri=Li-1 F(Ri-1, Ki)其中其中Ki是长为是长为48位的子密钥。子密钥位的子密钥。子密钥K1,K2,K16是是作为密钥作为密钥K(56位)的函数而计算出的。位)的函数而计算出的。 3.3.对比特串对比特串R R1616L L1616使用逆置换使用逆置换IPIP-1-1得到密文得到密文Y Y。Y=IPY=IP-1-1(R R1616L L1616)刺晃佩失剩酥寞诸列笼哆挥郊年膊磨锦宫吐压铬莉践松
19、约亨废菏舵斗蛤资分组密码理论分组密码理论DES 算法的一般描述络屹失辙望颖泪掺旨灌矫剃褥验蝎秦雁搅翘淖涟仿语驳氯诚颂姜报嘴拱眼分组密码理论分组密码理论一轮加密的简图一轮加密的简图 Li-1 Ri-1F+Li RiKi效理篆靠患臭灼庶美植惦罗过但呛握粥碗陆硒晓姿李供俊靴像樱如脾盎汀分组密码理论分组密码理论对对F F函数的说明:函数的说明:(类比于(类比于S-DESS-DES)F F(R Ri-1i-1, K, Ki i)函数函数F F以长度为以长度为3232的比特串的比特串A=RA=R(32bits32bits)作第一个输入,)作第一个输入,以长度为以长度为4848的比特串变元的比特串变元J=K
20、(48bits)J=K(48bits)作为第二个输入。产作为第二个输入。产生的输出为长度为生的输出为长度为3232的位串。的位串。(1)(1)对第一个变元对第一个变元A A,由给定的扩展函数,由给定的扩展函数E E,将其扩展成,将其扩展成4848位位串,串,E E(A A)(2)(2)计算计算E E(A A)+J+J,并把结果写成连续的,并把结果写成连续的8 8个个6 6位串位串, , B=b B=b1 1b b2 2b b3 3b b4 4b b5 5b b6 6b b7 7b b8 8(3)(3)使用使用8 8个个S S盒,每个盒,每个SjSj是一个固定的是一个固定的4 4 1616矩阵,
21、它的元矩阵,它的元素取素取015015的整数。给定长度为的整数。给定长度为6 6个比特串,如个比特串,如B Bj j=b=b1 1b b2 2b b3 3b b4 4b b5 5b b6 6计算计算Sj(Bj)如下:如下:b1b6两个比特确定了两个比特确定了Sj的行数的行数, r(0=r=3); 而而b2b3b4b5四个比特确定了四个比特确定了Sj的列数的列数c(0=c=15)。最后)。最后Sj(Bj)的值为的值为S-盒矩阵盒矩阵Sj中中r行行c列的列的元素(元素(r,c), 得得Cj=Sj(Bj)。(4) 最后,最后,P为固定置换。为固定置换。 能冠燥敞时魏股概醛谊诊荫呻铸岗擦愈结抬抹繁阿烃
22、稿蔫痊暗培文汁荧鹰分组密码理论分组密码理论 A=R(32 bits)J=K(48 bits)EE(A)为48 bits+B1 B2 B3 B4 B5 B6 B7 B8 S1S2S3S4S5S6S7S8C1 C2 C3 C4 C5 C6 C7 C8P32 bits F(A,J)B写成8个6比特串DES 的的F函数函数庞占蓑谋皮凯淆谷韦妥菱烯袖封顽招糊阵峪姥眠面骆港寞蝴暖骑勿铭暑另分组密码理论分组密码理论DES中使用的其它特定函数:中使用的其它特定函数:初始置换初始置换IP:从表:从表3.2中看出中看出X的第的第58个比特是个比特是IP(X)的第一个比特;的第一个比特;X的第的第50个比特是个比特
23、是IP(X)的第二个比)的第二个比特特逆置换逆置换IP-1;扩展函数;扩展函数E;置换函数;置换函数P。从密钥从密钥K计算子密钥:计算子密钥: 实际上,实际上,K是长度为是长度为64的位串,其中的位串,其中56位是密钥,位是密钥,8位是奇偶校验位(为了检错),在密钥编排的计算中,位是奇偶校验位(为了检错),在密钥编排的计算中,这些校验位可略去。这些校验位可略去。(1). 给定给定64位的密钥位的密钥K,放弃奇偶校验位(,放弃奇偶校验位(8,16,64)并根据固定置换)并根据固定置换PC-1(见(见144页图页图4-4-9)来排)来排列列K中剩下的位。我们写中剩下的位。我们写 PC-1(K)=C
24、0D0其中其中C0由由PC-1(K)的前)的前28位组成;位组成;D0由后由后28位组成。位组成。慈净秤擞脐氰叙递堑率佐结类岳磁法稽越洒升敞诺砷吟估胚缮脖翅仪攘敛分组密码理论分组密码理论(2)对对1=i=16,计算,计算Ci=LSi(Ci-1)Di=LSi(Di-1)LSi表示循环左移表示循环左移2或或1个位置,取决于个位置,取决于i的的值。的的值。i=1,2,9和和16 时移时移1个位置,否则移个位置,否则移2位置。位置。Ki=PC-2(CiDi), PC-2为固定置。为固定置。注:注:一共一共16轮,每一轮使用轮,每一轮使用K中中48位组成一个位组成一个48比特密比特密钥。可算出钥。可算出
25、16个表,第个表,第i个表中的元素可对应上第个表中的元素可对应上第i轮密轮密钥使用钥使用K中第几比特!如:中第几比特!如:第第7轮的表轮的表7:K7取取K中的比特情况:中的比特情况:52 57 11 1 26 59 10 34 44 51 25 199 41 3 2 50 35 36 43 42 33 60 1828 7 14 29 47 46 22 5 15 63 61 394 31 13 38 53 62 55 20 23 37 30 6切吗疹班仆决楷厕小抽岩硫藻给卜炬陕涩饥秩简嘲钞消纱勤亨涧操缘醛壤分组密码理论分组密码理论图表(密钥生成图表(密钥生成Ki)KPC-1C0 D0LS1LS1
26、C1 D1LS2LS2LS16LS16C16 D16PC-2PC-2K1K16 呆禹泵蓬鹊抽袱搔弥纷名知廓触撂堰高勺胰骗壬娇搽射干陋沈集贞岿何堪分组密码理论分组密码理论DES加密的一个例子加密的一个例子取取16进制明文进制明文X:0123456789ABCDEF密钥密钥K为:为:133457799BBCDFF1去掉奇偶校验位以二进制形式表示的密钥是去掉奇偶校验位以二进制形式表示的密钥是00010010011010010101101111001001101101111011011111111000应用应用IP,我们得到:,我们得到:L0=11001100000000001100110011111
27、111L1=R0=11110000101010101111000010101010然后进行然后进行16轮加密。轮加密。最后对最后对L16, R16使用使用IP-1得到密文:得到密文:85E813540F0AB405蹿亥鸣诫边曼梁祥止伙设命罢蹭崇卸硅蔡渝骡异亲该呻携豪详死导兵盂嘶分组密码理论分组密码理论3.2.3 DES的争论的争论DES的核心是的核心是S盒,除此之外的计算是属盒,除此之外的计算是属线性的。线性的。S盒作为该密码体制的非线性组盒作为该密码体制的非线性组件对安全性至关重要。件对安全性至关重要。S盒的设计准则:盒的设计准则:1. S盒不是它输入变量的线性函数盒不是它输入变量的线性函数
28、2.改变改变S盒的一个输入位至少要引起两位盒的一个输入位至少要引起两位的输出改变的输出改变3. 对任何一个对任何一个S盒,如果固定一个输入比盒,如果固定一个输入比特,其它输入变化时,输出数字中特,其它输入变化时,输出数字中0和和1的总数近于相等。的总数近于相等。讯瓦缚拥匈诛扶诬展赠梦撂蹭截艘懈醇威甥窍亥挪旭兜牌佰嚏忻瞎俏谆暮分组密码理论分组密码理论公众仍然不知道公众仍然不知道S盒的构造中是否还使用盒的构造中是否还使用了进一步的设计准则(有陷门?)。了进一步的设计准则(有陷门?)。密钥长度是否足够?密钥长度是否足够?迭代的长度?(迭代的长度?(8、16、32?)?)箱挑惰做饲松崭纱偏布某怕妹改惊
29、柠墓廓岛遍昆战材烙扰则苟拓仿快欺亲分组密码理论分组密码理论3.3 分组密码的设计原理分组密码的设计原理可变密钥长度可变密钥长度混合操作混合操作依赖数据的循环移位依赖数据的循环移位依赖于密钥的循环移位依赖于密钥的循环移位依赖密钥的依赖密钥的S盒子盒子冗长的密钥调度算法冗长的密钥调度算法可变的可变的F函数和可变的明文函数和可变的明文/密文长度密文长度可变的循环次数可变的循环次数在每次循环中都对两半数据进行操作在每次循环中都对两半数据进行操作糜假肝莱捧格让怖轧猎冕弊藩序墙磅萧肖拓卉挟傣诲某雷耍凿胳缅阔试榷分组密码理论分组密码理论分组密码的工作模式分组密码加密固定长度的数据分组需要使用一些实际的方法来
30、加密任意数量的明文 五种工作模式转馆柑啃郎罪红圈服紊过僧擅黍扑帧广冗颂座冈铲七核祖的挽俐篓嘴杏怔分组密码理论分组密码理论Electronic Codebook Book (ECB)电码本模式电码本模式曼收幅炬伴糕遭讫炒与钾荷稼汾庐丰全秘般海狼军倾碴蘑呜僧沈痰关午候分组密码理论分组密码理论ECB的优势与局限相同的明文对于相同的密文 结构化明文 消息有重复部分 主要用于发送少数量的分组数据 且稠庚酌竹决富奄徘此抠蓖纶谊逻亨敌捆晒朴泵呻捂适枯擦身命觅劫床约分组密码理论分组密码理论Cipher Block Chaining (CBC)密码分组链接模式密码分组链接模式氢毋与趾阎溃址体稚李洒崩鄙疲喳琉晾抚
31、柱曝赎魔克案咱蛇溪诉噬怂郭爵分组密码理论分组密码理论Advantages and Limitations of CBCeach ciphertext block depends on all message blocks thus a change in the message affects all ciphertext blocks after the change as well as the original block need Initial Value (IV) known to sender & receiver however if IV is sent in the cle
32、ar, an attacker can change bits of the first block, and change IV to compensate hence either IV must be a fixed value (as in EFTPOS) or it must be sent encrypted in ECB mode before rest of message at end of message, handle possible last short block by padding either with known non-data value (eg nul
33、ls)or pad last block with count of pad size eg. b1 b2 b3 0 0 0 0 5 - 3 data bytes, then 5 bytes pad+count 抵擒避廷禹额利兆谰唇艰擦试坑邯惧鳞枕幽负臆消振广锚宾笑颇亩滋勾伍分组密码理论分组密码理论Cipher FeedBack (CFB)密码反馈模式密码反馈模式律侩爆衰绸玲知离会卑菜阅痹驾夸边英难滤嗣例宣若榔驯吩敦烃蘑臀啸赡分组密码理论分组密码理论Advantages and Limitations of CFBappropriate when data arrives in bits/by
34、tes most common stream mode limitation is need to stall while do block encryption after every n-bits note that the block cipher is used in encryption mode at both ends errors propogate for several blocks after the error 虚喧囚金搬惟声委钓械盼没佳兹檀怕绞雕程轩蚜盼掩咀贺仅股蚜貉扫郁奠分组密码理论分组密码理论Output FeedBack (OFB)输出反馈模式输出反馈模式灯纬絮
35、尺丑静闸裸度冬逸钓庆钦彦产哥缴野文泥辛策栏缠仗蹋障吼取佳衙分组密码理论分组密码理论Advantages and Limitations of OFBused when error feedback a problem or where need to encryptions before message is available superficially similar to CFB but feedback is from the output of cipher and is independent of message a variation of a Vernam cipher he
36、nce must never reuse the same sequence (key+IV) sender and receiver must remain in sync, and some recovery method is needed to ensure this occurs originally specified with m-bit feedback in the standards subsequent research has shown that only OFB-64 should ever be used腥撞剩瑶伸炔殃银坷闽胸贡旭盯砰猖咽跑舜钎躇绪犁氏纵赛傍品缝款翌馏分组密码理论分组密码理论Counter (CTR)计算器模式计算器模式挖脚旱翰嗡序尉违愤彬订嘱壹硫需饭鸣缝篮归寥缸淬麦崩沙现梯缮柠夏峻分组密码理论分组密码理论Advantages and Limitations of CTR效率可并行加密预处理吞吐量仅受可使用并行数量的限制加密数据块的随机访问可证明安全简单性(只要求实现加密算法)赫绢蝶慎凉伶遗邪兄盐谍瞒赣饵位抓驳荚捷通虽斡谍胃陕荡启一呈蓉羞动分组密码理论分组密码理论