08.03.2014 Views

FPGA based Hardware Accleration for Elliptic Curve Cryptography ...

FPGA based Hardware Accleration for Elliptic Curve Cryptography ...

FPGA based Hardware Accleration for Elliptic Curve Cryptography ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

1.3. GOALS OF THIS STUDY 3<br />

specific and synthesizable VHDL descriptions from a superior, generic coprocessor-model has also been<br />

adopted from this previous design.<br />

1.3 Goals of this Study<br />

The main goal of this work is the design and the implementation of a arithmetic processor kernel<br />

which can be embedded into the previously described EC coprocessor design. After some research on<br />

existing algorithms and implementations it was decided that the main work should concentrate on the finite<br />

field arithmetic while the EC level algorithms should be adopted from the literature. The main reason <strong>for</strong> this<br />

decision was the fact, that an efficient hardware architecture has a much greater influence on the efficiency<br />

of the data flow dominated finite field algorithms than on the control flow oriented EC level algorithms.<br />

The final design should be widely scalable in terms of different types of resource usage. To provide this<br />

scalability and flexibility a generator program should be used to produce the VHDL hardware models, out<br />

of which the <strong>FPGA</strong> programming bitstream is synthesized subsequently. While it was clear that the most<br />

important parameter <strong>for</strong> scalability will be the bitwidth of the design, the complete parameter set and the<br />

resulting degree of flexibility caused by the generator approach was specified during the implementation<br />

progress.<br />

A minor goal has been the compatibility to existing modules. The interface of the new developed design<br />

should correspond to that of the existing ONB implementation. Using this goal it was possible to reuse the<br />

already optimized EC Controller from the ONB implementation without modifications.<br />

A new family of attacks against cryptographic hardware implementations is currently gaining much importance.<br />

These so called Side-Channel-Attacks use additional in<strong>for</strong>mation the hardware provides beside the<br />

cryptographic functions to extract knowledge of the secret key. Examples <strong>for</strong> this additional in<strong>for</strong>mation are<br />

the runtime of an operation that might depend on the secret key or the power consumption of a chip during<br />

the computation. Though it was not a main goal of this work to provide resistance against such attacks, the<br />

problem should be reminded during implementation. Where possible, simple countermeasures should be<br />

implemented.<br />

To evaluate the functionality of the hardware implementation, the results should be compared against<br />

results of a pure software implementation. To provide a framework <strong>for</strong> this evaluation process, the existing<br />

C software implementation has been extended to support- elements in polynomial representation.<br />

1.4 Content of this work<br />

The mathematical background of elliptic curves and finite fields is introduced in the following chapter.<br />

Furthermore, the multi-segment Karatsuba multiplication scheme is described in detail. Chap. 3 focuses on<br />

the architecture and the implementation of the proposed ECC coprocessor. Special attention is given to the<br />

arithmetic processor kernel. Implementation results and some per<strong>for</strong>mance numbers are given in<br />

Chap. 4. Finally, Chap. 5 summarizes the conclusions and gives an outlook on work that might follow.

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

Saved successfully!

Ooh no, something went wrong!