




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DES算法的描述DES算法的描述一 DES( Data Encryption Standard)算法用56位密钥来加密64位数据的方法。DES算法以被应用于许多需要安全加密的场合。1-1、变换密钥 取得64位的密钥,每个第8位作为奇偶校验位。1-2、变换密钥。1-2-1、舍弃64位密钥中的奇偶校验位,根据下表(PC-1)进行密钥变换得到56位的密钥,在变换中,奇偶校验位已被舍弃。Permuted Choice 1 (PC-1) (8,16,24,32,40,48,56,64)已经被去掉;57 49 41 33 25 17 9 1 58 50 42 34 26 18 10 2 59 51 43 35 27 19 11 3 60 52 44 36 63 55 47 39 31 23 15 7 62 54 46 38 30 22 14 6 61 53 45 37 29 21 13 5 28 20 12 41-2-2、将变换后的密钥分为两个部分,开始的28位称为C0,最后的28位称为D0。C0:57 49 41 33 25 17 9 1 58 50 42 34 26 18 10 2 59 51 43 35 27 19 11 3 60 52 44 36 D0:63 55 47 39 31 23 15 7 62 54 46 38 30 22 14 6 61 53 45 37 29 21 13 5 28 20 12 41-2-3、生成16个子密钥,初始I=1。1-2-3-1、同时将CI、DI左移1位或2位,根据I值决定左移的位数。见下表 : I: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16左移位数:1 1 2 2 2 2 2 2 1 2 2 2 2 2 2 11-2-3-2、将CIDI作为一个整体按下表(PC-2)变换,得到48位的KIPermuted Choice 2 (PC-2)14 17 11 24 1 53 28 15 6 21 1023 19 12 4 26 816 7 27 20 13 241 52 31 37 47 5530 40 51 45 33 4844 49 39 56 34 5346 42 50 36 29 321-2-3-3、从1-2-3-1处循环执行,直到K16被计算完成。2、处理64位的数据2-1、取得64位的数据,如果数据长度不足64位,应该将其扩展为64位(例如补零)2-2、将64位数据按下表变换(IP)/Initial Permutation (IP)58 50 42 34 26 18 10 260 52 44 36 28 20 12 462 54 46 38 30 22 14 664 56 48 40 32 24 16 857 49 41 33 25 17 9 159 51 43 35 27 19 11 361 53 45 37 29 21 13 563 55 47 39 31 23 15 72-3、将变换后的数据分为两部分,开始的32位称为L0,最后的32位称为R0。2-4、用16个子密钥加密数据,初始I=1。2-4-1、将32位的RI-1按下表(E)扩展为48位的EI-1Expansion (E)32 1 2 3 4 54 5 6 7 8 98 9 10 11 12 1312 13 14 15 16 1716 17 18 19 20 2120 21 22 23 24 2524 25 26 27 28 2928 29 30 31 32 12-4-2、异或EI-1和KI,即EI-1 XOR KI2-4-3、将异或后的结果分为8个6位长的部分,第1位到第6位称为B1,第7位到第12位称为B2,依此类推,第43位到第48位称为B8。2-4-4、按S表变换所有的BJ,初始J=1。所有在S表的值都被当作4位长度处理。2-4-4-1、将BJ的第1位和第6位组合为一个2位长度的变量M,M作为在SJ中的行号。2-4-4-2、将BJ的第2位到第5位组合,作为一个4位长度的变量N,N作为在SJ中的列号。2-4-4-3、用SJMN来取代BJ。Substitution Box 1 (S1)14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 70 15 7 4 14 2 13 1 10 6 12 11 9 5 3 84 1 14 8 13 6 2 11 15 12 9 7 3 10 5 015 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13S215 1 8 14 6 11 3 4 9 7 2 13 12 0 5 103 13 4 7 15 2 8 14 12 0 1 10 6 9 11 50 14 7 11 10 4 13 1 5 8 12 6 9 3 2 1513 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9S310 0 9 14 6 3 15 5 1 13 12 7 11 4 2 813 7 0 9 3 4 6 10 2 8 5 14 12 11 15 113 6 4 9 8 15 3 0 11 1 2 12 5 10 14 71 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12S47 13 14 3 0 6 9 10 1 2 8 5 11 12 4 1513 8 11 5 6 15 0 3 4 7 2 12 1 10 14 910 6 9 0 12 11 7 13 15 1 3 14 5 2 8 43 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14S52 12 4 1 7 10 11 6 8 5 3 15 13 0 14 914 11 2 12 4 7 13 1 5 0 15 10 3 9 8 64 2 1 11 10 13 7 8 15 9 12 5 6 3 0 1411 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3S612 1 10 15 9 2 6 8 0 13 3 4 14 7 5 1110 15 4 2 7 12 9 5 6 1 13 14 0 11 3 89 14 15 5 2 8 12 3 7 0 4 10 1 13 11 64 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13S74 11 2 14 15 0 8 13 3 12 9 7 5 10 6 113 0 11 7 4 9 1 10 14 3 5 12 2 15 8 61 4 11 13 12 3 7 14 10 15 6 8 0 5 9 26 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12S813 2 8 4 6 15 11 1 10 9 3 14 5 0 12 71 15 13 8 10 3 7 4 12 5 6 11 0 14 9 27 11 4 1 9 12 14 2 0 6 10 13 15 3 5 82 1 14 7 4 10 8 13 15 12 9 0 3 5 6 112-4-4-4、从2-4-4-1处循环执行,直到B8被替代完成。2-4-4-5、将B1到B8组合,按下表(P)变换,得到P。Permutation P16 7 20 2129 12 28 171 15 23 265 18 31 102 8 24 1432 27 3 919 13 30 622 11 4 252-4-6、异或P和LI-1结果放在RI,即RI=P XOR LI-1。2-4-7、LI=RI-12-4-8、从2-4-1处开始循环执行,直到K16被变换完成。2-4-5、组合变换后的R16L16(注意:R作为开始的32位),按下表(IP-1)变换得到最后的结果。Final Permutation (IP*-1) /40 8 48 16 56 24 64 3239 7 47 15 55 23 63 3138 6 46 14 54 22 62 3037 5 45 13 53 21 61 2936 4 44 12 52 20 60 2835 3 43 11 51 19 59 2734 2 42 10 50 18 58 2633 1 41 9 49 17 57 25以上就是DES算法的描述。 DES算法描述简介二 1 简介 DES是Data Encryption Standard(数据加密标准)的缩写。它是由IBM公司研制的一种加密算法,美国国家标准局于1977年公布把它作为非机要部门使用的数据加密标准,二十年来,它一直活跃在国际保密通信的舞台上,扮演了十分重要的角色。 DES是一个分组加密算法,他以64位为分组对数据加密。同时DES也是一个对称算法:加密和解密用的是同一个算法。它的密匙长度是56位(因为每个第8 位都用作奇偶校验),密匙可以是任意的56位的数,而且可以任意时候改变。其中有极少量的数被认为是弱密匙,但是很容易避开他们。所以保密性依赖于密钥。 2 算法框架: DES对64(bit)位的明文分组M进行操作,M经过一个初始置换IP置换成m0,将m0明文分成左半部分和右半部分m0=(L0,R0),各32位长。然后进行16轮完全相同的运算,这些运算被称为函数f,在运算过程中数据与密匙结合。经过16轮后,左,右半部分合在一起经过一个末置换,这样就完成了。 在每一轮中,密匙位移位,然后再从密匙的56位中选出48位。通过一个扩展置换将数据的右半部分扩展成48位,并通过一个异或操作替代成新的32位数据,在将其置换换一次。这四步运算构成了函数f。然后,通过另一个异或运算,函数f的输出与左半部分结合,其结果成为新的右半部分,原来的右半部分成为新的左半部分。将该操作重复16次,就实现了。具体图4所示。 3 DES解密 在经过所有的代替、置换、异或盒循环之后,你也许认为解密算法与加密算法完全不同。恰恰相反,经过精心选择的各种操作,获得了一个非常有用的性质:加密和解密使用相同的算法。DES加密和解密唯一的不同是密匙的次序相反。如果各轮加密密匙分别是K1,K2,K3.K16那么解密密匙就是K16,K15,K14K1。 4 DES的几种工作方式 第一种电子密本方式(ECB) 将明文分成n个64比特分组,如果明文长度不是64比特的倍数,则在明文末尾填充适当数目的规定符号。对明文组用给定的密钥分别进行加密,行密文C=(C0,C1,Cn-1)其中Ci=DES(K,xi),i=0,1,.,n-1。 第二种密文分组链接方式(CBC) 在CBC方式下,每个明文组xi在加密前与先一组
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年营养师考试冲刺试卷:实操技能与心理营养深度解析
- 新能源汽车发展前景
- 深层搅拌桩软基处理施工方案
- 2025年东北师范大学教师教育研究院春季学期专任教师招聘7人考前自测高频考点模拟试题及答案详解(新)
- 2024计算机四级考前冲刺练习试题及答案详解【夺冠】
- 2024计算机四级考前冲刺练习及答案详解【考点梳理】
- 2025临床执业医师测试卷(名校卷)附答案详解
- 2024-2025学年自考专业(计算机网络)考试彩蛋押题含答案详解(完整版)
- 2024自考专业(建筑工程)考试黑钻押题含答案详解(培优A卷)
- 2024-2025学年度广播电视播音员主持人能力提升B卷题库附参考答案详解【能力提升】
- 现房与期房培训课件
- 2024年仙桃市高新技术产业投资有限公司招聘笔试真题
- 汽车知识培训讲师简介课件
- 2025年教师职称-浙江-浙江教师职称(基础知识、综合素质、初中信息技术)历年参考题库典型考点含答案解析
- 北京高校标准化食堂标准(2026版)讲解
- 专题1.4数学归纳法(高效培优讲义)
- 卒中后抑郁症的中医治疗
- 泸州北方化学工业有限公司锅炉烟气脱硫脱硝除尘技改项目环评报告
- 可靠性基础知识培训课件
- 耗材产品售后方案(3篇)
- 2025年全国保密教育线上培训考试试题库(含答案)
评论
0/150
提交评论