Computer Science ›› 2024, Vol. 51 ›› Issue (11A): 231200184-11.doi: 10.11896/jsjkx.231200184

• Computer Software & Architecture • Previous Articles     Next Articles

Compilation Optimization and Implementation of High-order Cryptographic Operators on FPGA

PEI Xue1, WEI Shuai1, SHAO Yangxue2, YU Hong1, GE Chenyang1   

  1. 1 Institute of Information Technology,Information Engineering University,Zhengzhou 450002,China
    2 Songshan Laboratory,Zhengzhou 450046,China
  • Online:2024-11-16 Published:2024-11-13
  • About author:PEI Xue,born in 1992,master,assistant researcher.Her main research interest is software and hardware co-compilation.
  • Supported by:
    National Key Research and Development Program of China(2022YFB4401401) and Program of Songshan Laboratory(included in the managerment of Major Science and Technology Program of Henan Province)(221100211100-01).

Abstract: Aiming at the different compilation requirements of cryptographic algorithms,a method of abstracting cryptographic operators at different granularities is proposed.This method addresses the issue of rapid and efficient deployment of high-order cryptographic operators on FPGAs through compilation optimization and mapping of operators at different granularities.Hotspot operators are abstracted from cryptographic algorithms to construct an operator library.Multi-level compilation optimization is used to optimize and deploy cryptographic algorithms.Data tensorization and register optimization methods are employed to enhance the deployment and computation efficiency of high-order cryptographic operators on the VTA hardware architecture.Experimental results show that the execution efficiency using tensorization and register optimization methods is 32 times higher than the original compilation and deployment methods,and approximately 34 times higher than OpenCL.Additionally,the constructed operator library allows for the rapid development and implementation of cryptographic algorithms.

Key words: Operator abstraction, Compilation optimization, Code generation, Cryptographic algorithm

CLC Number: 

  • TP311
