应用于格密码算法的多项式乘法处理方法及系统技术方案

技术编号:37666730 阅读:20 留言:0更新日期:2023-05-26 04:25
本发明专利技术实施例提供一种应用于格密码算法的多项式乘法处理方法及系统,属于格密码加密技术领域。所述方法包括:S10)采集基于格密码算法完成编码的数据,并基于所述完成编码的数据获得对应的的输入密钥,并识别所述输入密钥的输入多项式,基于所述输入多项式获得对应的累加多项式;S20)将所述累加多项式拆分为m个累加多项式的子多项式;S30)基于所述累加多项式的子多项式执行循环计算;S40)完成所有循环计算,获得所述累加多项式的计算结果,基于所述计算结果对所述完成编码的数据进行解码,获得对应的解码数据。本发明专利技术方案缩短了多项式乘法的处理时间,并极大减少了硬件资源消耗。并极大减少了硬件资源消耗。并极大减少了硬件资源消耗。

【技术实现步骤摘要】
应用于格密码算法的多项式乘法处理方法及系统


[0001]本专利技术涉及格密码加密
,具体地涉及一种应用于格密码算法的多项式乘法处理方法及一种应用于格密码算法的多项式乘法处理系统。

技术介绍

[0002]传统的密码算法包括分组密码和公钥密码所依赖的安全性是基于一些特定的数学难题,无法在多项式时间内被计算机或者人力所攻破。但自从针对这些数学难题的分解算法面世以来,能够利用这种算法的量子计算机的快速发展使人们对信息安全产生了更大的担忧。在量子计算机发展的未来,诸如Shor算法将是的加密破译变得十分简单,虽然其会带来一定的利好,但对于用户想要加密的数据来说,这些量子计算机算法将变得十分危险。为了保护用户的数据,需要提出一种量子计算机也无法破译的加密算法,格密码便是其中一种。格密码是一类备受关注的抗量子计算攻击的公钥密码体制,其利用数学机构中的格的理念进行编码和解码,简单来说,其将数据编码到一个安全的格点上,只有持有求解的私钥,才能找到这个点。因为其需要基于格点中的向量乘积来求解,所以在格密码算法中,对于对应的公开多项式和私密多项式来说,实现算法的本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种应用于格密码算法的多项式乘法处理方法,其特征在于,所述方法包括:S10)采集基于格密码算法完成编码的数据,并基于所述完成编码的数据获得对应的的输入密钥,并识别所述输入密钥的输入多项式,基于所述输入多项式获得对应的累加多项式;S20)将所述累加多项式拆分为m个累加多项式的子多项式;S30)基于所述累加多项式的子多项式执行循环计算;所述循环计算为逐一对输入多项式的系数进行赋值,并基于赋值后的输入多项式执行累加多项式的子多项式的计算;S40)完成所有循环计算,获得所述累加多项式的计算结果,基于所述计算结果对所述完成编码的数据进行解码,获得对应的解码数据。2.根据权利要求1所述的方法,其特征在于,所述基于所述输入多项式获得累加多项式包括:基于所述输入多项式构建教科书乘法算法,获得对应的累加多项式;所述教科书乘法算法为基于多项式乘多项式法则确定的乘法算法。3.根据权利要求2所述的方法,其特征在于,所述输入多项式包括:格密码算法中的公开多项式和私密多项式;其中,所述公开多项式和所述私密多项式的阶数相同;所述输入密钥包括:输入公钥和输入私钥;所述输入公钥的输入多项式为公开多项式;所述输入私钥的输入多项式为私密多项式。4.根据权利要求3所述的方法,其特征在于,所述公开多项式的每个系数都是不超过2
10
的正整数。5.根据权利要求3所述的方法,其特征在于,所述累加多项式表示为:其中,n为输入多项式的阶数;i为公开多项式的自变量;j为私密多项式的自变量;a
i
为公开多项式的第i个系数;b
j
为私密多项式的第j个系数。6.根据权利要求3所述的方法,其特征在于,所述将所述累加多项式拆分为m个累加多项式的子多项式包括:基于Toeplitz矩阵将所述累加多项式拆分为m个累加多项式的子多项式。7.根据权利要求6所述的方法,其特征在于,所述基于Toeplitz矩阵将所述累加多项式拆分为m个累加多项式的子多项式,包括:将所述累加多项式表示为n阶矩阵与对应n阶向量的表示方式,获得初始矩阵;基于Toeplitz矩阵的对称性质,将所述初始矩阵拆分为对应的m个累加多项式的子多项式;
所述方法还包括:基于获得的m个累加多项式的子多项式,分别进行公开多项式拆分和私密多项式拆分,对应获得m个公开多项式的子多项式和m个私密多项式的子多项式;其中,所述累加多项式的子多项式由对应的m个公开多项式的子多项式和m个私密多项式的子多项式基于符号特性进行加减线性运算式表示。8.根据权利要求7所述的方法,其特征在于,进行公开多项式拆分,包括:将公开多项式的系数等分为m份,每一份公开多项式的系数组成一个公开多项式的子多项式;进行私密多项式拆分,包括:将私密多项式的系数等分为m份,每一份私密多项式的系数组成一个私密多项式的子多项式。9.根据权利要求3所述的方法,其特征在于,在基于所述累加多项式的子多项式执行循环计算之前,所述方法还包括:基于拆分获得的多个累加多项式的子多项式确定循环规则;所述基于所述累加多项式的子多项式执行循环加密/解密计算包括:基于所述累加多项式的子多项式和所述循环规则执行循环加密/解密计算。10.根据权利要求9所述的方法,其特征在于,所述基于拆分获得的多个累加多项式的子多项式确定循环规则,包括:确定输入多项式的阶数为n,累加多项式的子多项式的数量为m,则确定所述循环规则为包括n/m次外循环和n/m次内循环的循环规则;其中,外循环为基于更新公开多项式自变量的循环;内循环为基于更新私密多项式自变量的循环。11.根据权利要求10所述的方法,其特征在于,外循环的循环规则为:确定外循环索引为0~n/m

1;其中,n为输入多项式的阶数;m为累加多项式的子多项式数量;从0开始,每执行一次外循环,对应的外循环索引在上一次外循环的外循环索引基础上加1;基于对应的外循环索引对公开多项式自变量进行赋值,获得赋值后的m个公开多项式的子多项式。12.根据权利要求10所述的方法,其特征在于,内循环的循环规则为:将每一次外循环获得的m个公开多项式的子多项式引入内循环,并基于内循环索引进行私密多项式自变量赋值;其中,确定内循环索引为n/m

【专利技术属性】
技术研发人员:李德建章渊拓崔益军高顺贤刘伟强成嵩王成华冯曦
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1