12.07.2015 Views

Ultra-Low-Power Digital Circuit Design - Microelectronic Systems ...

Ultra-Low-Power Digital Circuit Design - Microelectronic Systems ...

Ultra-Low-Power Digital Circuit Design - Microelectronic Systems ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CHAPTER 3.ELLIPTIC CURVE CRYPTOGRAPHIC PROCESSOR3.2.1 Montgomery algorithm for scalar multiplicationThe binary method for scalar multiplication on elliptic curves can be implemented as follows:set k ← (k l−1 ...k 1 k 0 ) 2set P 1 ← P, P 2 ← 2Pfor i = l − 2 to 0 doif k i = 1 thenelseset P 1 ← P 1 + P 2 , P 2 = 2 · P 2 .set P 2 ← P 1 + P 2 , P 1 = 2 · P 1 .end ifend forOne fast algorithm for fast scalar multiplication on elliptic curves is the ladder algorithmrst proposed by Montgomery [12]. It is based on the observation that in the binarymethod, the dierence between P 1 and P 2 is always equal to P . This makes it possible toimplement scalar multiplication with fewer registers.3.3 Specications of the cryptographic processorThe ECC core that was chosen as an example implementation for this project is designedfor elliptic curve calculations over the eld F 2 163. It provides a hardware implementation ofthe add-and-double operation that is at the heart of Montgomery's ladder multiplicationalgorithm.The ALU and the register le are controlled by a Finite State Machine (FSM), which isalso part of the hardware implementation. An external controller implements the physicalinterface for encryption or authentication and repeatedly calls the ECC core to performthe operations on two curve points.The main specications are given in table 3.1. The core is designed to operate at a verylow clock frequency of 100 kHz.technologytarget clock frequencypower dissipationUMC 90nm100 kHzmin.Table 3.1: Specications of the ECC core3.4 ArchitectureShown in Figure 3.1, the architecture of the ECC core consists of a core containing theArithmetic and Logic Unit (ALU) on the left, and a 6-word register le on the right.19

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!