基于格的签名软件性能分析与量子搜索在最短向量问题中的应用
1. 基于格的签名软件相关操作及性能
在基于格的签名软件中,有多种操作需要进行详细分析,包括NTT变换、多项式的加减乘运算、高阶变换等,这些操作的性能直接影响着整个签名系统的效率。
- NTT变换 :NTT(数论变换)是多项式乘法中的关键步骤。在Ivy Bridge处理器上,一次NTT变换总共需要4484个周期,其中约500个周期用于初始系数置换。为了优化内存访问,将不同层级进行合并,如合并0、1、2层,3、4、5层和6、7、8层。在0、1、2层加载8个系数,完成三层的所有变换后存储,再处理下一组8个系数;在更高层级则加载32个系数进行类似操作。
- 多项式的加减运算 :多项式的加法和减法操作相对简单,只需加载系数,进行双精度浮点加法或减法,然后存储结果系数。此过程完全并行,通过256次向量加载、128次向量加减和128次向量存储完成。
- 高阶变换 :高阶变换是将多项式系数表示为双精度浮点数的一个典型应用。该变换仅需将系数乘以预计算值(2(k - 32) + 1)⁻¹((2(k - 32) + 1)⁻¹的双精度近似值),然后四舍五入到最接近的整数。使用vmulpd和vroundpd指令进行这些计算。
2. 软件性能分析与基准测试
为了评估软件的性能,在两台不同的机器上进行了基准测试,一台是配备Intel Core i5 - 3210M CPU(Ivy Bridge)的h9ivy机器,另一台是配备Intel Core i3 - 2310M CPU(Sandy Bridge)的h
超级会员免费看
订阅专栏 解锁全文
1509

被折叠的 条评论
为什么被折叠?



