队伍编号:CICC1905 队伍名称:青稞战队
DES轮密钥产生模块中的置换选择PC-1、循环左移、置换选择PC-2均采用assign语句实现,配合一个二选一选通器和一个十六选一选通器实现。其中二选一选通器以mode模式判断信号为选通信号,对加解密运算中16轮迭代运算的子密钥进行控制;十六选一选通器以count轮密钥选择控制信号为选通信号,判断迭代运算轮数进行子密钥输出。
DES轮密钥产生模块其外框图见图3-5所示,外部信号定义见表3-9所示。
图3-5 DES轮密钥产生模块外框图
Fig.3-5 Block diagram of DES round key generation module
表3-9 DES轮密钥产生模块外部信号定义
Tab.3-9 DES round key generation module external signal definition
信号名称 | 信号方向 | 宽度 | 信号描述 |
mode | input | 1 | 加密/解密控制信号,1为加密,0为解密 |
count | input | 4 | 轮密钥选择控制信号 |
key | input | 64 | 种子密钥输入 |
subkey | output | 48 | 子密钥输出 |
over_exp | output | 1 | 密钥扩展完成信号,1为密钥扩展完成 |
对于二选一选通器和十六选一选通器,当mode为1时执行的是加密功能,第一轮输出K1,第二轮输出K2,以此类推,第十六轮输出K16。当mode为0时执行的是解密功能,第一轮输出K16,第二轮输出K15,以此类推,第十六轮输出K1。