菜单
  

    图3.2的右边是使用56比特密钥的方法。密钥首先通过一个置换函数,然后,对加密工程的每一轮,通过一个左循环移位和一个置换产生一个子密钥。其中每轮的置换都相同,但由于密钥被重复迭代,所以产生的每轮子密钥不相同。
    子密钥产生过程
    子密钥产生过程的输入,为使用者持有的64位初始密钥。加密或解密时,使用者将初始密钥输入至子密钥产生流程中。首先经过密钥置换A,将初始密钥的8个奇偶较验位去掉。留下真正的56位初始密钥。接着,分为两个28位分组C0及D0,再分别经过一个循环左移函数,连结成56位数据,再按密钥置换B做重排,便可输出K1(48位),依此类推。
    要注意的是,密钥置换A的输入为64位,输出为56位;而密钥置换B的输入和输出分别为56位和48位。
    1、子密钥产生过程示意图3.3
    2、密钥置换A如图3.4
    经密钥置换A,K由64bit成为56bit的重新排列,成为C0D0
    3、循环左移位数如表3.1
    4、密钥置换B如图3.5
    经密钥置换B,密钥变为 6×8=48位的轮子密钥。未入选的:9、18、22等密钥置换B是混乱+压缩。
     图3.3 子密钥产生过程
    图 3.4密钥置换A
    表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.5 密钥置换B
    3.3.2    初始置换
    表3.2 初始置换表
       (a)初始置换表        (b)逆初始置换表
    58 50 42 34 26 18 10 2
    60 52 44 36 28 20 12 4
    62 54 46 38 30 22 14 6
    64 56 48 40 32 24 16 8
    57 49 41 33 25 17  9 1
    59 51 43 35 27 19 11 3
    61 53 45 37 29 21 13 5
    63 55 47 39 31 23 15 7    40 8 48 16 56 24 64 32
    39 7 47 15 55 23 63 31
    38 6 46 14 54 22 62 30
    37 5 45 13 53 21 61 29
    36 4 44 12 52 20 60 28
    35 3 43 11 51 19 59 27
    34 2 42 10 50 18 58 26
    33 1 41  9 49 17 57 25

    初始明文按照IP重排;16轮后的密文按照IP-1重排即为最后密文。
    3.3.3    DES轮结构
     
    图3.6 DES加密算法的轮结构
    首先看图3.6的左半部分。将64比特的轮输入分成各为32比特的左右两半,分别记为L和R 。
    和Feistel网络一样,每轮变换可由以下公式表示:
    Li=Ri-1
    Ri=Li-1⊙F(Ri-1,KI)
    图3.7扩展变换 (选位表E)
    Ri的32bit →48bit两边的是重复选中的
    函数F(R,K)的计算过程:
    图3.8f(Ri-1,Ki)流程图
    3.3.4    DES的S盒定义
    图3.9DES的S-盒
    F中的代换有8个S盒组成,每个S盒的输入长为6比特、输出长为4比特,其变换由上表定义,每个S盒给出了4个代换(由一个表的4行给出)。
    对每个盒Si,其6比特输入中,第1个和第6个比特形成一个2位二进制数,用来选折Si的4个代换中的一个。6比特输入中,中间4位用来选折列。行和列定后,得到其交叉位置的十进制数,将这个数表示为4位二进数即得这一S盒的输出。
    3.3.5    DES加密算法的具体步骤
    本模块是用来完成电子商务交易过程中传输的数据的DES加密算法。DES加密算法是用64位明文和64位密钥进行相关的运算得到。具体的实现步骤为:
    1.    将输入的明文字符转为64位的二进制代码
    2.    将输入的密钥字符转为64位的二进制代码
    3.    将64位明文二进制进行位变换
    4.    将变换后的明文二进制分为左右两个32数组
  1. 上一篇:VB+sqlserver学生信息管理系统设计
  2. 下一篇:ASP.net中小型酒店管理系统设计+ER图
  1. jsp+mysql学生选课信息系统设计与实现

  2. Ruby+mysql就业信息管理系统的设计与实现

  3. VB+sqlserver社区医院信息管理系统的设计与实现

  4. java+mysql房地产开发与销售...

  5. VB+sqlserver高校宿舍信息管理系统的设计与实现

  6. java+mysql车票预订信息系统设计与实现

  7. 基于信息技术课程培养初...

  8. java+mysql车辆管理系统的设计+源代码

  9. 十二层带中心支撑钢结构...

  10. 杂拟谷盗体内共生菌沃尔...

  11. 酸性水汽提装置总汽提塔设计+CAD图纸

  12. 大众媒体对公共政策制定的影响

  13. 当代大学生慈善意识研究+文献综述

  14. 河岸冲刷和泥沙淤积的监测国内外研究现状

  15. 乳业同业并购式全产业链...

  16. 中考体育项目与体育教学合理结合的研究

  17. 电站锅炉暖风器设计任务书

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回