[1]AMIR A,DATTA P,RISK W P,et al.Cognitive computingprogramming paradigm:A corelet language for composing networks of neurosynaptic cores[C]//International Joint Confe-rence on Neural Networks(IJCNN).2013:1-10.
[2]DAVISON A P,BRUDERLE D,EPPLER J,et al.PyNN:ACommon Interface for Neuronal Network Simulators[J/OL].Frontiers in Neuroinformatics,2008:2.http://doi.org/10.3389/neuro.11.011.2008.
[3]CHEN T Q,MOREAU T,JIANG Z H,et al.TVM:An automated end-to-end optimizing compiler for deep learning[C]//13th Symposium on Operating Systems Design and Implementation.2018:578-594.
[4]VASILACHE N,ZINENKO O,THEODORIDIS T,et al.Tensor comprehensions:Framework-agnostic high-performance machine learning abstractions[J].arXiv:1802.04730,2018.
[5]ROTEM N,FIX J,ABDULRASOOLl S,et al.Glow:GraphLowering Compiler Techniques for Neural Networks[J].arXiv:1805.00907,2018.
[6]CYPHERS S,BANSAL A K,BHIWANDIWALLA A,et al.Intel ngraph:An intermediate representation,compiler,and executor for deep learning[J].arXiv:1801.08058,2018.
[7]ALEXANDER M,THIEN N.A MLIR Dialect for QuantumAssembly Languages[C]//2021 IEEE International Conference on Quantum Computing and Engineering(QCE).2021:255-264.
[8]LATTNER C,ADVE V.LLVM:A compilation framework for lifelong program analysis & transformation[C]//Proceedings of the international symposium on Code generation and optimization:feedback-directed and runtime optimization.2004:75-86.
[9]CHEN C,LI K L,OUYANG A,et al.FlinkCL:AN OpenCL-based in memory computing architecture on heterogeneous CPU-GPU clusters for big date[J].IEEE Transactions on Computers,2018,67(12):1765-1779.
[10]ASHOURI A H,KILLIAN W,CAVAZOS J,et al.A Survey on Compiler Autotuning using Machine Learning[J].ACM Computing Surveys,2018,51(5):1-42.
[11]ROESCH J,LYUBOMIRSKY S,KIRISAME M,et al.Relay:AHigh-Level Compiler for Deep Learning[J].arXiv:1904.08368,2019.
[12]ZHENG B W.Hash Algorithm Accelerator Based on FPGA[D].Wuxi:Jiangnan University,2023.
[13]ZHENG S,LIANG Y,WANG S,et al.FlexTensor:An Auto-matic Schedule Exploration and Optimization Framework for Tensor Computation on Heterogeneous System[C]//Procee-dings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems(ASPLOS'20).2020:859-873.
[14]ZHAO J,DI P.Optimizing the Memory Hierarchy by Compositing Automatic Transformations on Computations and Data[C]//53rd Annual IEEE/ACM International Symposium on Microarchitecture(MICRO) 2020.2020:427-441.
[15]LI L D.Parallel Optimization of Data Intensive Computing onSunway TaihuLight[D].Beijing:Tsinghua University,2021.
[16]WANG X Y,YU H B.A review of cryptographic hash algo-rithms[J].Information Security Research,2015,1(1):19-30.
[17]LI Y B,ZHAO R C,HAN L,et al.Parallelizing compliationframework for heterogeneous manycore processors[J].Journal of Software,2019,30(4):98101001.
[18]CONG J,LIU B,NEUENDORFFER S,et al.High-level synthesis for FPGAs:From prototyping to deployment[J].IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,2011,30(4):473-491.
[19]EJJEH A,ADVE V S,RUTENBAR R A.Studying the Potential of Automatic Optimizations in the Intel FPGA SDK for OpenCL[C]//The 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays(FPGA'20).2020.
[20]MOREAU T,CHEN T,JIANG Z,et al.VTA:An Open Hardware-Software Stack for Deep Learning[J].arXiv.1807.04188,2018.
[21]LIN S Y.Optimized Fully-pipelined Architecture of SHA-2 and MD5 on FPGA[D].Xiamen:Xiamen University,2020.
[22]TAO X H,ZHU Y,PANG J M,et al.Parallel Cod-e Generation for Sunway Heterogeneous Architecture[J].Journal of Software,2023,34(4):1570-1593.
[1] LING Shixiang, YANG Zhibin, ZHOU Yong. Integrated Avionics Software Code Automatic Generation Method for ARINC653 Operating System [J]. Computer Science, 2024, 51(7): 10-21.
[2] XU Yiran, ZHOU Yu. Prompt Learning Based Parameter-efficient Code Generation [J]. Computer Science, 2024, 51(6): 61-67.
[3] LIU Zechao, LIANG Tao, SUN Ruochen, HAO Zhiqiang, LI Jun. Research and Implementation of MQTT Security Mechanism Based on Domestic CryptographicAlgorithms [J]. Computer Science, 2024, 51(2): 333-342.
[4] HE Haotian, ZHOU Bei, GUO Shaozhong, ZHANG Zuoyan, HAO Jiangwei, JI Liguang, XU Jinchen. Automatic Mixing Precision Optimization for Matrix Multiplication Calculation [J]. Computer Science, 2024, 51(11A): 240300057-10.
[5] FAN Lilin, QIAO Yihang, LI Junfei, CHAI Xuqing, CUI Rongpei, HAN Bingyu. CP2K Software Porting and Optimization Based on Domestic c86 Processor [J]. Computer Science, 2023, 50(6): 58-65.
[6] ZHU Jian, HU Kai, WANG Jun, LI Jie, YE Yafei, SHI Xiyan. Reliable Smart Contract Automatic Generation Based on Event-B [J]. Computer Science, 2023, 50(10): 343-349.
[7] NING Han-yang, MA Miao, YANG Bo, LIU Shi-chang. Research Progress and Analysis on Intelligent Cryptology [J]. Computer Science, 2022, 49(9): 288-296.
[8] GAO Xiu-wu, HUANG Liang-ming, JIANG Jun. Optimization Method of Streaming Storage Based on GCC Compiler [J]. Computer Science, 2022, 49(11): 76-82.
[9] WANG Bo-yang, PANG Jian-min, XU Jin-long, ZHAO Jie, TAO Xiao-han, ZHU Yu. Matrix Multiplication Vector Code Generation Based on Polyhedron Model [J]. Computer Science, 2022, 49(10): 44-51.
[10] CHEN Tao, SHU Hui, XIONG Xiao-bing. Study of Universal Shellcode Generation Technology [J]. Computer Science, 2021, 48(4): 288-294.
[11] YANG Ping, WANG Sheng-yuan. Analysis of Target Code Generation Mechanism of CompCert Compiler [J]. Computer Science, 2020, 47(9): 17-23.
[12] CHI Hao-yu, CHEN Chang-bo. Prediction of Loop Tiling Size Based on Neural Network [J]. Computer Science, 2020, 47(8): 62-70.
[13] DING Rong, YU Qian-hui. Growth Framework of Autonomous Unmanned Systems Based on AADL [J]. Computer Science, 2020, 47(12): 87-92.
[14] LIU Ya-qiang,LI Xiao-yu. Mobile Secure Payment Scheme Using Identity-based Cryptographic Algorithm+SMS Verification Code [J]. Computer Science, 2020, 47(1): 293-301.
[15] ZOU Yi, LI Lang and JIAO Ge. Differential Fault Analysis of PRINCE Lightweight Cryptographic Algorithm [J]. Computer Science, 2017, 44(Z6): 377-379.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!