毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 计算机论文 >> 正文

基于DES原理的数据加密器的实现 第4页

更新时间:2016-9-28:  来源:毕业论文
DES算法分析
DES通过密钥对64位的二进制数据进行加密,把64位明文信息加密成64位密文信息,DES的加密过程可以表示成=。DES加密的流程图如图3-1所示。
3.1 生成密钥
从用户处取得一个64位长的密码口令key,key=k1…k64,去掉能被8整除的位,剩下的56位作为输入密钥。经过P1置换后分为两个28位数据块C和D。可表示为:
P1(K)=,其中
C   D=
经过密钥置换表的变换后,Key的位数由64位变成了56位,此56位分为C0、D0两部分,各28位,然后分别进行第一次循环左移,得到C1、D1,将C1(28位)、D1(28位)合并得到56位,再根据P2压缩置换表进行压缩置换,从而便得到了密钥K0(48位)。依次类推,便可得到K1、K2…K15。需要注意的是,16次循环左移对应的左移位数要依据表3-1所示的规则进行。
表3-1循环左移规则表
轮数 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 1
3.2 初始置换
把明文数据分成64位的数据块,不够64位的以适当的方式补充,把输出分为和R0两部分,每部分各长32位,其置换规则如表3-3所示。即将输入的第58位换到第1位,第50位换到第2位…,依次类推,最后一位是原来的第7位,L0、R0则是换位输出后的两部分,L0是输出的左32位,R0是右32位。
3.3 数据扩展
紧接初始置换,保持left不变,根据表3-4数据扩展表把right由32位扩展置换成48位。在数据扩展操作中,有些输入数据位(如第1、4、5、17、right=R32R1R2……R31R32R128、29、32……等数位)用了两次,因此数据得到了扩展。这样得到右半部分为: 把扩展后的48位right与第i次迭代生成的48位加密密钥进行按位异或操作(right(i)^= key[i])形成一个新的48位的right。right=R'1R'2R'3……R'47R'48。
                     
图3-1 DES加密流程图

表3-2 P2压缩置换表
14 17 11 24 1 5 3 28
15 6 21 10 23 19 12 4
26 8 16 7 27 20 13 2
41 52 31 37 47 55 30 40
51 45 33 48 44 49 39 56
34 53 46 42 50 36 29 32
表3-3 初始置换(IP置换)

上一页  [1] [2] [3] [4] [5] 下一页

基于DES原理的数据加密器的实现 第4页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。