Document
拖动滑块完成拼图
首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种适用于后量子密码算法Dilithium的模乘运算电路 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:华中科技大学

摘要:本发明公开了一种适用于后量子密码算法Dilithium的模乘运算电路,包括:用于对输入的一对初始数据进行拆分相乘相加,获得三个中间数据的分项相乘单元,用于对所述三个中间数据进行拆分左移并相加减,获得初步加工数据的分项相加单元,用于对所述初步加工数据拆分左移并相加减,获得二次加工数据;所述二次加工数据与第一预设常数相减,并与二次加工数据比较判断,获得最终输出数据的模归约单元。本发明所述的适用于后量子密码算法Dilithium的模乘运算电路通过将一个高位数据一分为二,能够有效减小乘法运算次数,实现对23×23位乘法运算的高效运算,减少逻辑延迟时间,并且具有更小的面积。

主权项:1.一种适用于后量子密码算法Dilithium的模乘运算电路,其特征在于,包括:分项相乘单元、分项相加单元和模归约单元;所述分项相乘单元用于对输入的一对初始数据进行多项拆分相乘相加,得到三个中间数据;所述分项相加单元用于对所述三个中间数据进行多项拆分左移并相加减,得到初步加工数据;所述模归约单元用于对所述初步加工数据拆分左移并相加减,获得二次加工数据;所述二次加工数据与第一预设常数相减,并与二次加工数据比较判断,获得最终输出数据;其中,所述分项相乘单元中的多项拆分相乘相加过程为:c0=a[11:0]*b[11:0]1c2=a[22:12]*b[22:12]2c1=a[22:12]+a[11:0]*b[22:12]+b[11:0]-c2-c03其中,所述a、b为一对23bits大小初始数据;所述a[11:0]为初始数据a中的第1位至12位数据,所述a[22:12]为初始数据a中的第13位至23位数据,初始数据b同理;所述c0、c1、c2为三个中间数据;所述分项相加单元中的多项拆分左移并相加减过程为:Z=223c2[21:9]+214c2[8:0]+223c1[23:11]+212c1[10:0]+c0[23:0]-2c2[21:0]4其中,所述Z为初步加工数据;所述ci[x:y]为ci数据中的第y+1位至x+1位数据,i=0、1、2;2hci为ci数据左移h位后的数据,即ci数据与2h相乘;所述模归约单元中的拆分左移并相加减过程为:d=213Z[27:23]-Z[27:23]+Z[22:0]5其中,所述Z为初步加工数据;所述d为二次加工数据;所述Z[x:y]为初步加工数据Z中的第y+1位至x+1位数据;所述2hZ为初步加工数据Z左移h位后的数据;所述模归约单元中所述的二次加工数据与第一预设常数相减,并与二次加工数据比较判断,具体过程为:c≡dQ?d-Q:dmodQ6其中,所述Q为第一预设常数,Q值为数字8380417;所述c为最终输出数据;所述最终输出数据与a[22:0]*b[22:0]结果相等价,所述最终输出数据为:a×bmodQ。

全文数据:

权利要求:

百度查询: 华中科技大学 一种适用于后量子密码算法Dilithium的模乘运算电路

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。