Professional Documents
Culture Documents
In this study, we present an architecture The various operations are EX-OR, Addition of
hardware implementation of this algorithm and integers modulo 216, Multiplication of integers
also an application of using this algorithm for modulo 216+1. The various steps involved in
encrypting a plain text with another plain text. encrypting the plain text are summarized as
follows:
1271
The encryption (decryption) subkeys are made i. Single Round Specification
ready for the encryption (decryption) using the
specified functions generateEncSubKeys and The main part of the IDEA algorithm consists
generateDecSubKeys. The encryption of the application of 8 similar rounds to the
(decryption) works by taking a list of elements input plaintext and the key as shown in Fig.2.
representing the plaintext (ciphertext) and the In this section we introduce the round
private key. Then, the list of plaintext construct by introducing each of its building
(ciphertext) is segmented as segments of 4- blocks.
elements each element representing a 16-bit
word. These packed lists are then passed to A round is specified as a function singleRound
encryption or decryption along with the input with two input lists, one representing the input
private key. block from the plaintext and the other a pack
of subkeys. A singleRound works by
A functional specification of IDEA encryption composing three different functions
is formulated as a function encryption. The firstSubRound, secondSubRound, and
encryption function works by firstly thirdSubRound (fig.3).
segmenting the input list using the function
segs. Secondly, it maps the function The function firstSubRound employs modular
responsible for a single block encryption with multiplication and addition to the first 4
the input private key to all segmented input elements of both input lists. This function also
list elements. The function responsible for forwards the last two subkeys from input to
encrypting a single 4-element list is called output list.
encryptSegs.
1272
In IDEA, each plaintext bit influence every
cipher text bit. The spreading out of a single
plaintext bit over many cipher text bits hides
the statistical nature of the plaintext. This
diffusion is provided by the basic building
block of the algorithm known as the
multiplication/addition (MA) structure shown
in Fig.3. The function that specifies this
structure is called mA, and the Fig.4
multiplication/addition is done using the
functions mulMod/addMod.
1273
VII. CONCLUSION We believe that the algorithm and its hardware
implementation offer a prominent degree of
Motivated by the need for a fast procedure LAN security against any type of cipher
suitable for packet-level encryption, we have attacks. Moreover, the simplicity of the
provided a implementation of IDEA approach provides a relatively minimal delay
algorithm. The distinctive features of this for packet-level encryption technique.
implementation are as follows:
References
• An encryption processor is designed using
only three low-level instructions XOR, [1] M. SAEB, A. BAITH, “An Encryption
Modulo-addition, Modulo-multiplication. Algorithm for Data Security,” Recent
These three instructions formed the basis of Advances in Information Science &
the algorithm and its hardware Technology, N.E. Mastorakis, (editor), World
implementation. Scientific Publishing Company, pp. 350-354,
1998.
• An subkey generator is designed using three [2] VICTOR FISCHER, “Realization of the
different operations for encryption and Round 2 AES Candidates using Altera
decryption. For encryption circular shift FPGA,” www.micronic.sk, 2000.
operation is used and 52 subkey’s each of 16 [3] Ronald Rivest, “The RC5 Encryption
bit is generated from an 128 bit key. For Algorithm,” Dr. Dobb’s Journal, #226,
decryption same 128bit key is used and two pp.146-148, January, 1995.
operations namely multiplicative inverse, [4] Kris Gaj and Pawel Chodowiec, George
additive inverse are used to produce 52 Mason University, “Comparison of the
subkey’s of 16 bit each. hardware performance of the AES candidates
using reconfigurable hardware,”
Comparing this architecture with other types http://ece.gmu.edu/crypto-text.htm, 2000.
of encryption algorithm implementations, we [5] Alfred J. Menezes et al., Handbook of
have demonstrated the superiority of our Applied Cryptography, CRC Press, 1997.
algorithm in time-critical applications. Packet- [6] A. E. Abdallah. Derivation of Parallel
level encryption is one of these applications. Algorithms from Functional Specifications to
As it is well known, this technique is applied CSP Processes. Mathematics of Program
when using public network links between two Construction, LNCS 947, (Springer Verlag,
private local area networks. This is known as 1995), pages 67–96, 1995.
Virtual Private Networks (VPN). The [7] J. Hawkins and A. E. Abdallah. Functional
implemented processor can be integrated in process modelling. Proceedings of the 7th
the system before the sender router and after IEEE International Conference on
the receiver router with slight modifications to Electronics, Circuits and Systems, December
the processor internal functions. 2000.
[8] I. Damaj, J. Hawkins, and A. Abdallah.
For higher degrees of data security, the Mapping high level algorithms onto massively
process can be repeated on the resulting parallel reconfigurable hardware. ACS/IEEE
pointer file. That is using more than one round International Conference on Computer
of encryption cycles. The number of rounds Systems and Applications, pages 14–22, July
should be agreed upon by sender and receiver 2003.
before transmission begins. [9] Celoxica. Handel-c documentation.
http://www.celoxica.com/, 2003.
1274
[10] National Bureau of Standards, U.S.
Department of Commerce. Data encryption
standard, January 1977.
[11] B. Schneier. Applied Cryptography. John
Wiley and Sons, New York, 1996.
[12] X. Lai and J. Massey. A proposal for a
new block encryption standard. In
Proceedings of the EUROCRYPT 90
Conference, pages 389–904, 1990.
[13] A. Tanenbaum. Computer Networks.
Prentice Hall, Upper Saddle River, NJ, third
edition, 1997.
[14] J. Daemen, R. Govaerts, and J.
Vandewalle. Weak keys for IDEA. Springer-
Verlag, pages 224–231, 1994.
[15] William Stallings. Network Security
Essentials. Prentice Hall, third edition,
November 2002.
[16] D. Runje and M. Kovac. Universal strong
encryption FPGA core implementation. In
Proceedings of Design, Automation and Test
in Europe, pages 923–924, 1998.
[17] O. Y. H. Cheung, K. H. Tsoi, P. H. W.
Leong, and M. P. Leong. Tradeoffs in parallel
and serial implementations of the international
data encryption algorithm IDEA. Lecture
Notes in Computer Science, 2162:333, 2001.
[18] Jean-Luc Beuchat and Jean-Michel
Muller. Modulo m multiplication-addition:
Algorithms and FPGA implementation.
Electronics Letters, 40(11):654–655, May
2004.
[19] O. Mencer, M. Morf, and M.J. Flynn.
Hardware software tri-design of encryption for
mobile communication units. In Proceedings
of the 1998 IEEE International Conference on
coustics, Speech and Signal Processing,
volume 5, pages 3045–3048, 1998.
1275