APP下载

改进的蒙哥马利模乘算法及FPGA实现

2022-07-13程碧倩刘光柱

电子科技 2022年7期

程碧倩,刘光柱,肖 昊

(合肥工业大学 微电子学院,安徽 合肥 230009)

随着互联网和云计算技术的飞速发展,网络购物、网络支付、云存储等互联网新经济迅速发展,方便了人们的生产生活。但由于互联网存在开放性,因此保障云数据和云交易的安全成为工业界和学术界关注的焦点。目前,利用公钥密码系统(Public Key Cryptosystem,PKC)对数据信息进行加密或签名保护是保障网络信息安全的主要方法之一[1-3]。大整数模乘运算是PKC的核心运算,其计算效率对PKC的性能至关重要。蒙哥马利模乘算法作为一种高效率的模乘算法,能够避免模乘中的除法运算,减少模乘的计算量,是优化大整数模乘计算效率的研究重点[4-5]。

目前,国内外关于蒙哥马利模乘算法的优化已有不少研究成果。按照其研究目的,主要分为两类:一是提高计算时间;二是减少逻辑资源。文献[6~8]采用Karastuba算法或基于该算法的衍生算法对输入数据进行变形,降低计算的复杂度,并进行全展开的256 bit模乘运算,大幅提高了计算速度,缩短了计算时间。但对于大位宽模乘(如1 024 bit、2048 bit等),该方法需消耗大量逻辑资源。文献[9]采用蒙哥马利模乘算法,减少了计算的逻辑资源,但其每次运算仅能处理2 bit乘法,因此需经过多次迭代完成模乘运算。尽管该算法节省了大量的逻辑资源,但其速度仍有待提升[9]。

针对大位宽模乘运算,为了更好地平衡其计算时间和逻辑开销,本文提出了一种多项式展开的交叉蒙哥马利模乘算法,并基于现场可编程门阵列(Field Programmable Gate Array,FPGA)设计实现了1 024 bit多项式展开的交叉蒙哥马利模乘算法。……

登录APP查看全文