[发明专利]针对AES对称加密算法的指令优化方法及其处理器无效
申请号: | 201110137511.4 | 申请日: | 2011-05-26 |
公开(公告)号: | CN102221990A | 公开(公告)日: | 2011-10-19 |
发明(设计)人: | 夏辉;贾智平;陈仁海;张志勇;颜冲 | 申请(专利权)人: | 山东大学 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 济南圣达知识产权代理有限公司 37221 | 代理人: | 张勇 |
地址: | 250101 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了针对AES对称加密算法的指令优化方法及其指令处理器,它主要由数据存储器、代码存储器、寄存器堆和流水线四部分组成;其中:所述流水线包括取址单元、译码单元、执行单元和流水线控制器。利用本发明的指令优化方法,在执行效率方面,通过周期级仿真统计出AES_ASIP运行AES加密算法所需要的时钟周期数,相对ARM处理器减少了57.3x%,极大地提高了算法的执行效率;在代码空间方面在ARM处理器上指令代码占用783bytes内存空间,而在AES_ASIP上指令代码仅占用416bytes,节省了46.6x%的代码内存空间。 | ||
搜索关键词: | 针对 aes 对称 加密算法 指令 优化 方法 及其 处理器 | ||
【主权项】:
一种针对AES对称加密算法的指令优化方法,其特征是,在满足新指令操作码长度和原有处理器模型中指令操作码长度相同,新指令的操作码和操作数总和不能超出原指令集的指令位数,新指令的执行部件不能过于复杂,新指令执行过程不能降低系统的运行速度,新扩展的指令条数不能过多,降低由此带来的硬件资源开销的前提下,针对AES对称加密算法进行指令集架构扩展优化,优化方法如下:1)在S盒字节置换过程中,仿射变换过程需要对位进行操作,每次仿射变换都需要把八位二进制数的每一位取出,对取位操作采用指令getbit = , ,该指令的功能是从src寄存器中取出第bitpos位,然后存入dest寄存器的最后一位,以上过程将在一个时钟周期内完成,从而对取位运算进行了加速;2) 仿射变换过程在取出八位二进制数的所有位后,需要对每一位进行五元异或操作,对五元异或操作采用指令xor_5 = , , , , ,该指令的功能是将src1到src5所代表的寄存器中的内容进行异或操作,结果保存在dest所代表的寄存器中,以上过程将在一个时钟周期内完成,从而对异或运算进行了加速;3) 列混淆中使用伽罗瓦域GF内的乘法运算,针对乘法操作采用指令ifand , , , ,该指令的功能是src1和src2相与,如果结果不为0,则xor_src1和xor_src2执行异或,并将结果保存在xor_src1中;如果结果为0,则不执行异或操作,以上过程将在一个时钟周期内完成,从而对域内乘法运算进行了加速;4) 在列混淆中进行矩阵相乘操作时需要多次定位矩阵中数据的位置,对矩阵内数据查找采用指令matrixpos = , , , ,该指令的功能是查找矩阵中指定位置的数据,以上过程将在一个时钟周期内完成,从而对查找指定位置数据运算进行了加速;5) 另外,在列混淆中还用到数据交换操作,实现数据交换采用指令swap ,,该指令的功能是将源操作数src1和src2交换,即将源操作数src1的数值赋给src2同时将src2的数值赋给src1,以上过程将在一个时钟周期内完成,从而对数据交换运算进行了加速;通过上述五条扩展指令的运行,提高AES算法执行效率并且同时降低算法指令代码存储空间。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东大学,未经山东大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201110137511.4/,转载请声明来源钻瓜专利网。
- 上一篇:减速机
- 下一篇:制版滚筒自动平衡机构