[发明专利]一种格密码中多项式压缩的并行实现方法在审
申请号: | 202011246920.3 | 申请日: | 2020-11-10 |
公开(公告)号: | CN112511170A | 公开(公告)日: | 2021-03-16 |
发明(设计)人: | 刘哲;杨昊 | 申请(专利权)人: | 南京航空航天大学 |
主分类号: | H03M7/30 | 分类号: | H03M7/30 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 陆烨 |
地址: | 210016 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 密码 多项式 压缩 并行 实现 方法 | ||
本发明涉及一种格密码中多项式压缩的并行实现方法,属于密码学领域,该方案包括以下步骤:首先通过格密码相关参数设置来预计算k、m等参数;基于设置的参数对待压缩或解压缩的多项式系数进行并行压缩或解压缩。本发明利用处理器提供的并行计算指令集在不修改参数的前提下实现更高效的格密码中多项式压缩的目的。
技术领域
本发明属于密码学领域。
背景技术
随着量子计算的快速发展,可以抵御量子计算攻击的后量子密码逐渐显示出优势。格密码是后量子密码中的一种类型,其中又包括了基于不同困难问题的类型,如基于环上容错学习等。当前以及未来越来越多的通信、数据加密需求使得密码算法的性能愈发重要,处理器架构差异、计算能力差距等都是密码算法实现中需要考虑的关键因素。格密码的性能仍有一定提升空间,原因在于格密码中的部分算子依旧可以针对特定平台进行优化。
基于上述问题,学术界和工业界已针对格密码进行很多相关的实现优化工作,例如在ARM平台、Intel平台、FPGA等对核心算子进行针对性优化。优化实现中的关键技术之一即提升并行度,对于格密码中的多项式乘法、多项式加法等算法使用特定平台的指令集进行处理。然而,在现有的并行优化实现中,均未对多项式压缩进行优化,多项式压缩耗时较长影响密码算法的整体性能,成为性能提升的瓶颈。
发明内容
发明目的:为了解决上述背景技术中存在的问题,本发明提供了一种格密码中多项式压缩的并行实现方法。
技术方案:本发明提供了一种格密码中多项式压缩的并行实现方法,该方法包括压缩计算和解压缩计算;
所述压缩计算具体包括如下步骤:
步骤1:根据格密码的模数q,计算用于进行多项式压缩计算的乘法参数m和移位参数k,所述q为小于等于216的正整数;
步骤2:基于乘法参数m和移位参数k,对格密码中多项式的系数进行并行压缩计算。
进一步的,所述步骤1中基于如下公式计算k和m:
其中d为正整数,《为左移,为向上取整,为向下取整;
且k和m满足如下条件:
表示与,>>为右移,x为单个多项式中的单个系数,为四舍五入。
进一步的,所述步骤2中采用第一处理器进行压缩计算,该处理器中所有寄存器的位数均为l,进行压缩前将的值广播到第一处理器中的第一寄存器中,将m的值广播到第一处理器中的第二寄存器中;将单个多项式的所有系数分成若干组,每组的个数均为l/t,t为8的倍数,t的值根据模数q确定;将任意一组中的l/t个系数对齐输入至第一处理器中的第三寄存器中,处理器调用第一~三寄存器中的数据,从而对该组中的l/t个系数进行并行压缩。
进一步的,所述第一处理器根据如下公式对l/t个系数进行并行压缩计算:
其中,xi为第i个系数,x'i为xi压缩后的值,k1=2w-k-d,k2=k-w+d,其中w为xi<<d的位宽,《表示左移,>>表示右移,d为正整数。
进一步的,在进行解压缩计算时采用第二处理器进行解压缩计算,该处理器中所有寄存器的位数均为l,解压缩计算前将q的值广播到第二处理器中的第一寄存器中,将压缩后任意一组中l/t个系数对齐输入到第二处理器中的第二寄存器中,第二处理器调用第一,二寄存器中的数据,对该组的l/t个系数进行并行解压缩计算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011246920.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种油菜籽加压软化机器
- 下一篇:一种具有自润滑结构的管式螺杆滚轧机