Abstract
The increasing use of network-connected embedded devices and online transactions creates a growing demand of network security for embedded systems. The security requirements, such as authentication, confidentiality and integrity, always make computationally intensive processes and can easily become the bottleneck of the related applications. In this paper we implement Elliptic Curve Cryptography (ECC) (Miller in Lecture Notes in Computer Science, vol. 218, pp. 417–426, 1985; Koblitz in Math. Comput. 48:203–209, 1987) on an embedded multicore system, and explore the task scheduling methods in different levels. First, we propose an instruction scheduling method that utilizes all the cores to perform one modular operation in parallel. Second, we perform multiple modular operations with multiple cores in parallel. The performance of those two implementations is compared and a scheduling method combining these two types of parallelism is proposed. We discuss the details of our proposed method by using an FPGA implementation of ECC over a prime field.
Similar content being viewed by others
References
Miller V (1985) Uses of elliptic curves in cryptography. In: Williams HC (ed) Advances in cryptology: proceedings of CRYPTO’85. Lecture notes in computer science, vol 218. Springer, Berlin, pp 417–426
Koblitz N (1987) Elliptic curve cryptosystem. Math Comput 48:203–209
SSL 3.0 specification. http://wp.netscape.com/eng/ssl3/
IPSec Working Group. http://www.ietf.org/html.charters/ipsec-charter.html
Hofstee H, Johns C, Maeurer T, Shippy D, Kahle J, Day M (2005) Introduction to the cell multiprocessor. IBM J Res Dev 49(4/5):589–604
http://www.arm.com/products/CPUs/ARM11MPCoreMultiprocessor.html
http://jp.fujitsu.com/microelectronics/products/micom/frv/hard/fr550
Yoshida Y, Kamei T, Hayase K, Shibahara S, Nishii O, Hattori T, Hasegawa A, Takada M, Irie N, Uchiyama K, Odaka T, Takada K, Kimura K, Kasahara H (2007) A 4320MIPS four-processor core SMP/AMP with individually managed clock frequency for low power consumption. In: Solid-state circuits conference, ISSCC 2007. Digest of technical papers. 11–15 February 2007. IEEE International, New York, pp 100–590
Rivest RL, Shamir A, Adleman L (1978) A method for obtaining digital signatures and public-key cryptosystems. Commun ACM 21(2):120–126
Koblitz N (1998) Algebraic aspects of cryptography. 1st edn. Springer, Berlin
Blake I, Seroussi G, Smart NP (1999) Elliptic curves in cryptography. London mathematical society lecture note series. Cambridge University Press, Cambridge
Hankerson D, Menezes A, Vanstone S (2004) Guide to elliptic curve cryptography. Springer, Berlin
Montgomery P (1985) Modular multiplication without trial division. Math Comput 44(170):519–521
Koç ÇK, Acar T, Kaliski BS Jr (1996) Analyzing and comparing Montgomery multiplication algorithms. IEEE Micro 16(3):26–33
Eldridge SE, Walter CD (1993) Hardware implementation of Montgomery’s modular multiplication algorithm. IEEE Trans Comput 42:693–699
Tenca AF, Koç ÇK (2003) A scalable architecture for modular multiplication based on Montgomery’s algorithm. IEEE Trans Comput 52(9):1215–1221
Mentens N, Sakiyama K, Preneel B, Verbauwhede I (2007) Efficient pipelining for modular multiplication architectures in prime fields. In: Proceedings of the 2007 Great Lakes symposium on VLSI (GLSVLSI2007), pp 534–539
Preneel B, Sakiyama K, Batina L, Verbauwhede I (2006) Superscalar coprocessor for high-speed curve-based cryptography. Cryptogr Hardw Embed Syst 4249:415–429
Aydos M, Yanik T, Koç ÇK (2001) High-speed implementation of an ECC-based wireless authentication protocol on an ARM microprocessor. IEE Proc Commun 148(5):273–279
Brown M, Hankerson D, López J, Menezes A (2001) Software Implementation of the “NIST” elliptic curves over prime fields. In: Proceedings of the 2001 conference on topics in cryptology: the cryptographer’s track at RSA. Lecture notes in computer science, vol 2020. Springer, Berlin, pp 250–265
Orlando G, Paar C (2001) A scalable GF(p) elliptic curve processor architecture for programmable hardware. In: Proceedings of 3rd international workshop on cryptograpic hardware and embedded systems (CHES). Lecture notes in computer science, vol 2162. Springer, Berlin, pp 356–371
Sakiyama K, Mentens N, Preneel B, Verbauwhede I (2006) A parallel processing hardware architecture for elliptic curve cryptosystems. In Proceedings of IEEE international conference on acoustics, speech, and signal processing (ICASSP 2006), pp 904–907
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Fan, J., Sakiyama, K. & Verbauwhede, I. Elliptic curve cryptography on embedded multicore systems. Des Autom Embed Syst 12, 231–242 (2008). https://doi.org/10.1007/s10617-008-9021-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10617-008-9021-3