对称分组密码的生成方法及其装置的制作方法

文档序号:7919358阅读:164来源:国知局
专利名称:对称分组密码的生成方法及其装置的制作方法
技术领域
本发明涉及一种密码的生成方法及其装置,尤其涉及一种对称分组密码的生成方
法及其装置,属于计算领域。
背景技术
随着信息技术的飞速发展,对于数据传输、存储等方面的安全性要求也越来越高,因此人们提出了很多数据加密算法。目前已广泛应用于因特网、外卫星通信、网关服务器、机顶盒、视频传输以及其它大量的数据传输业务和加密硬盘等数据存储等业务中。
基本密码算法有两种对称密钥密码、非对称密钥密码。其中,对称密钥加密也叫秘密/专用密钥加密,即发送和接收数据的双方必须使用相同的/对称的密钥对明文进行加密和解密运算。最著名的对称密钥加密标准是数据加密标准DES。 DES是一种使用56个数据位的密钥来操作64位数据块的块加密算法,由IBM公司推出,可同时对大量数据进行快速加密。 密码算法的实现方法通常分为软件实现和硬件实现两种。软件实现时速度较慢,消耗大量的CPU处理时间和总线、内存资源,在某些高速数据传输的场合,数据传输速率要求达到上lGBits/s以上,用软件实现算法是无法满足要求的。因此要求大量数据加、解密适时处理如计算机系统要求主存与硬盘要求快速数据交换的场合必须采用硬件实现。
但是,对称分组密码算法为了提高密码的编码强度,要求加密的迭代的轮数足够多,如T-DES密码算法迭代轮数高达48轮。每一轮的函数F要求有高的非线性度,这使得实现每一轮运算所需的芯片逻辑资源的面积比较大。因此,如果按照一般的芯片架构实现对目前的称分组密码所需的芯片面积非常大,成本也很高。

发明内容
本发明的目的就是为了解决现有技术中存在的上述问题,提供一种对称分组密码的生成方法及其装置。 本发明的目的通过以下技术方案来实现 对称分组密码的生成方法,其包含以下步骤——步骤①初始置换模块对输入数据进行初始置换,将数据变成另一种格式的数据,就是原先的数据被修改成另一个数据,以便于下面进行轮函数运算; 步骤②通过时序控制模块和轮运算密钥置换模块,对输入数据进行第一级流水中所有的轮函数运算; 步骤③完成第一级流水运算后的数据输入到第二级流水中,同时第二组数据被输入到第一级流水; 步骤④当一批中有一组数据完成所有的轮函数运算,则该组数据在时序控制模
块的控制下,通过数据输出控制器,送到逆初始置换模块,完成加解密运算; 步骤⑤上述步骤中有一组数据输出时,则向流水线再输入下一批中的一组数据,以此类推完成所有的加解密运算。 上述的对称分组密码的生成方法,其中第一组数据完成所有的轮函数运算后,若要进行轮函数运算,则第一组数据在时序控制模块和轮运算密钥置换模块的控制下,返回输入到第一级流水中,再次进行轮函数运算。 对称分组密码的生成装置,其中采用对称分组密码芯片,其至少包括初始置换模块、时序控制模块、轮运算密钥置换模块、数据输入控制器、数据输出控制器、逆初始置换模块、以及若干级流水模块组成的流水线。 具体来说——时序控制模块2是本装置的核心,它控制轮运算密钥置换模块3置换出轮运算所需的轮秘钥;同时它的输出口也与初始置换模块1、数据输入控制器4、数据输出控制器6、逆初始置换模块7、以及的控制输入口相连接,用来控制数据的流向,协调流水线每一级数据的函数运算,使数据完成规定轮数的轮函数运算。
轮运算密钥置换模块在时序控制模块控制下,向流水线每一级流水模块中的轮
函数输出置换密钥。它与流水线每一级流水模块的轮秘钥输入口相连接。
初始置换模块在时序控制模块控制下,读入输入接口的数据,并将数据置换成轮
函数运算所要求的格式。 数据输入控制器按照时序控制模块的指令,将初始置换模块输出的数据还是数据输出控制器返回的数据输入流水线。
第一级流水按照轮运算密钥置换模块给出的轮密钥,完成本级流水中的轮函数
运算。它与轮运算密钥置换模块和数据输入控制器以及下一级流水模块相连接。
流水线由若干级流水模块组成,它与轮运算密钥置换模块。和数据输入控制器以
及数据输出控制器相连接。 数据输出控制器按照时序控制模块的指令,将流水线输出的数据输出逆初始置换模块7,还是还会给数据输入控制器4。 逆初始置换模块将数据由轮函数运算所要求的格式初置换成原来的格式,输出到输出接口。 本发明技术方案的突出的实质性特点和显著的进步主要体现在在不减少密码算法迭代的轮数的前提下,通过特有的模块复用的方法,减小芯片的面积。与此同时,降低芯片的功耗,随即降低了硬件方法实现对称分组密码的成本,实现面积和速度的平衡,使得该系统获得高的性价比。由此可见,本发明为本领域的技术进步拓展了空间,实施效果好。


