Académique Documents
Professionnel Documents
Culture Documents
CHAPTER - 1
INTRODUCTION TO VLSI
Overview
The first semiconductor chips held one transistor each. Subsequent advances
added more and more transistors, and, as a consequence, more individual functions or
systems were integrated over time. The first integrated circuits held only a few devices,
perhaps as many as ten diodes, transistors, resistors and capacitors, making it possible to
fabricate one or more logic gates on a single device. Now known retrospectively as
"small-scale integration" (SSI), improvements in technique led to devices with hundreds
of logic gates, known as large-scale integration (LSI), i.e. systems with at least a
thousand logic gates. Current technology has moved far past this mark and today's
microprocessors have many millions of gates and hundreds of millions of individual
transistors.
At one time, there was an effort to name and calibrate various levels of large-scale
integration above VLSI. Terms like Ultra-large-scale Integration (ULSI) were used. But
the huge number of gates and transistors available on common devices has rendered such
fine distinctions moot. Terms suggesting greater than VLSI levels of integration are no
longer in widespread use. Even VLSI is now somewhat quaint, given the common
assumption that all microprocessors are VLSI or better.
MRIET 1 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
What is VLSI?
VLSI stands for "Very Large Scale Integration". This is the field which involves
packing more and more logic devices into smaller and smaller areas.
i. Simply we say Integrated circuit is many transistors on one chip.
iii. Integrated circuit (IC) may contain millions of transistors, each a few mm in size.
MRIET 2 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Size. Integrated circuits are much smaller-both transistors and wires are shrunk to
micrometer sizes, compared to the millimeter or centimeter scales of discrete
components. Small size leads to advantages in speed and power consumption, since
smaller components have smaller parasitic resistances, capacitances, and inductances.
Speed. Signals can be switched between logic 0 and logic 1 much quicker within a chip
than they can between chips. Communication within a chip can occur hundreds of times
faster than communication between chips on a printed circuit board. The high speed of
circuits on-chip is due to their small size-smaller components and wires have smaller
parasitic capacitances to slow down the signal.
Power consumption. Logic operations within a chip also take much less power. Once
again, lower power consumption is largely due to the small size of circuits on the chip-
smaller parasitic capacitances and resistances require less power to drive them.
MRIET 3 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
These advantages of integrated circuits translate into advantages at the system level:
2. Lower power consumption. Replacing a handful of standard parts with a single chip
reduces total power consumption. Reducing power consumption has a ripple effect on the
rest of the system: a smaller, cheaper power supply can be used; since less power
consumption means less heat, a fan may no longer be necessary; a simpler cabinet with
less shielding for electromagnetic shielding may be feasible, too.
3. Reduced cost. Reducing the number of components, the power supply requirements,
cabinet costs, and so on, will inevitably reduce system cost. The ripple effect of
integration is such that the cost of a system built from custom ICs can be less, even
though the individual ICs cost more than the standard parts they replace.
MRIET 4 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
What is HDL
We can verify design functionality early in the design process. A design written as an
HDL description can be simulated immediately. Design simulation at this high
level — at the gate-level before implementation — allows you to evaluate
architectural and design decisions.
An HDL description is more easily read and understood than a netlist or schematic
description. HDL descriptions provide technology-independent documentation of a
design and its functionality. Because the initial HDL design description is
technology independent, you can use it again to generate the design in a different
technology, without having to translate it from the original technology.
Large designs are easier to handle with HDL tools than schematic tools.
Verilog Overview :
Introduction
MRIET 5 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Verilog provides both behavioral and structural language structures. These structures
allow expressing design objects at high and low levels of abstraction. Designing
hardware with a language such as Verilog allows using software concepts such as
parallel processing and object-oriented programming. Verilog has a syntax similar to C
and Pascal.
Design Styles
Verilog like any other hardware description language permits the designers to create a
design in either Bottom-up or Top-down methodology.
Bottom-Up Design
Top-Down Design
The desired design-style of all designers is the top-down design. A real top-down
design allows early testing, easy change of different technologies, a structured system
design and offers many other advantages. But it is very difficult to follow a pure top-
down design. Due to this fact most designs are mix of both the methods,
implementing some key elements of both design style.
Verilog supports a design at many different levels of abstraction. Three of them are
very important:
1. Behavioral level
2. Register-Transfer Level
MRIET 6 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
3. Gate Level
Behavioral level
Register-Transfer Level
Gate Level
Within the logic level the characteristics of a system are described by logical links
and their timing properties. All signals are discrete signals. They can only have definite
logical values (`0', `1', `X', `Z`). The usable operations are predefined logic primitives
(AND, OR, NOT etc gates). Using gate level modeling might not be a good idea for
any level of logic design. Gate level code is generated by tools like synthesis tools and
this Netlist is used for gate level simulation and for backend.
Introduction
Design is the most significant human endeavor: It is the channel through which
creativity is realized. Design determines our every activity as well as the results of those
activities; thus it includes planning, problem solving, and producing. Design is also
MRIET 7 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
MRIET 8 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
CHAPTER - 1
LITERATURE SURVEY
The original DES cipher's key size of 56 bits was generally sufficient when that
algorithm was designed, but the availability of increasing computational power
made brute-force attacks feasible. Triple DES provides a relatively simple method
of increasing the key size of DES to protect against such attacks, without the need
to design a completely new block cipher algorithm.
Therefore, Triple DES uses a "key bundle" that comprises three DES keys, K1,
K2 and K3, each of 56 bits (excluding parity bits). The encryption algorithm is:
ciphertext = EK3(DK2(EK1(plaintext)))
I.e., DES encrypt with K1, DES decrypt with K2, then DES encrypt with K3.
I.e., decrypt with K3, encrypt with K2, then decrypt with K1.
MRIET 9 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
In each case the middle operation is the reverse of the first and last. This improves
the strength of the algorithm when using keying option 2, and provides backward
compatibility with DES with keying option 3.
Keying options
Keying option 1
All three keys are independent. Sometimes known as 3TDEA or triple-length
keys.
This is the strongest, with 3 × 56 = 168 independent key bits. It is still vulnerable
to meet-in-the-middle attack, but the attack requires 22 × 56 steps.
Keying option 2
K1 and K2 are independent, and K3 = K1. Sometimes known as 2TDEA or
double-length keys.
This provides a shorter key length of 112 bits and a reasonable compromise
between DES and Keying option 1, with the same caveat as above. This is an
improvement over "double DES" which only requires 256 steps to attack. NIST
has deprecated this option.
Keying option 3
All three keys are identical, i.e. K1 = K2 = K3.
This is backward compatible with DES, since two operations cancel out. ISO/IEC
18033-3 never allowed this option, and NIST no longer allows K1 = K2 or K2 =
K3.
Each DES key is 8 odd-parity bytes, with 56 bits of key and 8 bits of error-
detection. A key bundle requires 24 bytes for option 1, 16 for option 2, or 8 for
option 3.
MRIET 10 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
NIST (and the current TCG specifications version 2.0 of approved algorithms
for Trusted Platform Module) also disallows using any one of the 64 following
64-bit values in any keys (note that 32 of them are the binary complement of the
32 others; and that 32 of these keys are also the reverse permutation of bytes of
the 32 others), listed here in hexadecimal (in each byte, the least significant bit is
a odd-parity generated bit, it is discarded when forming the effective 56-bit keys):
MRIET 11 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
CHAPTER – 3
BLOCK DIAGRAM
MRIET 12 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
CHAPTER – 4
BLOCK DIAGRAM DESCRIPTION
ENCRYPTION:
The Encryption and decryption process consists of a number of different transformations
applied consecutively over the data block bits, in a fixed number of iterations, called
rounds. The number of rounds depends on the length of the key used for the encryption
process. For key length of 200 bits, the number of iteration required are10. (Nr = 10).
each of the first Nr- 1 rounds consists of 3 transformations: Shift Rows (), Mix Columns
() & Add Round Key ().
DECRYPTION:
The process of decryption of an Tdes ciphertext is similar to the encryption process in
the reverse order. This process is direct inverse of the Encryption process. All the
transformations applied in Encryption process are inversely applied to this process.
Hence the last round values of both the data and key are first round inputs for the
Decryption process and follows in decreasing order. Each round consists of the three
processes conducted in the reverse order –
Encrypt the plaintext blocks using single DES with key K1.
Now decrypt the output of step 1 using single DES with key K2.
Finally, encrypt the output of step 2 using single DES with key K3.
MRIET 13 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Decryption of a ciphertext is a reverse process. User first decrypt using K3, then
encrypt with K2, and finally decrypt with K1.
Second variant of Triple DES (2TDES) is identical to 3TDES except that K3is replaced
by K1. In other words, user encrypt plaintext blocks with key K1, then decrypt with key
K2, and finally encrypt with K1 again. Therefore, 2TDES has a key length of 112 bits.
Triple DES systems are significantly more secure than single DES, but these are clearly
a much slower process than encryption using single DES.
F O U R T
H Y E A R
E C E B M
R I E T C
A M P U S
STEP:1
ENCRYPTION
ROW OPERATIONS:
MRIET 14 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
KEY1 (1,1,1,1,1)
T F O U R
H Y E A R
E C E B M
R I E T C
A M P U S
KEY2 (1,1,1,1,1)
T F O U R
R H Y E A
E C E B M
R I E T C
A M P U S
KEY3 (1,1,1,1,1)
T F O U R
R H Y E A
M E C E B
R I E T C
A M P U S
MRIET 15 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
KEY4 (1,1,1,1,1)
T F O U R
R H Y E A
M E C E B
C R I E T
A M P U S
KEY5 (1,1,1,1,1)
T F O U R
R H Y E A
M E C E B
C R I E T
S A M P U
STEP:2
COLUMN OPERATION
KEY6 (1,1,1,1,1)
S F O U R
T H Y E A
MRIET 16 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
R E C E B
M R I E T
C A M P U
KEY7 (1,1,1,1,1)
S A O U R
T F Y E A
R H C E B
M E I E T
C R M P U
KEY8 (1,1,1,1,1)
S A M U R
T F O E A
R H Y E B
M E C E T
C R I P U
KEY9 (1,1,1,1,1)
S A M P R
T F O U A
MRIET 17 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
R H Y E B
M E C E T
C R I E U
KEY10 (1,1,1,1,1)
S A M P U
T F O U R
R H Y E A
M E C E B
C R I E T
STEP:3
DECRYPTION
COLUMN OPERATION
KEY8 (1,1,1,1,1)
S A O P U
T F Y U R
R H C E A
M E I E B
C R M E T
STEP:4
MRIET 18 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
ENCRYPTION
ROW OPERATION
KEY1 (1,1,1,1,1)
U S A O P
T F Y U R
R H C E A
M E I E B
C R M E T
KEY2 (0,0,0,0,0)
U S A O P
T F Y U R
R H C E A
M E I E B
C R M E T
KEY3 (1,1,1,1,1)
U S A O P
T F Y U R
A R H C E
M E I E B
C R M E T
KEY4 (0,0,0,0,0)
MRIET 19 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
U S A O P
T F Y U R
A R H C E
M E I E B
C R M E T
KEY5 (1,1,1,1,1)
U S A O P
T F Y U R
A R H C E
M E I E B
T C R M E
STEP:5
COLUMN OPERATION
KEY6 (1,1,1,1,1)
T S A O P
U F Y U R
T R H C E
A E I E B
M C R M E
MRIET 20 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
KEY7 (1,1,1,1,1)
T C A O P
U S Y U R
T F H C E
A R I E B
M E R M E
KEY8 (1,1,1,1,1)
T C R O P
U S A U R
T F Y C E
A R H E B
M E I M E
KEY9 (0,0,0,0,0)
T C R O P
U S A U R
T F Y C E
A R H E B
M E I M E
KEY10 (1,1,1,1,1)
MRIET 21 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
T C R O E
U S A U P
T F Y C R
A R H E E
M E I M B
STEP:6
DECRYPTION
COLUMN OPERATION:
KEY6 (1,1,1,1,1)
U C R O E
T S A U P
A F Y C R
M R H E E
T E I M B
KEY7 (1,1,1,1,1)
U S R O E
T F A U P
A R Y C R
M E H E E
MRIET 22 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
T E I M B
KEY8 (1,1,1,1,1)
U S A O E
T F Y U P
A R H C R
M E I E E
T C R M B
KEY9 (0,0,0,0,0)
U S A O E
T F Y U P
A R H C R
M E I E E
T C R M B
KEY10 (1,1,1,1,1)
U S A O P
T F Y U R
A R H C E
M E I E B
T C R M E
MRIET 23 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
STEP:7
ROW OPERATION
KEY1 (1,1,1,1,1)
S A O P U
T F Y U R
A R H C E
M E I E B
T C R M E
KEY2 (0,0,0,0,0)
S A O P U
T F Y U R
A R H C E
M E I E B
T C R M E
KEY3 (1,1,1,1,1)
S A O P U
T F Y U R
R H C E A
M E I E B
MRIET 24 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
T C R M E
KEY4 (0,0,0,0,0)
S A O P U
T F Y U R
R H C E A
M E I E B
T C R M E
KEY5 (1,1,1,1,1)
S A O P U
T F Y U R
R H C E A
M E I E B
C R M E T
STEP:8
ENCRYPTION
K8 (1,1,1,1,1)
S A M P U
T F O U R
MRIET 25 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
R H Y E A
M E C E B
C R I E T
STEP:9
DECRYPTION
COLUMN OPERATION
KEY6 (1,1,1,1,1)
T A M P U
R F O U R
M H Y E A
C E C E B
S R I E T
KEY7 (1,1,1,1,1)
T F M P U
R H O U R
M E Y E A
C R C E B
S A I E T
KEY8 (1,1,1,1,1)
MRIET 26 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
T F O P U
R H Y U R
M E C E A
C R I E B
S A M E T
KEY9 (1,1,1,1,1)
T F O U U
R H Y E R
M E C E A
C R I E B
S A M P T
KEY10 (1,1,1,1,1)
T F O U R
R H Y E A
M E C E B
C R I E T
S A M P U
STEP:10
ROW OPERATION
MRIET 27 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
KEY1 (1,1,1,1,1)
F O U R T
R H Y E A
M E C E B
C R I E T
S A M P U
KEY2 (1,1,1,1,1)
F O U R T
H Y E A R
M E C E B
C R I E T
S A M P U
KEY3 (1,1,1,1,1)
F O U R T
H Y E A R
E C E B M
C R I E T
S A M P U
MRIET 28 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
KEY4 (1,1,1,1,1)
F O U R T
H Y E A R
E C E B M
R I E T C
S A M P U
KEY5 (1,1,1,1,1)
F O U R T
H Y E A R
E C E B M
R I E T C
A M P U S
MRIET 29 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
SECURITY
INTRODUCTION:
This is especially the case for shared system, such as a time-sharing system, and the
need is even more acute for systems that can be accessed over a public telephone
network, data network, or the Internet. The generic name for the collection of tools
designed to protect data and to thwart hackers is computer security.
MRIET 30 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
The second major change that affected security is the introduction of distributed
systems and the use of networks and communications facilities for carrying data between
terminal user and computer and between computer and computer. Network security
measures are needed to protect data during their transmission. In fact, term network
security is some what misleading, because virtually all business, government, and
academic organizations interconnect their data processing equipment with a collection of
interconnected networks. Such a collection is often referred to as an internet, and the
term internet security is used.
There are no clear boundaries between these two forms of security. For example, one
of the most publicized types of attack on information systems is the computer virus. A
virus may be introduced in to a system physically when it arrives on a diskette or
optical disk and is subsequently loaded on to a computer. Viruses may also arrive over
an internet. In either case, once the virus is resident on a computer system, internal
computer security tools are needed to detect and recover from the virus. This book
focuses on internet security, which consists of measures to deter, prevent, detect, and
correct security violations that involve the transmission of information. That is a broad
statement that covers a host of possibilities. To give you a feel for the areas covered in
this book, consider the following examples of security violations:
User A transmits a file to user B. The file contains sensitive information (e.g., payroll
records) that is to be protected from disclosure. User C, who is not authorized to read the
file, is able to monitor the transmission and capture a copy of the file during its
transmission.
MRIET 31 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
then forwards the message to E, which accepts the message as coming from manager D
and updates its authorization file accordingly.
Rather than intercept a message, user F constructs its own message with the desired
entries and transmits that message to E as if it had come from manager D.
Computer E accepts the message as coming from the manager D and updates its
authorization file accordingly. An employee is fired without warning. The personnel
manager sends a message to a server system to invalidate the employee's account.
When the invalidation is accomplished, the server is to post a notice to the employee's
file as confirmation of the action. The employee is able to intercept the message and
delay it long enough to make a final access to the server to retrieve sensitive
information. Message is then forwarded, the action taken, and confirmation posted. The
employee's action may go unnoticed for some considerable time.
Internet work security is both fascinating and complex. Some of the reasons follow:
MRIET 32 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
It is not obvious from the statement of a particular requirement that such elaborate
measures are needed. It is only when the various counter measures are considered that
the measures used make sense. Having designed various security mechanisms, it is
necessary to decide where to use them. This is true both in terms of physical placement
(e.g., at what points in a network are certain security mechanisms needed) and in a
logical sense [e.g., at what layer or layers of an architecture such as TCP/IP
(Transmission Control Protocol/Internet Protocol) should the mechanisms be placed].
To assess effectively the security needs of an organization and to evaluate and choose
various security products and policies, the manager responsible for security needs some
systematic way of defining the requirements for security and characterizing the
approaches to satisfying thoserequirements. This is difficult enough in a centralized
data processing environment with the use of local and wide area networks, the problems
are compounded.
MRIET 33 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
ITU-T Recommendation (X.800), security architecture for OSI, defines such a systematic
approach. The OSI security architecture is useful to managers as a way of organizing
the task of providing security. Furthermore, because this architecture was developed as
an international standard, computer and communications vendors have developed
security features for their products and services that relate to this structured definition of
services and mechanisms.
[2] The OSI security architecture was developed in the context of OSI protocol
architecture, which is described in Appendix H. However, for our purposes in this
chapter, an understanding of the OSI protocol architecture is not required.
The OSI security architecture focuses on security attacks, mechanisms, and services.
These can be defined briefly as follows:
Security attack: Any action that compromises the security of information owned by
an organization.
MRIET 34 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Threat:
Attack:
An assault on system security that derives from an intelligent threat; that is, an
intelligent act that is a deliberate attempt (especially in the sense of a method or
technique) to evade security services and violate the security policy of a system.
MRIET 35 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
In figure 3.1(a) there is no attack while the data is sending to the destination, but the
remaining parts of the figure show the following four general categories of attack:
MRIET 36 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
shown below:
MRIET 37 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Passive Attacks: Passive attacks are in the nature of leaves dropping on,or monitoring
of, transmissions. The goal of the opponent is to obtain information that is being
transmitted.
Two types of passive attacks are release of message contents and traffic analysis. The
release of message contents is easily understood (Figure 4.6.a). A telephone conversation,
an electronic mail message, and a transferred file may contain sensitive or confidential
information. We would like to prevent an opponent from learning the contents of these
transmissions.
A second type of passive attack, traffic analysis, is subtler (Figure 4.6.b). Suppose that
we had a way of masking the contents of messages or other information traffic so that
opponents, even if they captured the message, could not extract the information from the
message. The common technique for masking contents is encryption. If we had
encryption protection in place, an opponent might still be able to observe the pattern
of these messages. The opponent could determine the location and identity of
communicating hosts and could observe the frequency and length of messages being
exchanged. This information might be useful in guessing the nature of the
communication that was taking place.
Passive attacks are very difficult to detect because they do not involve any alteration
of the data. Typically, the message traffic is sent and received in an apparently normal
fashion and neither the sender nor receiver is aware that a third party has read the
messages or observed the traffic pattern. However, it is feasible to prevent the success
of these attacks, usually by means of encryption. Thus, the emphasis in dealing with
passive attacks is on prevention rather than detection.
MRIET 38 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Active Attacks:
Active attacks involve some modification of the data stream or the creation of a false
stream and can be subdivided into four categories: masquerade, replay, modification of
messages, and denial of service. Active attacks present opposite characteristics of
passive attacks. Where as passive attacks are difficult to detect, measures are available
to prevent their success. On the other hand, it is quite difficult to prevent active attacks
absolutely, because of the wide variety of potential physical, software, and network
vulnerabilities. Instead, the goal is to detect active attacks and to recover from any
disruption or delays caused by them. If the detection has a deterrent effect, it may also
contribute to prevention.
A masquerade takes place when one entity pretends to be a different entity (Figure
4.7.a). A masquerade attack usually includes one of the other forms of active attack.
For example, authentication sequences can be captured and replayed after a valid
authentication sequence has taken place, thus enabling an authorized entity with the
few privileges to obtain extraprivileges by impersonating an entity that has those
privileges.
MRIET 39 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
MRIET 40 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Replay involves the passive capture of a data unit and its subsequent
retransmission to produce an unauthorized effect (Figure 4.7.b). Modification of
messages simply means that some portion of a legitimate message is altered, or that
messages are delayed or reordered, to produce an unauthorized effect (Figure 4.7.c).
For example, a message meaning "Allow John Smith to read confidential file
accounts" is modified to mean "Allow Fred Brown to read confidential file accounts."
MRIET 41 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
X.800 divides these services in to five categories and fourteen specific services. We
look at each category in turn.
[1] There is no universal agreement about many of the terms used in the security
literature. For example, the term integrity is sometimes used to refer to all aspects of
information security. The term authentication is sometimes used to refer both to
verification of identity and to the various functions listed under integrity in this chapter.
Our usage here agrees with both X.800 and RFC 2828.
MRIET 42 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Authentication:
Peer entity authentication: Provides for the corroboration of the identity of a peer entity
in an association. It is provided for use at the establishment of, or at times during the
data transfer phase of, a connection. It attempts to provide confidence that an entity is
not performing either a masquerade or an unauthorized replay of a previous connection.
Data origin authentication: Provides for the corroboration of the source of a data unit. It
does not provide protection against the duplication or modification of data units. This
type of service supports applications like electronic mail where there are no prior
interactions between the communicating entities.
Access Control:
In the context of network security, access control is the ability to limit and control the
access to host systems and applications via communications links. To achieve this, each
entity trying to gain access must first be identified, or authenticated, so that access
rights can be tailored to the individual.
MRIET 43 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Data Confidentiality:
Traffic Flow Confidentiality: The protection of the information that might be derived
from observation of traffic flows.
Confidentiality is the protection of transmitted data from passive attacks. With respect to
the content of a data transmission, several levels of protection can be identified. The
broadest service protects all user data transmitted between two users over a period of
time. For example, when a TCP connection is set up between two systems, this broad
protection prevents the release of any user data transmitted over the TCP connection.
Narrower forms of this service can also be defined, including the protection of a single
message or even specific fields within a message. These refinements are less useful
than the broad approach and may even be more complex and expensive to implement.
The other aspect of confidentiality is the protection of traffic flow from analysis. This
requires that an attacker not be able to observe the source and destination, frequency,
length, or other characteristics of traffic on a communications facility.
Data Integrity:
The assurance that data received are exactly as sent by an authorized entity (i.e., contain
no modification, insertion, deletion, or replay).
Connection Integrity with Recovery: Provides for integrity of all user data on a
connection and detects any modification, insertion, deletion, or replay of any data with
in an entire data sequence, with the recovery attempted.
MRIET 44 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Connection Integrity without Recovery: Provides only detection with out recovery.
Selective-Field Connection Integrity: Provides for the integrity of selected fields with
in the user data of a data block transferred over a connection and takes the form of
determination of whether the selected fields have been modified, inserted, deleted, or
replayed.
MRIET 45 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Proof that the message was received by the specified party. Non repudiation prevents
either sender or receiver from denying a transmitted message. Thus, when a message is
sent, receiver can prove that the alleged sender in fact sent the message. Similarly,
when a message is received, the sender can prove that the alleged receiver in fact
received the message.
The security mechanisms defined in X.800. As can be seen the mechanisms are divided
into those that are implemented in a specific protocol layer and those that are not
specific to any particular protocol layer or security service. These mechanisms will be
covered in appropriate places in the book and so we do not elaborate now, except
to comment on the definition of encipherment. X.800 distinguishes between
reversible encipherment mechanisms and the irreversible encipherment mechanisms.
A reversible encipherment mechanism is simply an encryption algorithm that allows
data to be encrypted and subsequently decrypted. Irreversible encipherment mechanisms
include hash algorithms and message authentication codes, which are used in digital
signature and message authentication applications.
MRIET 46 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Data Integrity: A variety of mechanisms used to assure the integrity of a data unit or
stream of data units.
Traffic Padding: The insertion of bits in to gaps in a data stream to frustrate traffic
analysis attempts.
Routing Control: Enables selection of particular physically secure routes for certain
data and allows routing changes, especially when a breach of security is suspected.
Notarization: The use of a trusted third party to assure certain properties of a data
exchange.
MRIET 47 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Mechanisms that are not specific to any particular OSI security service or protocol
layer.
Trusted Functionality. That which is perceived to be correct with respect to some criteria
(e.g., as established by a security policy).
MRIET 48 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Security aspects come into play when it is necessary or desirable to protect the
information transmission from an opponent who may present a threat to confidentiality,
authenticity, and so on. All the techniques for providing security have two components:
MRIET 49 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
A trusted third party may be needed to achieve secure transmission. For example, a third
party may be responsible for distributing the secret information to the two principals
while keeping it from any opponent. Or a third party may be needed to arbitrate
disputes between the two principals concerning the authenticity of a message
transmission.
Security is applied by using keys length of 96-bits. In figure 2.4 at the input permutation
i.e. the 96-bit key is used. At the encryption input permutation (UUT1) the given
positions of bits are changed or shuffled by using 2-bit keys for once column shift and
row shift . After input permutation the shuffled bits are given as the inputs to
arithmetic coder (AC) (UUT2) where the bits are compressed in to 72-bits. The
compressed bits given as inputs to encryption output permutation (UUT3), once again
the position of bits are shuffled by using a 2-bit key for column shift and row shift.
After changing the positions of bits once again the message is sent to the receiver.
MRIET 50 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
CHAPTER – 5
INTRODUCTION TO XILINX
To Migrate a Project
MRIET 51 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Properties
For information on properties that have changed in the ISE 12 software, see ISE 11 to
ISE 12 Properties Conversion.
IP Modules
If your design includes IP modules that were created using CORE Generator™ software
or Xilinx® Platform Studio (XPS) and you need to modify these modules, you may be
required to update the core. However, if the core netlist is present and you do not need
to modify the core, updates are not required and the existing netlist is used during
implementation.
The ISE 12 software supports all of the source types that were supported in the ISE 11
software.
If you are working with projects from previous releases, state diagram source files (.dia),
ABEL source files (.abl), and test bench waveform source files (.tbw) are no longer
supported. For state diagram and ABEL source files, the software finds an associated
HDL file and adds it to the project, if possible. For test bench waveform files, the
software automatically converts the TBW file to an HDL test bench and adds it to the
project. To convert a TBW file after project migration, see Converting a TBW File to an
HDL Test Bench.
MRIET 52 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Note After you convert your project, you cannot open it in previous versions of the ISE
software, such as the ISE 11 software. However, you can optionally create a backup of
the original project as part of project migration, as described below.
To Migrate a Project
Properties
For information on properties that have changed in the ISE 12 software, see ISE 11 to
ISE 12 Properties Conversion.
IP Modules
If your design includes IP modules that were created using CORE Generator™ software
or Xilinx® Platform Studio (XPS) and you need to modify these modules, you may be
required to update the core. However, if the core netlist is present and you do not need
MRIET 53 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
to modify the core, updates are not required and the existing netlist is used during
implementation.
The ISE 12 software supports all of the source types that were supported in the ISE 11
software.
If you are working with projects from previous releases, state diagram source files (.dia),
ABEL source files (.abl), and test bench waveform source files (.tbw) are no longer
supported. For state diagram and ABEL source files, the software finds an associated
HDL file and adds it to the project, if possible. For test bench waveform files, the
software automatically converts the TBW file to an HDL test bench and adds it to the
project. To convert a TBW file after project migration, see Converting a TBW File to an
HDL Test Bench.
To Open an Example
MRIET 54 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
The example project is extracted to the directory you specified in the Destination
Directory field and is automatically opened in Project Navigator. You can then run
processes on the example project and save any changes.
Note If you modified an example project and want to overwrite it with the original
example project, select File > Open Example, select the Sample Project Name, and
specify the same Destination Directory you originally used. In the dialog box that
appears, select Overwrite the existing project and click OK.
Creating a Project
Project Navigator allows you to manage your FPGA and CPLD designs using an ISE®
project, which contains all the source files and settings specific to your design. First, you
must create a project and then, add source files, and set process properties. After you
create a project, you can run processes to implement, constrain, and analyze your design.
Project Navigator provides a wizard to help you create a project as follows.
Note If you prefer, you can create a project using the New Project dialog box instead of
the New Project Wizard. To use the New Project dialog box, deselect the Use New
Project wizard option in the ISE General page of the Preferences dialog box.
To Create a Project
1. Select File > New Project to launch the New Project Wizard.
2. In the Create New Project page, set the name, location, and project type,
and click Next.
3. For EDIF or NGC/NGO projects only: In the Import EDIF/NGC Project
page, select the input and constraint file for the project, and click Next.
4. In the Project Settings page, set the device and project properties, and
click Next.
MRIET 55 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
5. In the Project Summary page, review the information, and click Finish to
create the project.
Project Navigator creates the project file (project_name.xise) in the directory you
specified. After you add source files to the project, the files appear in the Hierarchy
pane of the Design panel. Project Navigator manages your project based on the design
properties (top-level module type, device type, synthesis tool, and language) you
selected when you created the project. It organizes all the parts of your design and
keeps track of the processes necessary to move the design from design entry through
implementation to programming the targeted Xilinx® device.
Note For information on changing design properties, see Changing Design Properties.
You can now perform any of the following:
Design source files are left in their existing location, and the copied
project points to these files.
Design source files, including generated files, are copied and placed in a
specified directory.
MRIET 56 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Design source files, excluding generated files, are copied and placed in a
specified directory.
Copied projects are the same as other projects in both form and function. For example,
you can do the following with copied projects:
Open the copied project using the File > Open Project menu command.
View, modify, and implement the copied project.
Use the Project Browser to view key summary data for the copied project
and then, open the copied project for further analysis and implementation, as
described in Using the Project Browser.
Note Alternatively, you can create an archive of your project, which puts all of the
project contents into a ZIP file. Archived projects must be unzipped before being
opened in Project Navigator. For information on archiving, see Creating a Project
Archive.
MRIET 57 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
MRIET 58 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
additional files to copy. Additional files are copied to the copied project
location after all other files are copied.
7. To exclude generated files from the copy, such as implementation results
and reports, select Exclude generated files from the copy.
When you select this option, the copied project opens in a state in which
processes have not yet been run.
8. To automatically open the copy after creating it, select Open the copied
project.
Note By default, this option is disabled. If you leave this option disabled, the
original project remains open after the copy is made.
Click OK.
To Archive a Project
A ZIP file is created in the specified directory. To open the archived project, you must
first unzip the ZIP file, and then, you can open the project.
Note Sources that reside outside of the project directory are copied into a remote_sources
subdirectory in the project archive. When the archive is unzipped and opened, you must
either specify the location of these files in the remote_sources subdirectory for the
unzipped project, or manually copy the sources into their original location.
Xilinx Spartan 3E
The Spartan-3E Starter Kit board highlights the unique features of the Spartan-3E FPGA
family and provides a convenient development board for embedded processing
applications. The board highlights these features:
MRIET 60 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
MRIET 61 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
first device in the chain, the Spartan-3E FPGA, to highlight it. Right-click the FPGA and
select Assign New Configuration File.
Select the desired FPGA configurations file and click OK. To start programming
the FPGA, right-click the FPGA and select Program.
The Impact software reports status during programming process. Direct
programming to the FPGA takes a few seconds to less than a minute, depending on the
speed of the PC’s USB port and the iMPACT settings.
We need to assign the new generated UCF File. This new configuration file called the
UCF File contains all the information about the top level architecture and all the pin
assignments.
MRIET 62 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
MRIET 63 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Introduction to FPGA
MRIET 64 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
Custom ICs are expensive and takes long time to design so they are useful when
produced in bulk amounts. But FPGAs are easy to implement with in a short time with
the help of Computer Aided Designing (CAD) tools (because there is no physical layout
process, no mask making, and no IC manufacturing). Some disadvantages of FPGAs are,
they are slow compared to custom ICs as they can’t handle vary complex designs and
also they draw more power.
MRIET 65 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
CHAPTER – 6
RESULT
MRIET 66 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
CHAPTER – 7
CONCLUSION AND FUTURE SCOPE
The internet usage and network system is growing rapidly. So there are some additional
requirements to secure the data transmitted over different networks using different
services. To afford the security to the network and data different encryption methods are
used. In this paper, a survey on the existing works on the Encryption techniques has been
done. To sum up, all the techniques are useful for real-time Encryption. Each technique is
unique in its own way, which might be suitable for different applications and has its own
pro’s and con’s. According to research done and literature survey it can be found that
3DES algorithm is most efficient in terms of speed, time, and throughput effect. The
Security provided by these algorithms can be enhanced further, if more than one
algorithm is applied to data.
Our future work will explore this concept and a combination of algorithms will
be applied either sequentially or parallel, to setup a more secure environment for data
storage and retrieval. It is a flexible solution for any cryptographic system and security
layers of wireless protocol. Measurement results and comparisons between the proposed
and previous hardware implementations are presented that shows quite encouraging
results. The presented simulation results showed that 3DES has a better performance
result with ECB and CBC than other common encryption algorithms used. In this paper
we present a performance evaluation of selected symmetric encryption algorithms. Our
future work will explore this concept and a combination of algorithms will be applied
either sequentially or parallel, to setup a more secure environment for data storage and
retrieval.
MRIET 67 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
REFERENCES
MRIET 68 15W91A04B6
Design And Implementation Of Triple Data Encryption Standard (DES)
Algorithm Using Verilog
MRIET 69 15W91A04B6