Xem mẫu

School of Computer and Communication Sciences Communication systems section Microelectronic Systems Laboratory 2002 Winter Semester Project Implementation of DES Algorithm Using FPGA Technology Student: Assistant: Professor: Arnaud Lagger Ilhan Hatirnaz Yusuf Leblebici ! ! "# " ! " "" $ " $ " " !" # !" # !" # #$ !" % %& !" ’ % !" ( % " !" ) %# !" ) %% !" #) %’ !" %) %( !" ’) % % & ’ ! " " % (( " DES is probably one of the best known cryptographic algorithms, and has been widely used since its introduction in 1976 (and is still used today despite the fact that he doesn’t offer a sufficient level of security). The goal of this project is to continue the work of a student who worked on a pipelined VHDL implementation of the DES algorithm. Two architectures are studied for this project: one which is the fastest possible and another one which results in the less area than the first architecture on the FPGA. The meaning of speed for this project is the throughput (number of bits processed per second) and the meaning of area is number of CLB’s (Configurable Logic Block). Before building our design, we need an overview of cryptography, followed by a description of the DES algorithm. We will see then what and how will realise this project. The next step will be to analyze the components used in both design. So at this point, we will be ready to build the fast design going through the design flow (simulation, synthesis, place & route and tests on FPGA). After that, the small design will be built. The appendixes at the end of the report contain all the figures and the main part of the VHDL code. Before going into depth about this project, we shall explain some basic concepts about cryptography and particularly about DES, because we will use this algorithm. Remark: all the figures in this section are taken from the excellent course of Prof. Christof Paar (see [1] for more details). Symmetric-key (or private-key) encryption can be simply illustrated with the schematic below. Alice and Bob want to communicate over an un-secure channel, but Oscar is trying to read the message. So Alice and Bob must use a crypto system to prevent Oscar from reading the message. Symmetric-key schematic x is called the plaintext, y the ciphertext and k the key. The function e performs the encryption on the plaintext using the key and the function d decrypts the ciphertext using the same key. Thus, Alice and Bob must own the same key. They should not use the un-secure, since Oscar is able to retrieve all the data through this channel (the functions e and f are also known by Oscar). So the key must be exchanged through a secure channel. We can also introduce some others definitions that will characterize the algorithm used: • = {x1, x2, . . . , xp} is the plaintext space • = {y1, y2, . . . , yp} is the ciphertext space ... - tailieumienphi.vn
nguon tai.lieu . vn