取余计算方法及装置、密码处理方法和相关设备与流程
- 国知局
- 2024-08-02 14:02:53
本发明实施例涉及计算机处理,具体涉及一种取余计算方法及装置、密码处理方法和相关设备。
背景技术:
1、为提高数据安全性,通常可以对数据进行加密计算处理。典型的加密计算处理流程中,包括数据的模加、模减、模乘和模平方等。其中,模乘可以分解为多精度整数的乘法和取余运算。所谓的取余运算,用于计算被除数除以除数后得到的余数。
2、在当前通用计算机上,取余数操作比较耗时。因此,如何提高取余数运算的计算效率,是本领域亟待解决的一个技术问题。
技术实现思路
1、有鉴于此,本发明实施例提供一种取余计算方法及装置、密码处理方法和相关设备,以提高取余运算的计算效率。
2、为实现上述目的,本发明实施例提供如下技术方案:
3、第一方面,本发明实施例提供一种取余计算方法,应用于计算设备计算待计算数据与素数的余数,包括:
4、获取待计算数据,所述待计算数据为位数大于或等于128的整数;
5、将所述待计算数据转化为预设表达形式,所述预设表达形式中的预设系数基于所述待计算数据进行预设位数分割后得到,所述预设位数为所述计算设备的位宽;
6、基于所述预设表达形式中的预设系数,执行适应于所述预设位数的取余运算,得到所述待计算数据与素数的余数。
7、可选的,所述基于所述预设表达形式中的预设系数,执行适应于所述预设位数的取余运算,得到所述待计算数据与素数的余数,包括:
8、基于所述预设系数的转换,计算所述取余运算的初始表达式的第一系数;所述初始表达式基于所述取余运算过程中素数代入表达式的初次代入得到;
9、基于所述第一系数,计算得到符合所述计算设备位宽表达的第二系数;
10、基于所述第二系数,计算得到所述取余运算的目标表达式的第三系数;所述目标表达式基于所述取余运算过程中素数代入表达式的再次代入得到;
11、基于所述目标表达式和所述第三系数,确定所述取余运算的结果。
12、可选的,若所述第三系数对应的目标表达式的值的最高位数级大于或等于所述素数代入表达式的最高位数级,所述基于所述目标表达式和所述第三系数,确定所述取余运算的结果,包括:
13、基于所述第三系数,计算所述取余运算的约减表达式的第四系数;所述约减表达式基于所述取余运算过程中素数代入表达式的第三次代入后约减得到;
14、基于所述第四系数对应的约减表达式的值,确定所述取余运算的结果。
15、可选的,所述基于所述第四系数对应的约减表达式的值,确定所述取余运算的结果,包括:
16、确定所述第四系数对应的约减表达式的值是否小于所述素数;
17、若是,以所述第四系数对应的约减表达式的值作为所述取余运算的结果;
18、若否,执行所述第四系数对应的约减表达式的值与所述素数的减法运算,并以所得到的差值作为所述取余运算的结果。
19、可选的,若所述第三系数对应的目标表达式的值的最高位数级小于所述素数代入表达式的最高位数级,所述基于所述目标表达式和所述第三系数,确定所述取余运算的结果,包括:
20、确定所述第三系数对应的目标表达式的值是否小于所述素数;
21、若是,以所述第三系数对应的目标表达式的值作为所述取余运算的结果;
22、若否,执行所述第三系数对应的目标表达式的值与所述素数的减法,并以所得到的差值作为所述取余运算的结果。
23、可选的,所述计算设备的位宽为64,所述预设位数为64,所述待计算数据为512位,所述预设表达形式为:;
24、z=z7·2448+z6·2384+z5·2320+z4·2256+z3·2192+z2·2128+z1·264+z0;
25、其中,zi为预设系数,i为整数。
26、可选的,所述基于所述预设系数的转换,得到所述取余运算的初始表达式的第一系数的步骤中,所述初始表达式为:
27、z mod p=d7·2224+d6·2192+d5·2160+d4·2128+d3·296+d2·264+d1·232+d0;
28、其中,di的合集为第一系数,i为整数,所述预设系数至所述第一系数的转换具体为:
29、d7=z4+z5+2·z6+2·z7,d6=z7,d5=z5+z7,d4=z6+2·z7,d3=z4+z6+z7,d2=-(z4+z7),d1=z5+z6+2·z7,d0=z4+z5+z6+2·z7;
30、所述素数代入表达式为:
31、2256=2224+296-264+1mod p。
32、可选的,所述转换所述初始表达式中的第一系数为符合所述计算设备位宽表达的第二系数的步骤中,令所述第二系数对应的表达式为中间表达式,所述中间表达式为:
33、z mod p=f4·2256+f3·2192+f2·2128+f1·264+f0;
34、其中,fi的合集为第二系数,i为整数,所述第一系数至所述第二系数的转换具体为:
35、f0=e0+e1<<32,
36、f1=e1>>32+e2+e3<<32,
37、f2=e3>>32+e4+e5<<32,
38、f3=e5>>32+e6+e7<<32,
39、f4=e7>>32+e8<<32;
40、其中:
41、e0=d0&0xffffffffffffffff,
42、ei=di&0xffffffffffffffff+di-1>>64,i=1,2,…,7;
43、e8=d7>>64。
44、可选的,所述基于所述第二系数的转换,得到所述取余运算的目标表达式的第三系数的步骤中,所述目标表达式为:
45、z mod p=g4·2256+g3·2192+g2·2128+g1·264+g0;
46、其中,gi的合集为第三系数,i为整数,所述第二系数至所述三系数的转换具体为:
47、g0=t0&0xffffffffffffffff,其中,t0=f0+f4;
48、g1=t1&0xffffffffffffffff,
49、其中,t1=t0>>64+f1-f4+(f4&0xffffffff)<<32;
50、g2=t2&0xfffffffffffffffff,其中,t2=t1>>64+f2+f4>>32;
51、g3=t3&0xffffffffffffffff,
52、其中,t3=t2>>64+f3+(f4&0xffffffff)<<32;
53、g4=t3>>64+f4>>32。
54、可选的,所述基于所述第三系数,计算所述取余运算的约减表达式的第四系数的步骤中,所述约减表达式为:
55、z mod p=h3·2192+h2·2128+h1·264+h0;
56、其中,hi的合集为第四系数,i为整数,所述第三系数至所述四系数的转换具体为:
57、h0=k0&0xffffffffffffffff,其中,k0=g0+g4;
58、h1=k1&0xffffffffffffffff,
59、其中,k1=k0>>64+g1-g4+(g4&0xffffffff)<<32;
60、h2=k2&0xffffffffffffffff,其中,k2=k1>>64+g2+g4>>32;
61、h3=k3&0xffffffffffffffff,
62、其中,k3=k2>>64+g3+(g4&0xffffffff)<<32。
63、第二方面,本发明实施例还提供一种取余计算装置,包括:
64、数据获取模块,用于获取待计算数据,所述待计算数据为位数大于或等于128的整数;
65、数据转换模块,用于将所述待计算数据转化为预设表达形式,所述预设表达形式中的预设系数基于所述待计算数据进行预设位数分割后得到,所述预设位数为所述计算设备的位宽;
66、数据计算模块,用于基于所述预设表达形式中的预设系数,执行适应于所述预设位数的取余运算,得到所述待计算数据与素数的余数。
67、第三方面,本发明实施例还提供一种密码处理方法,采用本发明实施例提供的取余计算方法计算待计算数据与素数的余数。
68、第四方面,本发明实施例还提供一种密码协处理器,包括处理模块和存储模块,所述存储模块存储有程序,所述处理模块用于调用所述存储模块中的程序,以执行本发明实施例提供的取余计算方法。
69、第五方面,本发明实施例还提供一种芯片,包括如本发明实施例提供的密码协处理器。
70、第六方面,本发明实施例还提供一种计算机设备,包括如本发明实施例提供的芯片。
71、本发明实施例提供了一种取余计算方法及装置、密码处理方法和相关设备,所述取余计算方法,包括:获取待计算数据,所述待计算数据为位数大于或等于128的整数;将所述待计算数据转化为预设表达形式,所述预设表达形式中的预设系数基于所述待计算数据进行预设位数分割后得到,所述预设位数为所述计算设备的位宽;基于所述预设表达形式中的预设系数的转换,执行所述待计算数据与所述素数的取余运算。
72、可以看出,本发明实施例通过在计算待计算数据的取余运算时,通过将待计算数据转化为预设表达形式,该预设表达形式中,预设系数基于所述待计算数据进行预设位数分割后得到,所述预设位数等于所述计算设备的位宽,也即是说,本发明实施例中的待计算数据转化为适应计算设备位宽的预设表达形式,进而基于该预设表达形式中的预设系数,进行执行适应于所述预设位数的取余运算,得到所述待计算数据与素数的余数。也就是说,本发明实施例中所述的取余计算方法,能够基于待计算数据的预设表达形式执行适应预设位数(即计算设备的位宽)的取余运算,从而使得取余运算的计算效率得到了很大程度的提高,进而使得对应的密码运算效率也得到了提高。
本文地址:https://www.jishuxx.com/zhuanli/20240801/241516.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表