优化多项式乘法:基于格密码的新方法

1 下载量 134 浏览量 更新于2024-08-26 1 收藏 901KB PDF 举报
"这篇研究论文探讨了面向基于格的密码的有效多项式乘法技术,特别是针对Ring-LWE(环学习带有错误)问题。作者提出了优化数论变换(NTT)来构建高效的多项式乘法器的方法,以提高基于Ring-LWE的密码系统的性能。他们介绍的优化包括改进NTT和逆NTT的位反向操作,减少时钟周期消耗,以及优化常数因子以节省ROM存储。此外,他们还提出了一种新的内存访问方案,以最大化蝶形运算符的利用。这些技术在Spartan-6 FPGA平台上实现了高速的多项式乘法运算。" 在基于格的密码学中,Ring-LWE是一种核心问题,它为安全的公钥加密、身份验证和密钥交换提供了理论基础。然而,Ring-LWE算法的计算密集型操作,尤其是环上的多项式乘法,是其效率的关键瓶颈。论文中提出的多项式乘法优化技术旨在解决这一挑战。 首先,优化的NTT和逆NTT技术对于减少计算时间至关重要。NTT是一种快速傅里叶变换的变体,常用于多项式乘法中以降低时间复杂度。通过改进位反向操作,可以更有效地进行NTT和逆NTT转换,从而降低所需时钟周期,从原来的(8n + 1.5n lg n)降低至(2n + 1.5n lg n),显著提升了运算速度。 其次,论文关注了常数因子的优化。在硬件实现中,常数因子存储在只读存储器(ROM)中,数量的减少意味着更少的存储需求。作者通过精心设计,将常数因子从4n减少到2.5n,减少了大约37.5%的ROM占用,这对于资源有限的设备,如FPGA,尤其重要。 最后,为了进一步提升性能,论文提出了一种创新的内存访问策略。这涉及到如何有效地调度内存操作以最大化蝶形运算符的利用率,蝶形运算符是快速傅里叶变换中的基本构建块。这种优化可能涉及并行化、数据预取或内存层次结构的智能管理,以减少访问延迟并提高计算吞吐量。 在实际应用中,这些优化技术在Spartan-6 FPGA上进行了验证,表明对于尺寸为256/512的环,系统每秒能执行57304/26913次多项式乘法,这展示了优化方法的高效性和实用性。 这篇研究论文通过优化NTT、减少常数因子和改进内存访问策略,为基于Ring-LWE的密码系统提供了一种更高效、资源友好的多项式乘法实现,对提升整体系统性能具有重要意义。这些成果对于未来基于格的密码系统的设计和实现具有重要的参考价值。