毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
VHDL基于DES数据加密标准的加解密系统设计(3)
左移位数 1 1 2 2 2 2 2 2 1 2 2 2 2 2 2 1
下图为每一轮子密钥产生的详细过程:
图2 密钥生成框图
以第一轮子密钥的产生为例子,输入数据长度为64位的初始密钥,这串数据经过置换选择1重新排列之后,这其中的56位非校验码的数据被分成各有28位的左右两组,左边的那组向左循环一位,右边一组向右循环一位,循环位移之后的这两组数据又被输入到置换选择2中产生,通过置换选择产生出48位的第一轮子密钥K1,后面的几轮密钥的产生过程与第一轮的是一样的,唯一不同的就是不同的轮密钥产生所经过的循环位移位数是不相同的,每次位移的位数在表2中都被详细地列出来。
1.2.3 DES的轮结构
轮结构主要包括:扩展置换,与48位密钥的异或运算,S盒置换以及P盒置换,它的详细过程如图3所示。在每一轮变换中的结构和Feistel加密结构一样[8]。
图3 DES轮函数结构框图
轮函数就是DES加密原理图中的f,其过程可以分为四个步骤,首先是右边的32位数据Ri经过E表被置换扩展为48位,然后这48位重新排列之后的数据又和置换选择PC2所产生的48位子密钥Ki进行异或运算,再然后运算的结果被输入到8个吹冰进四出的S盒之后得到一个32位数据的输出,最后输出的数据最后再经过P置换改变其排列的顺序后即把它作为函数的结果。该结果再与Li-1进行异或运算就会得到Ri,而Li与Ri-1是一样的。
表3 E置换表
32 1 2 3 4 5 4 5
6 7 8 9 8 9 10 11
12 13 12 13 14 15 16 17
16 17 18 19 20 21 20 21
22 23 24 25 24 25 26 27
28 29 28 29 30 31 32 1
E置换表的使用方法:表中的数据代表输入数据的第几位,而这个数据在表中所在的位置就是输出数据对应的位数,例如表中第一位数据是32,那么在原输入数据的第32位上那个数就会作为输出数据第一位的那个数,表中第二位数据是1,也就是原数据第一位上面的那个数作为输出数据的第二位的数,以此类推最后一个数据时1,那么原数据的第一位上的数作为最后一位的数输出。通过E置换表之后,数据中各个位上的数会发生变化,同时还会将原本只有32位的数据扩展成拥有48位的数据。
DES加密算法中除了8个S盒里面是非线性变换以外,其余各处均是线性变换的,而DES加密算法保密的最关键的地方就在于S盒设计上面[9]。它的设计标准是经过IBM公司精心设计和严格挑选的,美国国家安全局曾经公布了下列几个设计准则:
(1) S盒的每一行是整数0,1,2,…,15的一个置换;
(2) 没有一个S盒是它输入变量的线性函数;
(3) 改变S盒输入中的某一位,至少会引起2位的输出改变;
共6页:
上一页
1
2
3
4
5
6
下一页
上一篇:
AT89C51单片机的汽车防追尾碰撞系统的设计+源程序
下一篇:
PLC多功能生物培养箱监控系统设计
基于Kinect手势识别的遥操...
基于51单片机自动门智能控制系统设计
基于TI-DSP平台的电力电子测控平台设计
基于传感器网络的分布式集员滤波问题的研究
基于飞思卡尔芯片LED色彩控制器的设计
基于磁共振技术的家用无...
基于simulink的三相桥式全控...
浅谈传统人文精神茬大學...
浅谈新形势下妇产科护理...
国内外无刷直流电动机研究现状
中国古代秘书擅权的发展和恶变
多元化刑事简易程序构建探讨【9365字】
拉力采集上位机软件开发任务书
《醉青春》导演作品阐述
辩护律师的作证义务和保...
高校网球场馆运营管理初探【1805字】
谷度酒庄消费者回访调查问卷表