13
A Public-key Cryptographic Processor for RSA and ECC Hans Eberle, Nils Gura, Sheueling Chang Shantz, Vipul Gupta, Leonard Rarick Sun Microsystems Laboratories {hans.eberle, nils.gura, sheueling.chang, vipul.gupta, leonard.rarick}@sun.com Shreyas Sundaram University of Waterloo [email protected] Abstract We describe a general-purpose processor architecture for accelerating public-key compu- tati ons on serve r systems that demand high perfo rmanc e and exi bilit y to ac co mmodate large numbers of secure connections with heterogeneous clients that are likely to be limited in the set of cryptogr aphic algorithms suppor ted. Flexibility is achieved in that the processor supports multiple public-key cryptosystems, namely RSA, DSA, DH, and ECC, arbitrary key sizes and, in the case of ECC, arbitrary curves over elds  GF (  p)  and  GF (2 m ). At the core of the processor is a novel dual-eld multiplier based on a modied carry- save adder (CSA) tre e that suppor ts bo th  GF (  p)  and  GF (2 m ). In th e ca se of a 64 -bit  integer multiplier, the necessary modications increase its size by a mere 5%. To eciently schedule the multiplier, we implemented a multiply-accumulate instruction that combines sever al steps of a multiple-p r ecision multi plication in a singl e op er ation : multi plication, carry propagation, and partial product accumulation. We have developed a hardware prototype of the cryptographic processor in FPGA tech- nology. If imple mente d in curr ent 1.5 GHz pro ce ssor te chnol ogy, the pr ocessor exe cutes 5,265 RSA-1024 op/s and 25,756 ECC-163 op/s - the given key sizes oer comparable se- curit y str ength. Looking at futur e security levels, performance is 786 op/s for RSA-20 48 and 9,576 op/s for ECC-233. 1 Introduction In this paper we describe an extension to a general-purpose processor for accelerating public-key cryptosystems. Supported are the legacy cryptosystems RSA and DH as well as the newly emerging Elliptic Curve Crypto graph y (ECC) syst em. As we will show, minimal extensions suce to eciently support these public-key cryptosystems. Due to its comput ational ec iency, ECC is eme rgi ng as an att rac tiv e alternative to traditional public-key cryptosystems such as RSA, DSA, and DH. More specically, ECC oers equivalent security with smaller key sizes, in less computation time and with less memory. As a res ult , ECC oers higher thr oug hput on the server side [9] and smaller implementations on the clien t side. By saving system reso urces ECC is partic ularly wel l suited for small devices such as mobile phones, PDAs and smart cards. ECC technology is ready for deployment as, in addition to its technical merits, standards have been put in place and reference implementations have been made available. Sev eral

RSA ECC Processor

Embed Size (px)

Citation preview

Page 1: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 1/13

Page 2: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 2/13

Page 3: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 3/13

Page 4: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 4/13

Page 5: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 5/13

Page 6: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 6/13

Page 7: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 7/13

Page 8: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 8/13

Page 9: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 9/13

Page 10: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 10/13

Page 11: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 11/13

Page 12: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 12/13

Page 13: RSA ECC Processor

8/11/2019 RSA ECC Processor

http://slidepdf.com/reader/full/rsa-ecc-processor 13/13