Abstract - Best IEEE Projects

advertisement
Systematic Design of RSA Processors Based on High-Radix
Montgomery Multipliers
ABSTRACT:
This paper presents a systematic design approach to provide the optimized Rivest–
Shamir–Adleman (RSA) processors based on high-radix Montgomery multipliers satisfying
various user requirements, such as circuit area, operating time, and resistance against sidechannel attacks. In order to involve the tradeoff between the performance and the resistance,
we apply four types of exponentiation algorithms: two variants of the binary method
with/without Chinese Remainder Theorem (CRT). We also introduce three multiplier-based
datapath-architectures using different intermediate data forms: 1) single form, 2) semi carrysave form, and 3) carry-save form, and combined them with a wide variety of arithmetic
components. Their radices are parameterized from 28 to 2128 A total of 242 datapaths for 1024bit RSA processors were obtained for each radix. The potential of the proposed approach is
demonstrated through an experimental synthesis of all possible processors with a 90-nm CMOS
standard cell library. As a result, the smallest design of 861 gates with 118.47 ms/RSA to the
fastest design of 0.67 ms/RSA at 153 862 gates were obtained. In addition, the use of the CRT
technique reduced the RSA operation time of the fastest design to 0.24 ms. Even if we
employed the exponentiation algorithm resistant to typical side-channel attacks, the fastest
design can perform the RSA operation in less than 1.0 ms.
Key-Words: Application-specific integrated circuit (ASIC) implementation, high-radix
Montgomery multiplication, Rivest–Shamir–Adleman (RSA) cryptosystem.
INTRODUCTION:
CRYPTOGRAPHIC modules are now mounted on many embedded systems, such as smart cards
and digital consumer electronics, and are used to ensure the protection of privacy and
confidential information in communication. The encryption/ decryption process usually
requires a large amount of arithmetic operations with very large operands. In particular, Rivest–
Shamir–Adleman (RSA) cryptosystem usually performs modular exponentiation using operands
longer than 1000 bits. Modular exponentiation is performed by repeating modular
multiplication and squaring operations, and thus optimization of modular multiplication is
essential in order to achieve high-performance RSA cryptosystem designs. The Montgomery
multiplication algorithm, which does not require trial division, is widely used for practical
hardware and software implementations because of its high speed capability. Many
computational techniques and hardware architectures have been proposed for Montgomery
multiplication. Among them, the radix-2 algorithms proposed in [3] and [4] are primarily
VEDLABS, #112, Oxford Towers, Old airport Road, Kodihalli, Bangalore-08,
www.vedlabs.com , Email id: projects@vedlabs.com, Ph: 080-42040494.
Page 1
implemented with long -bit adders to scan the –bit operand bit-by-bit in a straightforward
manner.
BLOCK DIAGRAM:
Fig 1: RSA processor architecture
Fig. 1 shows a block diagram of our RSA processor, which consists of six components:
Multiplication Block, Sequencer Block, Memories, Data Counter, Memory Address Generator,
and Key Shift. The exponent E is set into the -bit shift register key shift. The k-bit data X and
modulus N are divided into m blocks, and are sequentially stored into Memory0. Multiplication
Block implemented with one of the three multipliers performs the multiply-addition operations
repeatedly according to the exponent bits. The read and write addresses for the data are
generated by Memory Address Generator. The iteration count and/or the data size are counted
by Data Counter. The secret key bit is fed to the Sequencer Block bit by bit from the MSB side
(or the LSB side) through the Key Shift.
The Sequencer Block performs state transition control and generates the control signals for the
datapath core. Sequencer Block has a three-level hierarchical structure. Level-1 supports lowlevel functions, such as basic modular arithmetic, Montgomery multiplication, as well as pre-
VEDLABS, #112, Oxford Towers, Old airport Road, Kodihalli, Bangalore-08,
www.vedlabs.com , Email id: projects@vedlabs.com, Ph: 080-42040494.
Page 2
processing and post-processing for Montgomery multiplication. Level-2 executes one of the
modular exponentiation. The highest level, Level-3, supports RSA operations including CRT.
Input-output processing is also supported in this hierarchy. Our architecture has a clearly
separated control structure and thus it is easy to design and modify the logic due to its high
flexibility for functional extensions.
HARDWARE AND SOFTWARE REQUIREMENTS:
Software Requirement Specification:

Operating System: Windows XP with SP2

Synthesis Tool: Xilinx 12.2.

Simulation Tool: Modelsim6.3c.
Hardware Requirement specification:

Minimum Intel Pentium IV Processor

Primary memory: 2 GB RAM,

Spartan III FPGA

Xilinx Spartan III FPGA development board

JTAG cable, Power supply
REFERENCES:
[1] R. L. Rivest, A. Shamir, and L. Adliman, “A method for obtaining digital signatures and publickey crypto systems,” Commun. ACM, vol. 21, no. 2, pp. 120–126, Feb. 1978.
[2] P. L. Montgomery, “Modular multiplication without trial division,” Math. Comput., vol. 44,
no. 170, pp. 519–521, Apr. 1985.
[3] A. Daly and W. Marnane, “Efficient architectures for implementing Montgomery modular
multiplication and RSA modular exponentiation on reconfigurable logic,” in Proc. ACM/SIGDA
10th Int. Symp. On Field-Program. Gate Arrays, Nov. 2002, pp. 40–49
[4] C. McIvor, M. McLoone, J. McCanny, A. Daly, and W. Marnane, “Fast Montgomery modular
multiplication and RSA cryptographic processor architectures,” in Proc. 37th Annu. Asilomar
Conf. Signals, Syst. Comput., Nov. 2003, pp. 379–384.
VEDLABS, #112, Oxford Towers, Old airport Road, Kodihalli, Bangalore-08,
www.vedlabs.com , Email id: projects@vedlabs.com, Ph: 080-42040494.
Page 3
[5] F. Crowe, A. Daly, and W. Marnane, “A scalable dual mode arithmetic unit for public key
cryptosystems,” in Proc. IEEE Int. Conf. Inf. Technol.: Coding Comput. (ITCC), Apr. 2005, pp. 568
573.
VEDLABS, #112, Oxford Towers, Old airport Road, Kodihalli, Bangalore-08,
www.vedlabs.com , Email id: projects@vedlabs.com, Ph: 080-42040494.
Page 4
Download