买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:北京宏思电子技术有限责任公司
摘要:本发明公开一种在嵌入式系统中实现加速数论变化的方法及装置,该方法包括:获取原始数组,计算以2为底、原始数组中的数据的个数值的对数得到对数值,根据第一计数器的值和第二计数器的值从旋转因子列表中获取旋转因子;将原始数组等分成第一数组和第二数组,分别将第一数组和第二数组中的每个数据缓存至第五结果寄存器中和第六结果寄存器中;通过模乘器和预设模数对旋转因子和第六结果寄存器中的数据进行运算得到第一中间值;分别对第一中间值和第五结果寄存器中的数据进行模加和模减运算并将结果顺序存储到临时存储区。通过本方案来加速多项式乘法运算,从而提高生成密钥对、签名、验签等操作的工作效率,加快操作流程。
主权项:1.一种在嵌入式系统中实现加速数论变化的方法,其特征在于,包括:步骤S1:CPU获取原始数组并缓存至第一结果寄存器中,获取所述原始数组中的数据的个数值并缓存至第二结果寄存器中,计算以2为底、所述第二结果寄存器中的个数值的对数得到对数值并缓存至第三结果寄存器中,判断所述第三结果寄存器中的对数值是否为整数,是则执行步骤S2,否则报错;步骤S2:所述CPU启动第一计数器和第二计数器并开始计时,根据所述第一计数器的值和所述第二计数器的值从旋转因子列表中获取对应的旋转因子并缓存至第四结果寄存器中;步骤S3:所述CPU将所述第一结果寄存器中的原始数组等分成第一数组和第二数组,分别将所述第一数组和所述第二数组中的第一个数据作为当前数据并缓存至第五结果寄存器中和第六结果寄存器中;步骤S4:所述CPU判断所述第六结果寄存器中的数据的位长与预设模数的位长的差值、所述第四结果寄存器中的数据的位长与所述预设模数的位长的差值,如差值均等于1则执行步骤S5,如至少一个差值大于1则报错,否则在所述第六结果寄存器中的数据的高位补0使其位长比所述预设模数的位长大1和或在所述第四结果寄存器中的数据的高位补0使其位长比所述预设模数的位长大1,执行步骤S5;步骤S5:所述CPU通过模乘器和所述预设模数对所述第四结果寄存器中的数据和所述第六结果寄存器中的数据进行运算得到第一中间值并缓存至第七结果寄存器中;步骤S6:所述CPU判断所述第五结果寄存器中的数据的位长与所述预设模数的位长的差值,如差值等于1则执行步骤S7,如差值小于1则在所述第五结果寄存器中的数据的高位补0使其位长比所述预设模数的位长大1,执行步骤S7,如差值大于1则报错;步骤S7:所述CPU分别对所述第七结果寄存器中的第一中间值和所述第五结果寄存器中的数据进行模加和模减运算得到第一结果和第二结果并顺序存储到临时存储区中;步骤S8:所述CPU判断所述第五结果寄存器中和所述第六结果寄存器中的数据是否均处理完成,是则执行步骤S10,否则执行步骤S9;步骤S9:所述CPU更新所述第二计数器的值,根据所述第一计数器的值和所述第二计数器的值从所述旋转因子列表中获取对应的旋转因子,用所述旋转因子更新所述第四结果寄存器中的数据,分别将所述第一数组和所述第二数组中的下一个数据作为当前数据并用其更新所述第五结果寄存器中的数据和所述第六结果寄存器中的数据,返回步骤S4;步骤S10:所述CPU判断所述第一计数器的值是否与所述第三结果寄存器中的对数值一致,是则将所述临时存储区中的数据作为输出结果数组,否则分别更新所述第一计数器的值和所述第二计数器的值,用所述临时存储区中的数据更新第一结果寄存器中的数据,根据所述第一计数器的值和所述第二计数器的值从所述旋转因子列表中获取对应的旋转因子,用获取的所述旋转因子更新所述第四结果寄存器中的数据,返回步骤S3。
全文数据:
权利要求:
百度查询: 北京宏思电子技术有限责任公司 在嵌入式系统中实现加速数论变化的方法及装置
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。