[发明专利]一种基于OpenCL的AES并行化实现方法有效

专利信息
申请号: 201410153285.2 申请日: 2014-04-16
公开(公告)号: CN103973431B 公开(公告)日: 2017-04-05
发明(设计)人: 龚征;袁宇恒;何振忠;温雅敏 申请(专利权)人: 华南师范大学
主分类号: H04L9/06 分类号: H04L9/06;G06F9/38
代理公司: 广州市华学知识产权代理有限公司44245 代理人: 黄磊
地址: 510631 广东省*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于OpenCL的AES并行化实现方法,根据这个方案,能使AES在基于OpenCL的AMD GPU上并行运行时获得最佳性能。该方法包括如下步骤S1、确定明/密文及轮密钥分组的数量,准备好明/密文及轮密钥的数据;S2、确定AES的执行模式,为编写内核函数做准备;S3、编写内核函数;S4、编写OpenCL程序主文件,为OpenCL程序的执行做准备;S5、设置程序运行参数,分配内存空间,运行程序;S6、获取加解密结果,释放资源。本发明主要通过对AES并行运行时,数据在内存中的合理分配以及并行粒度的合理选择来提升运行性能,可用于快速加解密或口令破解机。
搜索关键词: 一种 基于 opencl aes 并行 实现 方法
【主权项】:
一种基于OpenCL的AES并行化实现方法,其特征在于,包括下述步骤:S1、确定明/密文及轮密钥分组的数量,准备好明/密文及轮密钥数据的数据;S2、确定AES的执行模式,为编写内核函数做准备,根据AES的设计,将每一轮的不同操作转化为仅用T表和异或来实现,其具体实现方式是:假设a为一轮的输入,长度为128比特,此处看成是4×4字节的矩阵,按照32比特划分为4份,即a0,a1,a2,a3,1份相当于原有矩阵中的1行,如a0,j代表原有矩阵中的第一行第j列的元素,d为一轮的输出,那么,d可以表示为:其中T0,T1,T2,T3为4个T表,kj为第j列要与之异或的子轮密钥;经过上述T表异或处理后,原本需要经过字节替换、行移位、列混合以及轮密钥加四个操作才能获取的一轮的输出,现在就转化为仅依靠查表和异或就能获取到;在完成上述T表异或操作前需要预先准备好T表并将其写在内核文件中;T表的类型可设为4字节的静态无符号整型私有值、4字节的无符号整型常量或静态无符号整型常量类型,需要注意,T表应写在内核函数之外,因为内核函数之内不允许使用静态类型,而且将T表写在内核函数中会导致程序运行时性能的下降;S3、编写内核函数;S4、编写OpenCL程序主文件,为OpenCL程序的执行做准备;S5、设置程序运行参数,分配内存空间,运行程序;S6、获取加解密结果,释放资源。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南师范大学,未经华南师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201410153285.2/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top