本发明的目的、优点和特点,将通过下面优选实施例的非限制性说明进行图示和
解释。这些实施例仅是应用本发明技术方案的典型范例,凡采取等同替换或者等效变换而
形成的技术方案,均落在本发明要求保护的范围之内。这些附图当中, 图1是本发明实施示意图; 图2是DES模块构成流水示意图。 图中各附图标记的含义如下 1初始置换模块 2时序控制模块 3轮运算密钥置换模块 4数据输入控制器
5第一级流水 6数据输出控制器 7逆初始置换模块 8流水线
具体实施例方式
如图1、图2所示的对称分组密码的生成装置,其特别之处在于至少包括初始置 换模块1、时序控制模块2、轮运算密钥置换模块3、数据输入控制器4、数据输出控制器6、逆 初始置换模块1、以及若干级流水模块组成的流水线。 具体来说——时序控制模块2是本装置的核心,它控制轮运算密钥置换模块3置 换出轮运算所需的轮秘钥;同时它的输出口也与初始置换模块1、数据输入控制器4、数据 输出控制器6、逆初始置换模块7的控制输入口相连接,用来控制数据的流向,协调流水线 每一级数据的函数运算,使数据完成规定轮数的轮函数运算。 轮运算密钥置换模块3 :在时序控制模块2控制下,向流水线8每一级流水模块中
的轮函数输出置换密钥。它与流水线8每一级流水模块的轮秘钥输入口相连接。 初始置换模块1 :在时序控制模块2控制下,读入输入接口的数据,并将数据置换
成轮函数运算所要求的格式。 数据输入控制器4 :按照时序控制模块2的指令,将初始置换模块1输出的数据还 是数据输出控制器6返回的数据输入流水线8。 第一级流水5 :按照轮运算密钥置换模块3给出的轮密钥,完成本级流水中的轮函 数运算。它与轮运算密钥置换模块3和数据输入控制器4以及下一级流水模块相连接。
流水线8 :由若干级流水模块组成,它与轮运算密钥置换模块3和数据输入控制器 4以及数据输出控制器6相连接 数据输出控制器6 :按照时序控制模块2的指令,将流水线8输出的数据输出逆初 始置换模块7,还是还会给数据输入控制器4。 逆初始置换模块7 :将数据由轮函数运算所要求的格式初置换成原来的格式,输 出到输出接口。 对称分组密码的生成方法处理过程如下——步骤①初始置换模块初始置换模块 l对输入数据进行初始置换,将数据变成另一种格式的数据,就是原先的数据被修改成另一 个数据,以便于下面进行轮函数运算;步骤②通过时序控制模块时序控制模块2和轮运算 密钥置换模块3,对输入数据进行第一级流水5中所有的轮函数运算;步骤③完成第一级 流水5运算后的数据输入到第二级流水中,同时第二组数据被输入到第一级流水5 ;步骤 ④当一批中有一组数据完成所有的轮函数运算,则该组数据在时序控制模块时序控制模
块2的控制下,通过数据输出控制器6,送到逆初始置换模块7初始置换模块1,完成加解密 运算;步骤⑤上述步骤中有一组数据输出时,则向流水线再输入下一批中的一组数据,以此 类推完成所有的加解密运算。 同时,为了适应不同的加密需求。第一组数据完成所有的轮函数运算后,若要进行 轮函数运算,则第一组数据在时序控制模块2和轮运算密钥置换模块3的控制下,返回输入 到第一级流水5中,再次进行轮函数运算。 结合实际操作来看,常见的对称密码有DES、T-DES、AES、Blowfish、RC5等,它们均 可以采用本专利中所提出的架构进行硬件设计。T-DES加密算法将输入的64位明文进行三
5次DES加密或解密,得到64位密文或明文。下面结合T-DES在硬盘存储加密产芯片进行具 体举例描述—— 在硬盘存储加密产芯片中,由一个DES模块构成流水线。由时序控制模块2控制
和密钥控制模块的控制下,分批一组一组地完成数据的三次DES加解密运算。 另外,如图2所示DES模块构成流水线被分成八个级。利用该架构实现T-DES密
码算法,在满足加密强度和硬盘数据传输速度的情况下,加密模块的芯片面积减小了近三
分之二,最终满足硬盘存储加密产芯片总体设计目标。 通过上述的文字表述并结合附图可以看出,采用本发明后,在不减少密码算法迭 代的轮数的前提下,通过特有的模块复用的方法,减小芯片的面积。与此同时,降低芯片的 功耗,随即降低了硬件方法实现对称分组密码的成本,实现面积和速度的平衡,使得该系统 获得高的性价比。
权利要求
对称分组密码的生成方法,其特征在于包含以下步骤——步骤①初始置换模块对输入数据进行初始置换;步骤②通过时序控制模块和轮运算密钥置换模块,对输入数据进行第一级流水中所有的轮函数运算;步骤③完成第一级流水运算后的数据输入到第二级流水中,同时第二组数据被输入到第一级流水;步骤④当一批中有一组数据完成所有的轮函数运算,则该组数据在时序控制模块的控制下,通过数据输出控制器,送到逆初始置换模块,完成加解密运算;步骤⑤上述步骤中有一组数据输出时,则向流水线再输入下一批中的一组数据,以此类推完成所有的加解密运算。
2. 根据权利要求1所述的对称分组密码的生成方法,其特征在于第一组数据完成所 有的轮函数运算后,若要进行轮函数运算,则第一组数据在时序控制模块和轮运算密钥置 换模块的控制下,返回输入到第一级流水中,再次进行轮函数运算。
3. 对称分组密码的生成装置,其特征在于采用对称分组密码芯片,其至少包括初始 置换模块、时序控制模块、轮运算密钥置换模块、数据输入控制器、数据输出控制器、逆初始 置换模块、以及若干级流水模块组成的流水线,时序控制模块的输出口与初始置换模块、数 据输入控制器、数据输出控制器、逆初始置换模块的入口相连接,轮运算密钥置换模块与流 水线每一级流水模块的轮秘钥输入口相连接。
全文摘要
本发明涉及一种对称分组密码的生成方法及其装置,其采用对称分组密码芯片。首先对输入数据进行初始置换,对输入数据进行第一级流水中所有的轮函数运算。完成第一级流水运算后的数据输入到第二级流水中,同时第二组数据被输入到第一级流水。并且,当一批中有一组数据完成所有的轮函数运算,则该组数据在时序控制模块的控制下,通过数据输出控制器,送到逆初始置换模块,完成加解密运算。同时,上述步骤中有一组数据输出时,则向流水线再输入下一批中的一组数据,以此类推完成所有的加解密运算。采用本发明后在不减少密码算法迭代的轮数的前提下,通过特有的模块复用的方法,减小芯片的面积。
文档编号H04L9/08GK101729242SQ20081015527
公开日2010年6月9日 申请日期2008年10月29日 优先权日2008年10月29日
发明者刘新宇, 汤晓容, 章世华 申请人:苏州中科集成电路设计中心有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1