[发明专利]一种选择门优化的AES加解密方法及装置有效
申请号: | 201210236938.4 | 申请日: | 2012-07-10 |
公开(公告)号: | CN102780557A | 公开(公告)日: | 2012-11-14 |
发明(设计)人: | 莫海锋;朱丽娟 | 申请(专利权)人: | 记忆科技(深圳)有限公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 刘健;黄韧敏 |
地址: | 518000 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 选择 优化 aes 解密 方法 装置 | ||
技术领域
本发明涉及数据通信安全技术领域,尤其涉及一种选择门优化的AES加解密方法及装置。
背景技术
AES(Advanced Encryption Standard,高级加密标准)是当前存储领域的主要加密算法。AES加密和解密由多个相同的轮运算组成,每个轮运算包含S盒运算、移位运算、列混合运算和加密钥的运算。加密和解密的S盒运算、移位运算、列混合运算都不相同。现有的AES方案使用独立的结构实现加密和解密运算,或者使用独立的结构实现S盒和逆的S盒的运算。
图1是现有加密运算的结构图,SBX(Sbox)表示加密运算的S盒运算,MC(Mix Columns)表示加密运算的列混合运算,ARK(add round key)表示轮密钥加运算,Register(寄存器)缓存每轮运算的中间数据,选择器用于选择装载输入数据或轮运算的输出数据,round-key表示加密轮密钥,initial-data表示输入数据,data-out表示加密结果,initial-round表示轮运算的轮数。每组数据的加密有Nr轮运算,第一轮运算开始时装载输入数据,第一轮运算的输出作为第二轮运算的输入,依次类推,直到完成Nr轮运算,输出解密结果。图2是加密S盒运算的结构图,INV表示有限域中计算逆元的逻辑运算,MT表示SBX运算中逆元运算后把逆元和一个固定的矩阵相乘的运算。
图3是现有解密运算的结构图,ISBX(Inv Sbox)表示解密运算的S盒运算,也是加密S盒运算的逆,IMC(Inv Mix Columns)表示解密运算的列混合运算,ARK(add round key)表示轮密钥加运算,Register(寄存器)缓存每轮运算的中间数据,选择器用于选择装载输入数据或轮运算的输出数据,round-key表示加密轮密钥,initial-data表示输入数据,data-out表示加密结果,initial-round表示当前轮运算的轮数。每组数据的解密有Nr轮运算,第一轮运算开始时装载输入数据,第一轮运算的输出作为第二轮运算的输入,依次类推,直到完成Nr轮运算,输出及诶结果。图4是解密运算S盒的运算过程,MTI表示ISBX运算中计算逆元之前输入数据和一个固定矩阵相乘的运算,INV表示有限域中计算逆元的逻辑运算。
现有的AES算法采用独立结构分别实现加密和解密运算,而S盒运算逻辑的面积很大,独立结构分别实现加密和解密运算会增加芯片的面积和功耗。
综上可知,现有技术在实际使用上显然存在不便与缺陷,所以有必要加以改进。
发明内容
针对上述的缺陷,本发明的目的在于提供一种选择门优化的AES加解密方法及装置,其能够降低芯片面积及功耗,同时减少关键路径上选择门的使用,缩短了关键路径,提高了AES模块的运行速度。
为了实现上述目的,本发明提供一种选择门优化的AES加解密方法,包括:
控制选择将轮运算结果或者待加/解密数据输出至寄存器;
对所述寄存器中的数据进行Nr轮加/解密轮运算,Nr由密钥长度确定;
通过加/解密控制信号控制选择输出加密轮运算结果或者解密轮运算结果至寄存器。
根据本发明的方法,对所述寄存器中的数据进行加密轮运算或解密轮运算的步骤具体为:
对所述寄存器中的数据进行求逆运算操作,并输出两个相同的求逆运算结果;
对其中一个求逆运算结果依次进行加密仿射变换操作、加密列混合运算操作以及轮密钥加运算操作,并输出操作结果作为所述加密轮运算结果;
对另一个求逆运算结果依次进行轮密钥加运算操作、解密列混合运算操作以及解密仿射变换操作,并输出操作结果作为所述解密轮运算结果;
根据本发明的方法,对所述寄存器中的数据进行加密轮运算或解密轮运算的步骤还包括:
在第Nr轮运算时,将所述求逆运算结果进行轮密钥加运算操作后输出作为解密结果,或者
在第Nr轮运算时,将所述加密仿射变换操作后的数据进行轮密钥加运算操作后输出作为加密结果。
根据本发明的方法,控制选择将轮运算结果或者待加/解密数据输出至寄存器的步骤具体为:
通过轮运算的轮数控制选择将轮运算结果或者待加/解密数据输出至所述寄存器,若为第一轮则选择将待加/解密数据加载至所述寄存器,否则将所述轮运算结果缓存至所述寄存器。
根据本发明的方法,所述方法还包括:将初始密钥进行变换获取所述轮密钥加运算操作在每一轮运算使用的密钥。
本发明相应提供一种选择门优化的AES加解密装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于记忆科技(深圳)有限公司,未经记忆科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210236938.4/2.html,转载请声明来源钻瓜专利网。