电子科技 ›› 2022, Vol. 35 ›› Issue (7): 58-63.doi: 10.16180/j.cnki.issn1007-7820.2022.07.010

• • 上一篇    下一篇

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

程碧倩,刘光柱,肖昊   

  1. 合肥工业大学 微电子学院,安徽 合肥 230009
  • 收稿日期:2021-02-10 出版日期:2022-07-15 发布日期:2022-08-16
  • 作者简介:程碧倩(1996-),女,硕士研究生。研究方向:信息安全。|刘光柱(1982-),男,博士,讲师。研究方向:信息安全。
  • 基金资助:
    国家自然科学基金(61974039)

Improved Montgomery Modular Multiplication Algorithm and FPGA Implementation

CHENG Biqian,LIU Guangzhu,XIAO Hao   

  1. School of Microelectronics,Hefei University of Technology,Hefei 230009,China
  • Received:2021-02-10 Online:2022-07-15 Published:2022-08-16
  • Supported by:
    National Natural Science Foundation of China(61974039)

摘要:

为了保障用户线上信息的安全,常采用公钥密码系统对数据信息进行加密。大整数模乘运算作为公钥密码系统的核心操作,其计算效率对公钥密码系统的性能至关重要。文中基于经典的蒙哥马利模乘算法,提出一种多项式展开的交叉蒙哥马利模乘算法。通过分解大位宽逻辑运算,以多项式展开来交叉执行模乘法和模约简运算,有效提高了大整数模乘运算的计算效率,降低了硬件实现的资源消耗。FPGA实验验证表明,相比于其它方法,文中所提方法分别减少96.5%和69%的面积时间积AT1与AT2,更好地实现了计算时间和硬件开销的平衡,有较高的灵活性和通用性,适合具有大量加密需求的成本敏感型应用。

关键词: 蒙哥马利模乘, 大整数模乘运算, RSA密码算法, 公钥密码算法, 信息安全, 现场可编程门阵列, 硬件加速, 软硬件协同设计

Abstract:

In order to ensure the online information security of users, the public key cryptosystem is used to encrypt the data information. As the core operation of public key cryptosystem, the computation efficiency of large integer modular multiplication is very important to the performance of public key cryptosystem. In this study, a polynomial expanded cross Montgomery modular multiplication algorithm is proposed, which is based on the classical Montgomery modular multiplication algorithm. By decomposing large bit-width logic operations, and performing modular multiplication and modular reduction operations with polynomial expansion, this algorithm can effectively improve the calculation efficiency of large integer modular multiplication operations, and reduce the resource consumption of hardware implementation. FPGA experiment verification shows that compared with other methods, the proposed algorithm can reduce AT1 and AT2 (the products of area and time) by 96.5% and 69% respectively, indicating that the proposed method achieves the balance between computing time and hardware overhead, has high flexibility and universality, and is suitable for cost-sensitive applications with a large number of encryption requirements.

Key words: Montgomery modular multiplication, modular multiplication of large integer, RSA cryptographic algorithm, public key cryptography algorithm, information security, FPGA, hardware acceleration, software-hardware co-design

中图分类号: 

  • TP309.7