CN101729242A - 对称分组密码的生成方法及其装置 - Google Patents
对称分组密码的生成方法及其装置 Download PDFInfo
- Publication number
- CN101729242A CN101729242A CN200810155274A CN200810155274A CN101729242A CN 101729242 A CN101729242 A CN 101729242A CN 200810155274 A CN200810155274 A CN 200810155274A CN 200810155274 A CN200810155274 A CN 200810155274A CN 101729242 A CN101729242 A CN 101729242A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- group
- input
- flowing water
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明涉及一种对称分组密码的生成方法及其装置,其采用对称分组密码芯片。首先对输入数据进行初始置换,对输入数据进行第一级流水中所有的轮函数运算。完成第一级流水运算后的数据输入到第二级流水中,同时第二组数据被输入到第一级流水。并且,当一批中有一组数据完成所有的轮函数运算,则该组数据在时序控制模块的控制下,通过数据输出控制器,送到逆初始置换模块,完成加解密运算。同时,上述步骤中有一组数据输出时,则向流水线再输入下一批中的一组数据,以此类推完成所有的加解密运算。采用本发明后在不减少密码算法迭代的轮数的前提下,通过特有的模块复用的方法,减小芯片的面积。
Description
技术领域
本发明涉及一种密码的生成方法及其装置,尤其涉及一种对称分组密码的生成方法及其装置,属于计算领域。
背景技术
随着信息技术的飞速发展,对于数据传输、存储等方面的安全性要求也越来越高,因此人们提出了很多数据加密算法。目前已广泛应用于因特网、外卫星通信、网关服务器、机顶盒、视频传输以及其它大量的数据传输业务和加密硬盘等数据存储等业务中。
基本密码算法有两种:对称密钥密码、非对称密钥密码。其中,对称密钥加密也叫秘密/专用密钥加密,即发送和接收数据的双方必须使用相同的/对称的密钥对明文进行加密和解密运算。最著名的对称密钥加密标准是数据加密标准DES。DES是一种使用56个数据位的密钥来操作64位数据块的块加密算法,由IBM公司推出,可同时对大量数据进行快速加密。
密码算法的实现方法通常分为软件实现和硬件实现两种。软件实现时速度较慢,消耗大量的CPU处理时间和总线、内存资源,在某些高速数据传输的场合,数据传输速率要求达到上1GBits/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:将数据由轮函数运算所要求的格式初置换成原来的格式,输出到输出接口。
对称分组密码的生成方法处理过程如下——步骤①:初始置换模块初始置换模块1对输入数据进行初始置换,将数据变成另一种格式的数据,就是原先的数据被修改成另一个数据,以便于下面进行轮函数运算;步骤②:通过时序控制模块时序控制模块2和轮运算密钥置换模块3,对输入数据进行第一级流水5中所有的轮函数运算;步骤③:完成第一级流水5运算后的数据输入到第二级流水中,同时第二组数据被输入到第一级流水5;步骤④:当一批中有一组数据完成所有的轮函数运算,则该组数据在时序控制模块时序控制模块2的控制下,通过数据输出控制器6,送到逆初始置换模块7初始置换模块1,完成加解密运算;步骤⑤上述步骤中有一组数据输出时,则向流水线再输入下一批中的一组数据,以此类推完成所有的加解密运算。
同时,为了适应不同的加密需求。第一组数据完成所有的轮函数运算后,若要进行轮函数运算,则第一组数据在时序控制模块2和轮运算密钥置换模块3的控制下,返回输入到第一级流水5中,再次进行轮函数运算。
结合实际操作来看,常见的对称密码有DES、T-DES、AES、Blowfish、RC5等,它们均可以采用本专利中所提出的架构进行硬件设计。T-DES加密算法将输入的64位明文进行三次DES加密或解密,得到64位密文或明文。下面结合T-DES在硬盘存储加密产芯片进行具体举例描述——
在硬盘存储加密产芯片中,由一个DES模块构成流水线。由时序控制模块2控制和密钥控制模块的控制下,分批一组一组地完成数据的三次DES加解密运算。
另外,如图2所示:DES模块构成流水线被分成八个级。利用该架构实现T-DES密码算法,在满足加密强度和硬盘数据传输速度的情况下,加密模块的芯片面积减小了近三分之二,最终满足硬盘存储加密产芯片总体设计目标。
通过上述的文字表述并结合附图可以看出,采用本发明后,在不减少密码算法迭代的轮数的前提下,通过特有的模块复用的方法,减小芯片的面积。与此同时,降低芯片的功耗,随即降低了硬件方法实现对称分组密码的成本,实现面积和速度的平衡,使得该系统获得高的性价比。
Claims (3)
1.对称分组密码的生成方法,其特征在于包含以下步骤——步骤①:初始置换模块对输入数据进行初始置换;
步骤②:通过时序控制模块和轮运算密钥置换模块,对输入数据进行第一级流水中所有的轮函数运算;
步骤③:完成第一级流水运算后的数据输入到第二级流水中,同时第二组数据被输入到第一级流水;
步骤④:当一批中有一组数据完成所有的轮函数运算,则该组数据在时序控制模块的控制下,通过数据输出控制器,送到逆初始置换模块,完成加解密运算;
步骤⑤上述步骤中有一组数据输出时,则向流水线再输入下一批中的一组数据,以此类推完成所有的加解密运算。
2.根据权利要求1所述的对称分组密码的生成方法,其特征在于:第一组数据完成所有的轮函数运算后,若要进行轮函数运算,则第一组数据在时序控制模块和轮运算密钥置换模块的控制下,返回输入到第一级流水中,再次进行轮函数运算。
3.对称分组密码的生成装置,其特征在于:采用对称分组密码芯片,其至少包括初始置换模块、时序控制模块、轮运算密钥置换模块、数据输入控制器、数据输出控制器、逆初始置换模块、以及若干级流水模块组成的流水线,时序控制模块的输出口与初始置换模块、数据输入控制器、数据输出控制器、逆初始置换模块的入口相连接,轮运算密钥置换模块与流水线每一级流水模块的轮秘钥输入口相连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810155274A CN101729242A (zh) | 2008-10-29 | 2008-10-29 | 对称分组密码的生成方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810155274A CN101729242A (zh) | 2008-10-29 | 2008-10-29 | 对称分组密码的生成方法及其装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101729242A true CN101729242A (zh) | 2010-06-09 |
Family
ID=42449527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810155274A Pending CN101729242A (zh) | 2008-10-29 | 2008-10-29 | 对称分组密码的生成方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101729242A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102111263A (zh) * | 2011-02-21 | 2011-06-29 | 山东中孚信息产业股份有限公司 | 一种数据流加密的方法 |
CN102355348A (zh) * | 2011-06-28 | 2012-02-15 | 中国人民解放军国防科学技术大学 | 一种容错的des算法加速器 |
CN102355349A (zh) * | 2011-06-28 | 2012-02-15 | 中国人民解放军国防科学技术大学 | 基于容错的idea全流水硬件加密方法 |
CN103150522B (zh) * | 2013-03-07 | 2015-09-09 | 中国科学院半导体研究所 | 一种适用于无源便携式设备的3des加密算法电路 |
CN105024804A (zh) * | 2015-06-10 | 2015-11-04 | 国网智能电网研究院 | 一种高效可配的对称密钥装置及配对方法 |
CN105356996A (zh) * | 2015-12-14 | 2016-02-24 | 联想(北京)有限公司 | 一种密文处理方法、电子设备及密文处理装置 |
CN106452743A (zh) * | 2016-09-26 | 2017-02-22 | 深圳市紫光同创电子有限公司 | 通信密钥获取方法及装置、通信报文解密方法及装置 |
CN111865560A (zh) * | 2020-06-23 | 2020-10-30 | 华中科技大学 | 一种aes密码协处理器及终端设备 |
-
2008
- 2008-10-29 CN CN200810155274A patent/CN101729242A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102111263A (zh) * | 2011-02-21 | 2011-06-29 | 山东中孚信息产业股份有限公司 | 一种数据流加密的方法 |
CN102355348A (zh) * | 2011-06-28 | 2012-02-15 | 中国人民解放军国防科学技术大学 | 一种容错的des算法加速器 |
CN102355349A (zh) * | 2011-06-28 | 2012-02-15 | 中国人民解放军国防科学技术大学 | 基于容错的idea全流水硬件加密方法 |
CN103150522B (zh) * | 2013-03-07 | 2015-09-09 | 中国科学院半导体研究所 | 一种适用于无源便携式设备的3des加密算法电路 |
CN105024804A (zh) * | 2015-06-10 | 2015-11-04 | 国网智能电网研究院 | 一种高效可配的对称密钥装置及配对方法 |
CN105356996A (zh) * | 2015-12-14 | 2016-02-24 | 联想(北京)有限公司 | 一种密文处理方法、电子设备及密文处理装置 |
CN105356996B (zh) * | 2015-12-14 | 2018-11-09 | 联想(北京)有限公司 | 一种密文处理方法、电子设备及密文处理装置 |
CN106452743A (zh) * | 2016-09-26 | 2017-02-22 | 深圳市紫光同创电子有限公司 | 通信密钥获取方法及装置、通信报文解密方法及装置 |
CN106452743B (zh) * | 2016-09-26 | 2020-01-31 | 深圳市紫光同创电子有限公司 | 通信密钥获取方法及装置、通信报文解密方法及装置 |
CN111865560A (zh) * | 2020-06-23 | 2020-10-30 | 华中科技大学 | 一种aes密码协处理器及终端设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101729242A (zh) | 对称分组密码的生成方法及其装置 | |
CN101622816B (zh) | 用于高级加密标准(aes)的灵活结构和指令 | |
CN102710415B (zh) | 一种利用对称密码算法进行数据加解密的方法及查表装置 | |
CN101588233B (zh) | 一种无线传感器网络节点应用中aes协处理器中的模块复用方法 | |
CN104067556B (zh) | 用于确定自动机是否已经接受了字符串的系统 | |
JPH1075240A (ja) | データ送信を保護する方法およびデータを暗号化または解読化する装置 | |
CN104639314A (zh) | 基于aes加密/解密算法的装置和流水控制方法 | |
CN101969376B (zh) | 一种具有语义安全的自适应加密系统及方法 | |
CN101304314A (zh) | 对数据进行加密和解密的方法和使用该方法的总线系统 | |
CN100382485C (zh) | 设计最优加密函数的方法和优化的加密设备 | |
CN103632104B (zh) | 一种大数据环境下动态数据的并行加解密方法 | |
CN104852798B (zh) | 一种数据加解密系统及方法 | |
CN107332657A (zh) | 一种基于区块链数字签名的加密方法及系统 | |
CN101383703A (zh) | 基于广义信息域的动态加密系统及方法 | |
CN102801519A (zh) | 一种实现aes加解密的方法及装置 | |
CN101478392A (zh) | 利用vlsi实现128位密钥长度aes算法的装置 | |
CN108933653A (zh) | 一种基于大规模数据的aes加解密系统及方法 | |
CN102664729A (zh) | 一种基于fpga的aes加解密网络通讯装置及其实现方法 | |
CN102185691A (zh) | 基于数字家庭的综合业务卡信息加密方法 | |
CN101394268A (zh) | 基于广义信息域的高级加密系统及方法 | |
CN105553934A (zh) | 基于云平台saas层eab万能编解码方法 | |
CN103346878A (zh) | 一种基于fpga高速串行io的保密通信方法 | |
CN101534190A (zh) | 一种多通道加/解密方法、装置及系统 | |
El-meligy et al. | 130nm Low power asynchronous AES core | |
CN102932135A (zh) | 一种3des加密方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20100609 |