[发明专利]基于RSA乱序的多变量二次方程加密方法和装置有效
申请号: | 201910447305.X | 申请日: | 2019-05-27 |
公开(公告)号: | CN110299986B | 公开(公告)日: | 2022-12-27 |
发明(设计)人: | 李伟键;黄娴;王磊军;鹿福祥;刘溪 | 申请(专利权)人: | 广东技术师范大学 |
主分类号: | H04L9/00 | 分类号: | H04L9/00;H04L9/30;H04L9/08 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 麦小婵;郝传鑫 |
地址: | 510665 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 rsa 多变 二次方程 加密 方法 装置 | ||
1.一种基于RSA乱序的多变量二次方程加密方法,其特征在于,至少包括如下步骤:
提取包括n个变量r个多变量二次方程的多变量二次方程组,根据在指定范围内生成的RSA随机数以及滑动窗口所在线程,乱序生成多个单项式下标值(i,j,k);其中,1≤i≤j≤n,1≤k≤r;
根据每个所述单项式下标值(i,j,k)的生成顺序,依次计算所述多变量二次方程组的多个单项式其中,为明文,xi和xj为密钥,或,为密钥,xi和xj为明文;
基于所述单项式下标值(i,j,k)的生成顺序,将属于同一所述多变量二次方程的多个单项式依次累加到同一寄存器中,以使1个具有r位的所述寄存器的电子设备产生的具有相同密钥信息的侧信道信息出现在不同时刻;其中,所述多变量二次方程与所述寄存器一一对应;
其中,所述提取包括n个变量r个多变量二次方程的多变量二次方程组,根据在指定范围内生成的RSA随机数以及滑动窗口所在线程,乱序生成多个单项式下标值(i,j,k),具体包括:
步骤S11、根据r、n和n+1展开的素数之积r=∏ri、n=∏ni和n+1=∏mi,获取所有素数ri、ni和mi中的最大两个数标记为素数P和素数Q,并获取与(P-1)×(Q-1)互素的最小整数E后,生成随机滑动窗口子下标lE%(P×Q);
其中,l为滑动窗口内部迭代编号;
步骤S12、根据素数P和素数Q,获取大小为L=P×Q的滑动窗口,基于滑动窗口大小,将多变量二次方程组的各单项式下标分成多个窗口;
将各单项式下标分成rn(n+1)/2L个窗口;
步骤S13、将窗口的窗口编号预设为w=1,窗口的内部迭代编号预设为l=1,随机生成初始值Ls后,随机生成单项式下标初始值i=is,j=js,k=ks,并将j赋值为执行步骤S14;
其中,1≤is≤js≤n,1≤ks≤r;
步骤S14、判断j是否大于n;若是,则执行步骤S15;否则,执行步骤S18;
步骤S15、将i赋值为i+1,判断赋值后的i是否大于n;若是,则执行步骤S16;否则,执行步骤S17;
步骤S16、将i赋值为i%n,判断k是否小于r;若是,将k赋值为k+1,执行步骤S17;否则,将k赋值为1,执行步骤S17;
步骤S17、将j赋值为j-(n-i+1),执行步骤S14;
步骤S18、生成一个单项式下标值,判断l是否大于L;若是,则所述多变量二次方程中单项式下标值生成完毕;否则,在w小于窗口个数时,将w赋值为w+1,将j赋值为j+L后,执行步骤S14;
其中,1≤Ls≤L/2,1≤is≤js≤n,1≤ks≤r。
2.根据权利要求1所述的基于RSA乱序的多变量二次方程加密方法,其特征在于,所述步骤S18还包括,在w小于窗口个数时,将w赋值为w+1,将j赋值为j+L后,执行步骤S14;在w大于等于窗口个数时,执行步骤S19;
步骤S19、将w赋值为1,l赋值为l+1,判断l是否大于L-Ls;若是,则执行步骤S20;否则,将i赋值为is,j赋值为js+(Ls+l-1)E%L-1,k赋值为ks,执行步骤S14;
步骤S20、判断赋值后的l是否等于L-Ls+1;若是,则将i赋值为is,j赋值为js+L-1,k赋值为ks,执行步骤S14;否则,将i赋值为is,j赋值为js+(L-l+1)E%L-1,k赋值为ks,执行步骤S14。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东技术师范大学,未经广东技术师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910447305.X/1.html,转载请声明来源钻瓜专利网。