CN103051443A - Aes密钥扩展的方法 - Google Patents

Aes密钥扩展的方法 Download PDF

Info

Publication number
CN103051443A
CN103051443A CN201210557912XA CN201210557912A CN103051443A CN 103051443 A CN103051443 A CN 103051443A CN 201210557912X A CN201210557912X A CN 201210557912XA CN 201210557912 A CN201210557912 A CN 201210557912A CN 103051443 A CN103051443 A CN 103051443A
Authority
CN
China
Prior art keywords
key
aes
computing
conversion
expansion
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.)
Granted
Application number
CN201210557912XA
Other languages
English (en)
Other versions
CN103051443B (zh
Inventor
刘大铕
高美洲
孙晓宁
李杨
张洪柳
周思远
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Sinochip Semiconductors Co Ltd
Original Assignee
Shandong Sinochip Semiconductors Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shandong Sinochip Semiconductors Co Ltd filed Critical Shandong Sinochip Semiconductors Co Ltd
Priority to CN201210557912.XA priority Critical patent/CN103051443B/zh
Publication of CN103051443A publication Critical patent/CN103051443A/zh
Application granted granted Critical
Publication of CN103051443B publication Critical patent/CN103051443B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种AES密钥扩展的方法,不再是基于前一轮密钥的简单迭代,而是通过密钥间的运算,在通过一定的迭代实现,降低了单一密钥迭代对前轮输入的关联性,增加了破译难度,同时由于前后关联性减小,使得整个电路的时序得到了有效地改善。

Description

AES密钥扩展的方法
技术领域
本发明涉及一种AES密钥扩展方法,其中AES为Advanced Encryption Standard的缩略语,即高级加密标准,参见GB/T 17964—2008。
背景技术
AES是密码学中的高级加密标准,是美国联邦政府采用的一种区块加密标准。这个标准用来替代较早的DES(Data Encryption Standard,数据加密标准),已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院 (NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。
AES的基本要求是,采用对称分组密码体制,密钥长度的最少支持为128、192、256,分组长度128位,算法应易于各种硬件和软件实现。
AES加密数据块分组长度必须为128比特,密钥长度可以是128比特、192比特、256比特中的任意一个(如果数据块及密钥长度不足时,会补齐)。AES加密有很多轮的重复和变换。大致步骤如下:1、密钥扩展(KeyExpansion),2、初始轮(Initial Round),3、重复轮(Rounds),每一轮又包括:SubBytes、ShiftRows、MixColumns、AddRoundKey,4、最终轮(Final Round),最终轮没有MixColumns。
AES密钥扩展是将初始密钥值按照一种算法进行迭代运算,获得每轮加密时所需的密钥。其中每轮需要的密钥均为128比特,而扩展过程和初始密钥则是根据加密位数的不同而不同,128比特AES的初始密钥和每次扩展得到的生成密钥都是128比特,相应可以知道192和256对应的初始密钥和每次扩展得到的生成密钥为192比特和256比特。
已有AES密钥扩展算法是通过将前一组的密钥进行运算的到新的密钥,如此迭代,这样,前后密钥之间相关性很大,表现为AES密钥扩展具有直接高效并且快速的优点,但也因此通过其中任何一轮子密钥即可破解全部密钥。进一步地,可以通过分析其中某一轮子密钥得到前几轮的全部密钥。也可以通过得到某一轮子密钥使用固定的算法推导出最后一轮所有的密钥。从以上内容可知,既有的AES扩展算法基于任意一轮子密钥的获得即可破解初始密钥。
另外,在硬件实现过程中既有的AES扩展算法由于采用了迭代算法,每完成一次扩展需要的时间很长,各次运算为串行关系,不利于并行实现。
发明内容
有鉴于此,本发明的目的在于提供一种新的AES密钥扩展方法,提高密钥的破解难度。
本发明采用以下技术方案:
一种AES密钥扩展的方法,输入密钥经过预定轮数的扩展生成输出密钥,当前轮输入密钥的第零密钥经过第一变换后与第一密钥运算直接生成或者经过第二变换后生成当前轮的第零输出密钥,当前轮输入密钥的第二密钥与第三密钥运算生成当前轮的第一输出密钥;
第零输出密钥与第一输出密钥运算产生第二输出密钥;第一输出密钥经过第三变换后与所述第二输出密钥运算产生第三输出密钥;
当密钥长度为192比特时,当前轮输入的第四密钥与所述第三输出密钥运算产生第四输出密钥,当前轮输入的第五密钥与所述第四输出密钥运算产生第五输出密钥;
而当密码长度为256比特时,当前轮的后四密钥复用前四密钥的处理电路。
从上述技术方案可以看出,依据本发明,不再是基于前一轮密钥的简单迭代,而是通过密钥间的运算,在通过一定的迭代实现,降低了单一密钥迭代对前轮输入的关联性,增加了破译难度,同时由于前后关联性减小,使得整个电路的时序得到了有效地改善。
上述AES密钥扩展的方法,所述第一变换和第三变换至少包括SubWord()变换。
上述AES密钥扩展的方法,在SubWord()变换前还包括RotWord()。
上述AES密钥扩展的方法,所述第三变换为Rcon[n]操作,其中n为偏移的位数。
上述AES密钥扩展的方法,偏移的位数为随机产生。
上述AES密钥扩展的方法,所述运算为异或运算。
结合附图考虑一下更详细的说明,本发明的上述及其他目的和优点将更加显而易见。
附图说明
图1为已有的一种AES密钥扩展的方法的原理图。
图2为依据本发明的一种AES密钥扩展的方法的原理图。
具体实施方式
未更清楚的表明相应的原理,首先对已有的一种AES密钥扩展的方法进行说明。
需要说明的是,当前AES支持的密码长度有三种,分别为128、192和256比特(bit),从而,密钥都是取4Byte,也就是32比特,那么128对应有4个密钥,192对应于6个密钥,而256对应于8个密钥。
参照说明书附图1所示的电路结构,每一轮最多有8个密钥,分别对应于W[0]到W[7],在图1所示的结构中,需要配置10个输入,也就是每一轮需要对应有10个密钥,电路比较复杂,电路面积比较大。
进一步地,参见说明书附图1,已有的AES密码扩展方法具有以下特点:
已有AES128密钥扩展方法
已有AES192密钥扩展方法
Figure DEST_PATH_IMAGE004
已有AES256密钥扩展方法
Figure DEST_PATH_IMAGE006
以已有AES256密钥扩展方法为例,其他的两种长度的密钥具有也就会理解。
其中SubWord()为S盒变换,即对输入数据进行非线性变换,也就是采用已生成的对应关系,将输入数据通过查表的方法得到非线性变化后的结果,并输出。
RotWord()为移位操作,即将输入数据(4Byte,即:32比特)进行移位操作,将第4个Byte数据移至第一个Byte位置,第1~第3Byte数据依次移到第2~第4Byte位置。
Rcon为偏移常量,即将得到的结果与其相加,使原有结果产生一定偏移。
“+”为异或运算。
W[0]~W[7]为初始密钥或前一轮密钥,W[8]~W[15]为生成当前轮密钥。
对于长度为128比特的密钥,或者说AES128只需要实用前四条电路,即图1中所示的W[0]到W[3],其中输入的W[0]经过移位操作,然后进行S盒变换(S_box())的结构进行结果偏移,产生W[4],逻辑上非常简单,此后则进行迭代操作,产生其他的输出密钥。可知,各次运算与前次的运算关联性比较强,是没测得到的扩展运算结果与前次的关联性比较强,破译难度相对不是很高。
另一方面,从以上结构可以看出,由于前后运算的关联性比较强,已有算法每次运算均需要前次的结果作为输入,特别是AES256情况,需要经过两次SubWord()运算,导致关键路径长,电路时序差。
附图2则是改进之后的电路结构,匹配不同长度的AES其具有以下特点:
256比特密钥扩展方法:
Figure DEST_PATH_IMAGE008
W[0]~W[7]为初始密钥或前一轮密钥,W[8]~W[15]为生成当前轮密钥。从以上的结构可以看出,后四个密钥复用前四个密钥的电路,关键路径最长只是用一次SubWord(),电路时序性更强。在未增加电路面积的情况下,电路的并行部分有效增加,运算速度进一步加快,从而,提高运算的效率。
关于偏移的位数n可以采用随机数产生器产生,提高破译的难度。
192比特密钥扩展方法:
Figure DEST_PATH_IMAGE010
W[0]~W[5]为初始密钥或前一轮密钥,W[6]~W[11]为生成当前轮密钥。从以上结构并参考附图2可以看出,关键路径最长也只是用一次SubWord()。
128比特密钥扩展方法:
W[0]~W[3]为初始密钥或前一轮密钥,W[4]~W[7]为生成当前轮密钥。
从AES所支持的三种密钥长度可知,调整生成当前轮密钥的方法,改变迭代方式,从而减小各次运算与前次的关联性,使每次得到的扩展运算结果与前次的关联减小,增加破译难度;同时由于前后关联性的减小,整个电路的时序得到有效改善,在110nm200MHz条件下,改进后的密钥扩展电路工作耗时是为改进的一半,因为根据已有方法产生的电路在AES256情况下需要经过两次SubWord(),关键路径长,在一个时钟周期内无法完成一次扩展操作,改进后的电路扩展中的各次运算均只有一次SubWord(),同时,由于前后关联小,独立性增强,在未增加电路面积的条件下,电路的并行部分有效增加,运算速度进一步加快,效率大幅度提高。
上述内容中关于术语的未尽事宜,可以参考国家标准GB/T 17964—2008。
应知,即便是有意的AES,其破解难度也是非常大的,本文旨在进一步提高其破解难度。诸如异或运算一可以采用其他的逻辑(布尔)运算,以产生所需要的目标值,而对于所说的变换,可以采用AES标准中的运算,也可以独立开发其他的运算。

Claims (6)

1.一种AES密钥扩展的方法,输入密钥经过预定轮数的扩展生成输出密钥,其特征在于,当前轮输入密钥的第零密钥经过第一变换后与第一密钥运算直接生成或者经过第二变换后生成当前轮的第零输出密钥,当前轮输入密钥的第二密钥与第三密钥运算生成当前轮的第一输出密钥;
第零输出密钥与第一输出密钥运算产生第二输出密钥;第一输出密钥经过第三变换后与所述第二输出密钥运算产生第三输出密钥;
当密钥长度为192比特时,当前轮输入的第四密钥与所述第三输出密钥运算产生第四输出密钥,当前轮输入的第五密钥与所述第四输出密钥运算产生第五输出密钥;
而当密码长度为256比特时,当前轮的后四密钥复用前四密钥的处理电路。
2.根据权利要求1所述的AES密钥扩展的方法,其特征在于,所述第一变换和第三变换至少包括SubWord()变换。
3.根据权利要求2所述的AES密钥扩展的方法,其特征在于,在SubWord()变换前还包括RotWord()。
4.根据权利要求1至3任一所述的AES密钥扩展的方法,其特征在于,所述第三变换为Rcon[n]操作,其中n为偏移的位数。
5.根据权利要求4所述的AES密钥扩展的方法,其特征在于,偏移的位数为随机产生。
6.根据权利要求1所述的AES密钥扩展的方法,其特征在于,所述运算为异或运算。
CN201210557912.XA 2012-12-20 2012-12-20 Aes密钥扩展的方法 Expired - Fee Related CN103051443B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210557912.XA CN103051443B (zh) 2012-12-20 2012-12-20 Aes密钥扩展的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210557912.XA CN103051443B (zh) 2012-12-20 2012-12-20 Aes密钥扩展的方法

Publications (2)

Publication Number Publication Date
CN103051443A true CN103051443A (zh) 2013-04-17
CN103051443B CN103051443B (zh) 2015-05-13

Family

ID=48063952

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210557912.XA Expired - Fee Related CN103051443B (zh) 2012-12-20 2012-12-20 Aes密钥扩展的方法

Country Status (1)

Country Link
CN (1) CN103051443B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105959648A (zh) * 2016-06-23 2016-09-21 浙江宇视科技有限公司 一种加密方法、装置及视频监控系统
CN111400730A (zh) * 2020-03-11 2020-07-10 西南石油大学 一种基于弱关联性的aes密钥扩展方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2096786A2 (en) * 2008-02-29 2009-09-02 Intel Corporation Combining instructions including an instruction that performs a sequence of transformations to isolate one transformation
CN101588233A (zh) * 2008-05-19 2009-11-25 北京大学深圳研究生院 无线传感器网络节点应用中aes协处理器系统与架构
EP2200215A1 (en) * 2008-12-16 2010-06-23 Itt Manufacturing Enterprises, Inc. Method and apparatus for key expansion to encode data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2096786A2 (en) * 2008-02-29 2009-09-02 Intel Corporation Combining instructions including an instruction that performs a sequence of transformations to isolate one transformation
CN101588233A (zh) * 2008-05-19 2009-11-25 北京大学深圳研究生院 无线传感器网络节点应用中aes协处理器系统与架构
EP2200215A1 (en) * 2008-12-16 2010-06-23 Itt Manufacturing Enterprises, Inc. Method and apparatus for key expansion to encode data

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105959648A (zh) * 2016-06-23 2016-09-21 浙江宇视科技有限公司 一种加密方法、装置及视频监控系统
CN105959648B (zh) * 2016-06-23 2019-04-09 浙江宇视科技有限公司 一种加密方法、装置及视频监控系统
CN111400730A (zh) * 2020-03-11 2020-07-10 西南石油大学 一种基于弱关联性的aes密钥扩展方法
CN111400730B (zh) * 2020-03-11 2022-03-08 西南石油大学 一种基于弱关联性的aes密钥扩展方法

Also Published As

Publication number Publication date
CN103051443B (zh) 2015-05-13

Similar Documents

Publication Publication Date Title
CN105490802B (zh) 基于gpu的改进sm4并行加解密通信方法
US11546135B2 (en) Key sequence generation for cryptographic operations
CN104333446B (zh) 一种新型超轻量级qtl分组密码实现方法
CN104065474B (zh) 一种轻量级Surge分组密码实现方法
CN109981249B (zh) 基于拉链式动态散列和nlfsr的加密解密方法及装置
CN107947916B (zh) 一种基于des算法的一体式加解密模块
CN104852798A (zh) 一种数据加解密系统及方法
CN103812658B (zh) 一种基于流密码的安全通信协议
CN103051443B (zh) Aes密钥扩展的方法
Patel et al. Hybrid security algorithms for data transmission using AES-DES
CN108650072A (zh) 一种支持多种对称密码算法芯片及其抗攻击电路实现方法
CN1777089B (zh) 一种复数移相加密解密方法
CN104579693A (zh) 基于高次二阶logistic映射的嵌入式加密方法及装置
Gupta Implementation of optimized des encryption algorithm upto 4 round on spartan 3
CN105162580A (zh) 基于ofb模式和分组密码vh的轻量级流密码技术vho
CN112737767B (zh) 抗差分功耗分析与时间攻击的消息认证码生成方法及系统
Shinde et al. A review of various encryption techniques
JP2002510058A (ja) 2進データ・ブロックの暗号変換のための方法
Jun et al. A design and implementation of high-speed 3DES algorithm system
CN106850192A (zh) 一种优化移动设备数据库加密效率的方法
Kun et al. An improved AES algorithm based on chaos
Wang et al. Improved DES algorithm based on irrational numbers
Aatheeswaran et al. FPGA can be implemented by using Advanced Encryption Standard Algorithm
Sangwan et al. VLSI Implementation of Advanced Encryption Standard
Lanjewar et al. Implementation of AES-256 Bit: A Review

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150513

Termination date: 20211220

CF01 Termination of patent right due to non-payment of annual fee