一种在可重构3D-NTT电路上的NCN资源优化方法

文档序号:37557363发布日期:2024-04-09 17:49阅读:16来源:国知局
一种在可重构3D-NTT电路上的NCN资源优化方法

本发明属于网络空间安全领域,具体涉及一种在可重构3d-ntt电路上的ncn资源优化实现方法。


背景技术:

1、在基于rlwe(ring-learning with error)问题的全同态加密方案中,环上的高阶多项式乘法是最耗时耗力的运算步骤之一,常用的优化方法是利用数论变换(numbertheoretic transform, ntt)蝶形电路的方法将电路复杂度从o( n2)降低为o( nlog n),并使用硬件平台设计电路加速ntt的运算。

2、现阶段带有ntt的fhe加速器中,由于直接实现 n点的ntt电路面积极大,ntt实现方法主要分为两种,一种是通过使用较小的ntt蝶形计算单元,将输入数据进行多次迭代从而实现大参数ntt,另一种则是以four step ntt(2d ntt)或拆成更小ntt电路的方式实现,将 n点的ntt电路拆成 n1, n2 ,…n i点的ntt电路减少原ntt电路面积( n=n1× n2× ,…× n i)。

3、为了避免多项式乘法中进行ntt运算时需要0填充的问题,需要对输入数据进行预处理,称作负循环ntt(negacyclic ntt, ncn)或被负包卷积(negative wrappedconvolution, nwc),ntt逆变换(inverse ntt, intt)时则需要对输出进行逆变换,需要进行逆ncn(inverse ncn, incn)运算。然而现有的3d-ntt电路若要实现(i)ncn,常规的方法就是在电路开始或结束的部分分别添加一排模乘器,然而ntt电路本身就需要大量的模乘器以实现高吞吐量的数据计算,且模乘器本身消耗资源较大。优化电路使用模乘器的数量可以有效降低设计电路实现(i)ncn的面积和功耗。


技术实现思路

1、有鉴于此,本发明的目的在于提出了一种在可重构3d-ntt电路上的ncn资源优化方法,用以有效降低实现(i)ncn处理的成本,减少模乘器数量,有效降低设计电路实现(i)ncn的面积和功耗。

2、为达到上述目的,本发明提供如下技术方案:

3、本发明所提供的一种在可重构3d-ntt电路上的ncn资源优化方法,适用于一种可重构3d-ntt电路,该电路涉及3个ntt模块、2个模乘模块、2个转置重排模块和1个旋转因子存储器,其中涉及旋转因子输入的模块包括ntt模块和模乘模块,方法包括:

4、通过可重构3d-ntt电路将n个输入重新排列成一个行列的矩阵,并在每一个周期输入一行长度为的数据;

5、在第一次ct ntt模块进行ntt计算时对每一项系数输入基于预设的ct旋转因子表格额外乘以一个旋转因子,输出第一数据;

6、在第一次模乘模块中,根据输入电路的周期数对每个周期的第一数据模乘一个旋转因子,输出第二数据;其中,表示第个周期进入电路的个数据;

7、将第二数据通过第一次转置重排模块后输出第三数据;

8、将第三数据通过可以根据需求调整点数的第2次gs ntt模块后输出第四数据;

9、将第四数据通过第二次模乘模块后输出第五数据;

10、通过第二次转置重排模块将第五数据转置重排后变为一个长度为的向量作为第六数据;

11、通过第三次gs ntt模块进行ntt计算,对每一项系数输入所对应的第六数据基于预设的gs旋转因子表格额外乘以一个旋转因子,输出最终数据。

12、优选的,3个ntt模块分别为第1次ct ntt模块、第2次gs ntt模块和第3次gs ntt模块,分别支持 n1、 n2、 n3点数的ntt计算,其中:

13、第1次ct ntt和第3次gs ntt支持的点数相同且固定,第2次gs ntt模块根据需求调整点数,且。

14、优选的,模乘模块用于将3次ntt中缺少的旋转因子乘到系数上,包括第一次模乘模块和第二次模乘模块,其中:

15、第1次模乘模块用于将底数为的旋转因子模乘到系数上;

16、第1次模乘模块用于将底数为的旋转因子模乘到系数上。

17、优选的,第二次模乘模块对第个周期进入电路的个数据项乘一个由个首尾拼接组成的向量,其中表示为:

18、

19、本发明至少取得了以下有益效果:

20、1. 实现ntt运算的同时进行ncn的处理,避免在电路输入和输出部分引入额外模乘器,有效降低了实现ncn处理的成本,减少了模乘器数量,有效降低设计电路实现ncn的面积和功耗。

21、本发明的其他优点、目标和特征将在随后的说明书中进行阐述,并且在某种程度上对本领域技术人员而言是显而易见的,或者本领域技术人员可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。



技术特征:

1.一种在可重构3d-ntt电路上的ncn资源优化方法,适用于一种可重构3d-ntt电路,该电路涉及3个ntt模块、2个模乘模块、2个转置重排模块和1个旋转因子存储器,其中涉及旋转因子输入的模块包括ntt模块和模乘模块,其特征在于,方法包括:

2.根据权利要求1所述的一种在可重构3d-ntt电路上的ncn资源优化方法,其特征在于,3个ntt模块分别为第1次ct ntt模块、第2次gs ntt模块和第3次gs ntt模块,分别支持n1、n2、n3点数的ntt计算,其中:

3.根据权利要求1所述的一种在可重构3d-ntt电路上的ncn资源优化方法,其特征在于,模乘模块用于将3次ntt中缺少的旋转因子乘到系数上,包括第一次模乘模块和第二次模乘模块,其中:

4.根据权利要求1所述的一种在可重构3d-ntt电路上的ncn资源优化方法,其特征在于,第二次模乘模块对第个周期进入电路的个数据项乘一个由个首尾拼接组成的向量,其中表示为:


技术总结
本发明公开了一种在可重构3D‑NTT电路上的NCN资源优化方法,适用于一种可重构3D‑NTT电路,方法包括:通过可重构3D‑NTT电路将输入重新排列;将NCN引入的额外旋转因子乘到第1次CT NTT的旋转因子表;将INCN引入的额外旋转因子乘到第3次GS INTT的旋转因子表,令第2次GS NTT模块可以根据需求调整点数,同时通过两个模乘模块将3次NTT中缺少的旋转因子乘到系数上。通过本发明,能够有效降低实现(I)NCN处理的成本,减少模乘器数量,有效降低设计电路实现(I)NCN的面积和功耗。

技术研发人员:关振宇,朱永清,边松,黄亦成,雷蕗畅,王雪岩,贾弘洋,陈弈,张博,董进
受保护的技术使用者:北京航空航天大学
技术研发日:
技术公布日:2024/4/8
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1