FPGA based unified architecture for public key and private key cryptosystems
FPGA based unified architecture for public key and private key cryptosystems
Yi WANG1,2(), Renfa LI1
1. Embedded Systems and Networking Laboratory, Hunan Province Key Laboratory of Network and Information Security, Hunan University, Changsha 410082, China; 2. Department of Electrical and Computer Engineering, National University of Singapore, Singapore 117576, Singapore
Recently, security in embedded system arises attentions because of modern electronic devices need cautiously either exchange or communicate with the sensitive data. Although security is classical research topic in worldwide communication, the researchers still face the problems of how to deal with these resource constraint devices and enhance the features of assurance and certification. Therefore, some computations of cryptographic algorithms are built on hardware platforms, such as field program gate arrays (FPGAs). The commonly used cryptographic algorithms for digital signature algorithm (DSA) are rivest-shamir-adleman (RSA) and elliptic curve cryptosystems (ECC) which based on the presumed difficulty of factoring large integers and the algebraic structure of elliptic curves over finite fields. Usually, RSA is computed over GF(p), and ECC is computed over GF(p) or GF(2p). Moreover, embedded applications need advance encryption standard (AES) algorithms to process encryption and decryption procedures. In order to reuse the hardware resources and meet the trade-off between area and performance, we proposed a new triple functional arithmetic unit for computing high radix RSA and ECC operations over GF(p) and GF(2p), which also can be extended to support AES operations. A new high radix signed digital (SD) adder has been proposed to eliminate the carry propagations over GF(p). The proposed unified design took up 28.7% less hardware resources than implementing RSA, ECC, and AES individually, and the experimental results show that our Received June 1, 2012; accepted December 5, 2012 E-mail: estelle.ywang@gmail.com proposed architecture can achieve 141.8MHz using approximately 5.5k CLBs on Virtex-5 FPGA.
Corresponding Author(s):
WANG Yi,Email:estelle.ywang@gmail.com
引用本文:
. FPGA based unified architecture for public key and private key cryptosystems[J]. Frontiers of Computer Science, 2013, 7(3): 307-316.
Yi WANG, Renfa LI. FPGA based unified architecture for public key and private key cryptosystems. Front Comput Sci, 2013, 7(3): 307-316.
Gro?sch?dl J. A bit-serial unified multiplier architecture for finite fields GF (p) and GF (2m). In: Proceedings of the 3rd International Workshop on Cryptographic Hardware and Embedded Systems . 2001, 202-219
2
Satoh A, Takano K. A scalable dual-field elliptic curve cryptographic processor. IEEE Transactions on Computers , 2003, 52(4): 449-460 doi: 10.1109/TC.2003.1190586
3
Batina L, Bruin-muurling G, ?rs S. Flexible hardware design for RSA and elliptic curve cryptosystems. In: Proceedings of 2004 Topics in Cryptology-CT-RSA . 2004
4
Cilardo A, Mazzeo A, Mazzocca N, Romano L. A novel unified architecture for public-key cryptography. In: Proceedings of the 2005 Design, Automation and Test in Europe . 2005, 52-57 doi: 10.1109/DATE.2005.28
5
Niimura M, Fuwa Y. High speed adder algorithm with radix-2k sub signed-digit number. Journal of Formalized Mathematics , 2003
6
Chen J, Shieh M, Lin W. A high-performance unified-field recon- figurable cryptographic processor. IEEE Transactions on Very Large Scale Integration Systems , 2010, 18(8): 1145-1158 doi: 10.1109/TVLSI.2009.2020397
7
Lai J, Huang C. Energy-adaptive dual-field processor for highperformance elliptic curve cryptographic applications. IEEE Transactions on Very Large Scale Integration Systems , 2011, 19(8): 1512-1517 doi: 10.1109/TVLSI.2010.2048134
8
Wang Y, Maskell D, Leiwo J, Srikanthan T. Unified signed-digit number adder for RSA and ECC public-key cryptosystems. In: IEEE Asia Pacific Conference on Circuits and Systems . 2006, 1655-1658
9
Wang Y, Maskell D, Leiwo J. A unified architecture for a public key cryptographic coprocessor. Journal of Systems Architecture , 2008, 54(10): 1004-1016 doi: 10.1016/j.sysarc.2008.04.013
10
Wang Y, Maskell D. A unified signed-digit adder for high-radix modular exponentiation on gf (p) and gf (2p). In: Proceedings of the 2009 12th International Symposium on Integrated Circuits . 2009, 687-690
11
FIPS N. Announcing the advanced encryption standard (AES). Federal Information Processing Standards Publication 197. National Institute of Standards and Technology , 2001
12
Feldhofer M, Wolkerstorfer J, Rijmen V. AES implementation on a grain of sand. Information Security . 2005, 13-20
13
Grabher P, Gro?sch?dl J, Page D. Light-weight instruction set extensions for bit-sliced cryptography. In: Proceedings of the 10th International Workshop on Cryptographic Hardware and Embedded Systems . 2008, 331-345
14
Tillich S, Gro?sch?dl J. VLSI implementation of a functional unit to accelerate ECC and AES on 32-bit processors. In: Proceedings of the 1st International Workshop on Arithmetic of Finite Fields . 2007, 40-54 doi: 10.1007/978-3-540-73074-3_5
15
Natick K I P A. Computer arithmetic algorithms. Prentice Hall , 2002
16
Rivest R, Shamir A, Adleman L. A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM , 1978, 21(2): 120-126 doi: 10.1145/359340.359342
17
Pieprzyk J, Seberry J, Hardjono T. Fundamentals of computer security. Computing Reviews , 2004, 45(10): 621-622
18
Stinson D. Cryptography: theory and practice. Chapman & Hall/CRC , 2005
19
Menezes A, Van Oorschot P, Vanstone S. Handbook of Applied Cryptography. CRC Press , 1996 doi: 10.1201/9781439821916
20
Cohen H, Frey G, Avanzi R, Doche C, Lange T, Nguyen K, Vercauteren F. Handbook of Elliptic and Hyperelliptic Curve Cryptography. Chapman & Hall/CRC , 2005 doi: 10.1201/9781420034981
21
Montgomery P. Modular multiplication without trial division. Mathematics of Computation , 1985, 44(170): 519-521 doi: 10.1090/S0025-5718-1985-0777282-X
22
Orup H. Simplifying quotient determination in high-radix modular multiplication. In: Proceedings of the 12th Symposium on Computer Arithmetic . 1995, 193-199 doi: 10.1109/ARITH.1995.465359
23
Koc C, Acar T. Montgomery multiplication in GF (2k). Designs, Codes and Cryptography , 1998, 14(1): 57-69 doi: 10.1023/A:1008208521515
24
Batina L, Guajardo J, Kerins T, Mentens N, Tuyls P, Verbauwhede I. An elliptic curve processor suitable for rfid-tags. In: Proceedings of the Benelux Workshop Information and System Security . 2006