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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 1<br />

Introduction<br />

1.1 Motivation<br />

Today there is a wide range of distributed systems, which use communication resources that can not be<br />

safeguarded against eavesdropping or unauthorized data alteration. Thus cryptographic protocols are applied<br />

to these systems in order to prevent in<strong>for</strong>mation extraction or to detect data manipulation by unauthorized<br />

parties.<br />

In general, cryptographic methods can be subdivided into two categories: symmetric- and asymmetric<br />

cryptographic algorithms.<br />

In the case of symmetric cryptographic algorithms like DES [1] or AES [2] both communication partners<br />

use the same secret key to encrypt and decrypt messages. Compared to asymmetric cryptography these<br />

algorithms are considered to be faster and more efficient. However, the general problem of symmetric<br />

methods is the distribution of the secret key. Sender and recipient both have to possess the same secret key<br />

to process the message but no one else may have the key, because otherwise one would be able to decrypt<br />

or alter the message just like the original author and recipient. So secure channels have to be established in<br />

order to exchange the keys.<br />

With regard of this problem, asymmetric algorithms have been developed. These algorithms, which are<br />

also called public key algorithms, differ in the utilized set of keys consisting of a public- and a private key.<br />

This key pair can only be computed by the original creator of the keys. For all others both keys are virtually<br />

independent. The general principle of all public key schemes is then, that a message that is encrypted with<br />

one of the keys can only be decrypted with the other one.<br />

After publication of the public key, everyone can use this key, e.g. to encrypt a message. Afterwards,<br />

this message can only be decrypted with the corresponding private key which is exclusively known by the<br />

authorized recipient of the message.<br />

Alternatively, public key algorithms can be used to compute and verify digital signatures. The author of<br />

a message uses his secret, private key to compute a signature. By looking up the authors public key any<br />

recipient of the message-signature-pair is able to verify this signature subsequently.<br />

Public key algorithms provide much flexibility and a very high level of security. On the other hand,<br />

in comparison to symmetric methods, they are <strong>based</strong> on much more complex and expensive arithmetic<br />

operations. In practice a combination of both methods is frequently used. E.g. SSL [3]: public key methods<br />

are used <strong>for</strong> key exchange and authentication while symmetric algorithms are applied <strong>for</strong> the encryption of<br />

the data stream.<br />

The most prominent public key method is the widely-used RSA algorithm [4]. It is <strong>based</strong> on the problem

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

Saved successfully!

Ooh no, something went wrong!