The CRNS Framework and its Application to Programmable and Reconfigurable Cryptography

被引:15
作者
Antao, Samuel [1 ,2 ]
Sousa, Leonel [1 ,2 ]
机构
[1] Univ Tecn Lisboa, Inst Super Tecn, Dept Elect & Comp Engn, P-1049001 Lisbon, Portugal
[2] INESC ID, Inst Engn Sistemas & Comp Invest & Desenvolviment, P-1000029 Lisbon, Portugal
关键词
Algorithms; Residue Number System (RNS); modular arithmetic; cryptography; general-purpose graphical processing units (GPGPU); framework; MODULAR MULTIPLICATION; ARCHITECTURE;
D O I
10.1145/2400682.2400692
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
This article proposes the Computing with the Residue Number System (CRNS) framework, which aims at the design automation of accelerators for Modular Arithmetic (MA). The framework provides a comprehensive set of tools ranging from a programming language and respective compiler to back-ends targeting parallel computation platforms such as Graphical Processing Units (GPUs) and reconfigurable hardware. Given an input algorithm described with a high-level programming language, the CRNS can be used to obtain in a few seconds the corresponding optimized Parallel Thread Execution (PTX) program ready to be run on GPUs or the Hardware Description Language (HDL) specification of a fully functional accelerator suitable for reconfigurable hardware and embedded systems. The resulting framework's implementations benefit from the Residue Number System (RNS) arithmetic's parallelization properties in a fully automated way. Designers do not need to be familiar with the mathematical details concerning the employed arithmetic, namely the RNS representation. In order to thoroughly describe and evaluate the proposed framework, experimental results obtained for the supported back-ends (GPU and HDL) are presented targeting the implementation of the modular exponentiation used in the Rivest-Shamir-Adleman (RSA) algorithm and Elliptic Curve (EC) point multiplication. Results suggest competitive latency and throughput with minimum design effort and overcoming all the development issues that arise in the specification and verification of dedicated solutions.
引用
收藏
页数:25
相关论文
共 18 条
  • [1] RNS-Based Elliptic Curve Point Multiplication for Massive Parallel Architectures
    Antao, Samuel
    Bajard, Jean-Claude
    Sousa, Leonel
    [J]. COMPUTER JOURNAL, 2012, 55 (05) : 629 - 647
  • [2] Compact and Flexible Microcoded Elliptic Curve Processor for Reconfigurable Devices
    Antao, Samuel
    Chaves, Ricardo
    Sousa, Leonel
    [J]. PROCEEDINGS OF THE 2009 17TH IEEE SYMPOSIUM ON FIELD PROGRAMMABLE CUSTOM COMPUTING MACHINES, 2009, : 193 - 200
  • [3] Modular multiplication and base extensions in residue number systems
    Bajard, JC
    Didier, LS
    Kornerup, P
    [J]. ARITH-15 2001: 15TH SYMPOSIUM ON COMPUTER ARITHMETIC, PROCEEDINGS, 2001, : 59 - 65
  • [4] FLEX, 2012, FLEX FAST LEX AN
  • [5] GNU - BISON, 2012, BIS GNU PARS GEN
  • [6] GNU - GMP, 2012, GNU MULT PREC ARITHM
  • [7] Guillermin N, 2010, LECT NOTES COMPUT SC, V6225, P48, DOI 10.1007/978-3-642-15031-9_4
  • [8] Kawamura S, 2000, LECT NOTES COMPUT SC, V1807, P523
  • [9] Accuracy-guaranteed bit-width optimization
    Lee, Dong-U.
    Gaffar, Altaf Abdul
    Cheung, Ray C. C.
    Mencer, Oskar
    Luk, Wayne
    Constantinides, George A.
    [J]. IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2006, 25 (10) : 1990 - 2000
  • [10] NVIDIA Tesla: A unified graphics and computing architecture
    Lindholm, Erik
    Nickolls, John
    Oberman, Stuart
    Montrym, John
    [J]. IEEE MICRO, 2008, 28 (02) : 39 - 55