[发明专利]一种基于GPU的多变量密码算法并行化加速方法有效
| 申请号: | 201810228547.5 | 申请日: | 2018-03-20 |
| 公开(公告)号: | CN108510429B | 公开(公告)日: | 2021-11-02 |
| 发明(设计)人: | 龚征;廖国鸿;黎伟杰;马昌社;刘志杰;罗裴然;黄家敏 | 申请(专利权)人: | 华南师范大学 |
| 主分类号: | G06T1/20 | 分类号: | G06T1/20;G06F9/38 |
| 代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 李斌 |
| 地址: | 510631 广东省广州市天*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 gpu 多变 密码 算法 并行 加速 方法 | ||
1.一种基于GPU的多变量密码算法并行化加速方法,其特征在于,包括下述步骤:
S1、对多变量等式的所有项进行同阶化操作;
S2、生成有限域上的生成元表及对数表,通过这两个表进行查表操作实现有限域的乘法来提高GPU线程计算过程中的一致性,所述的生成元表用table表示,是指q阶有限域F上的生成元g生成的前q-1个自然数0,1,2,…,q-2的幂次方与0构成的表即table[i]=gi且令table[q-1]=1,table[q]=g;所述对数表用arc_table表示,是指对于有限域上的任意元素a,有arc_table[a]=i,其中table[i]=a,且令arc_table[0]的值为一个大负数,使得0*a=table[arc_table[0]+arc_table[a]]中arc_table[0]+arc_table[a]恒为负数,而table[负数]的值为0;
S3、将项表、系数表、生成元表及对数表映射到GPU的纹理内存,所述项表是指多变量方程中分别构成每一项的变量的下标,当某一项为a1x1x3x4,其中x1x3x4为变量,则项表在相应位置存1,3,4;所述系数表是指多变量方程中每一项的系数,与项表一一对应;
S4、对每一块数据调用多变量主内核函数进行计算并执行Reduce求和操作,所述多变量主内核函数的参数包括待处理数据的地址、当前多项式变量的值的地址及中间临时数据存放的地址;所述多变量主内核函数的内容包括在GPU里的每个基本调度单位里获取每一个变量的值,计算每一项运算完的值,然后进行Reduce求和操作,获取每个多项式的结果并保存到当前多项式的变量数组中
S5、编写主函数来调度多变量主内核函数,主函数包括设置分块大小、申请GPU内存空间以及纹理内存绑定,不断的将分块数据传递给主内核函数,最终将计算结果拷贝回主机端内存,释放资源;
S6、执行程序,输出加解密结果,释放资源。
2.根据权利要求1所述基于GPU的多变量密码算法并行化加速方法,其特征在于,步骤S1中,同阶化操作具体为:
通过引入值为1的多余变量与低阶的项进行相乘来使其等于多项式的阶,从而在一次性内核函数调用中用相同的操作计算每一个多项式的项及求和,避免因为分支结构导致GPU的性能下降;
同时,引入值为0的多余项,使得每个方程的项数数量是Block的倍数;所述Block是CUDA上的定义,在OpenCl上则为work-gruop。
3.根据权利要求1所述基于GPU的多变量密码算法并行化加速方法,其特征在于,步骤S2中,生成有限域上的乘法表的步骤如下:
对于mod n域中,若g为生成元,则n与g的最大公约数为1,则可通过扩展欧几里得算法求出生成元g的值,从而枚举g0,g1,…,g(p-2)来获得乘法表及逆表。
4.根据权利要求1所述基于GPU的多变量密码算法并行化加速方法,其特征在于,步骤S3中,还包括下述内容:
在CPU端先对数据进行预处理,即用冗余项0*xtxtxt填充项表和系数表,使得每个方程的项数刚好是GPU的block数*每个block拥有的线程数,便于在步骤S4中的Reduce求和操作,其中假设多变量系统中含有变量x0,x1,…,xt-1,并添加值为1的额外的自定义变量xt;然后将这几个数组用异步操作拷贝到GPU端内存,再与纹理内存绑定。
5.根据权利要求1所述基于GPU的多变量密码算法并行化加速方法,其特征在于,步骤S4中,其中,所述待处理数据地址、当前多项式每一个变量的值存放的地址均为无符号字符向量指针(uint8_t*);
所述中间临时数据存放的地址为无符号32位整型指针(uint32_t*)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南师范大学,未经华南师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810228547.5/1.html,转载请声明来源钻瓜专利网。





