通信学报 ›› 2022, Vol. 43 ›› Issue (3): 101-112.doi: 10.11959/j.issn.1000-436x.2022061

• 学术论文 • 上一篇    下一篇

高速Ed25519验签算法硬件架构的设计与实现

薛一鸣1, 刘树荣1, 郭书恒1, 李岩2, 胡彩娥3   

  1. 1 中国农业大学信息与电气工程学院,北京 100083
    2 中国农业大学理学院,北京 100083
    3 国网北京市电力公司,北京 100031
  • 修回日期:2022-03-09 出版日期:2022-03-25 发布日期:2022-03-01
  • 作者简介:薛一鸣(1968- ),男,山西文水人,中国农业大学教授、硕士生导师,主要研究方向为信息安全、大规模集成电路设计
    刘树荣(1997- ),男,彝族,云南楚雄人,中国农业大学硕士生,主要研究方向为信息安全、集成电路设计
    郭书恒(1999- ),男,河南济源人,中国农业大学硕士生,主要研究方向为信息安全
    李岩(1982- ),男,内蒙古呼和浩特人,博士,中国农业大学副教授、硕士生导师,主要研究方向为数论、编码、密码
    胡彩娥(1971- ),女,山西文水人,博士,国网北京市电力公司高级工程师,主要研究方向为大数据分析与安全、电力系统自动化
  • 基金资助:
    国家自然科学基金资助项目(61872368);国家重点研发计划基金资助项目(2021QY2312)

High-speed hardware architecture design and implementation of Ed25519 signature verification algorithm

Yiming XUE1, Shurong LIU1, Shuheng GUO1, Yan LI2, Cai’e HU3   

  1. 1 College of Information and Electrical Engineering, China Agricultural University, Beijing 100083, China
    2 College of Science, China Agricultural University, Beijing 100083, China
    3 State Grid Beijing Electric Power Company, Beijing 100031, China
  • Revised:2022-03-09 Online:2022-03-25 Published:2022-03-01
  • Supported by:
    The National Natural Science Foundation of China(61872368);The National Key Research and Development Program of China(2021QY2312)

摘要:

针对区块链等特定场景对验签速度有较高要求的特点,设计了一种高速Ed25519验签算法的硬件架构。提出了基于交错NAF的多点乘算法,通过预计算和查表的方式,有效减少了点加、倍点的次数;采用Karatsuba乘法和快速约简方法实现模乘运算,并设计了不需要模加、模减的点加、倍点操作步骤,有效提升了点加、倍点运算的性能。针对解压过程中耗时的模幂运算,设计了模逆和模乘并行的模幂计算方法,提高了解压运算的性能。整个设计充分考虑了资源的复用,在Zynq-7020平台上实现需要13 695个Slices,在81.61 MHz的时钟频率下,每秒能够完成8 347次验签运算。

关键词: 爱德华曲线, 数字签名, 多点乘, 硬件实现

Abstract:

Aiming at the high performance requirements of signature verification for specific scenarios such as blockchain, a high-speed hardware architecture of Ed25519 was proposed.To reduce the number of calculations for point addition and point double, a multiple point multiplication algorithm based on interleaving NAF was conducted by using pre-computation and lookup tables.The modular multiplication operation was realized by using the Karatsuba multiplication and fast reduction method, and the point addition and point double operation was designed without modular addition and subtraction, which could effectively improve the performance of point addition and point double.Given that modular exponentiation was the most time-consuming operation in the decompression process, a new modular exponentiation approach was developed by parallelizing modular inverse and modular multiplication, and therefore the performance of the de-compression operation could be improved.The proposed architecture fully considers the use of resources and is implemented on the Zynq-7020 FPGA platform with 13 695 slices, achieving 8 347 verifications per second at 81.6 MHz.

Key words: Edwards-curve, digital signature, multiple point multiplication, hardware implementation

中图分类号: 

No Suggested Reading articles found!