DOC PREVIEW
MASON ECE 636 - Area Efficient Hardware Implementation of IDEA

This preview shows page 1-2-3-4-5 out of 15 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

ECE 746 Final Draft Project ReportFigure1: Idea Computation Path3. Basic Blocks7. ReferencesArea Efficient Hardware Implementation of IDEA(International Data Encryption Algorithm)ECE 746 Final Draft Project ReportSpring 2004Sukhonthip RueangvivatanakijDeepashree R IyerAbstract. An area-efficient implementation of the International Data Encryption Algorithm (IDEA) is presented inthis paper. All the modules were designed using combinational logic except the control unit which was designed as a Finite State Machine. On Xilinx Spartan2E device, our design achieved a throughput of 33.81 Mbit/sec withsystem clock of 10 MHz, and satisfactory reduction of area. In decryption key scheduling we used the Extended Euclidean algorithm to calculate the multiplicative inverse.1. IntroductionThe Data Encryption Standard (DES) algorithm was popular secret key encryption algorithm and was used in many commercial and financial applications. It was introduced in 1976 and proved resistant to all forms of cryptanalysis. However, its key size is too small by current standards and its entire 56-bit key space can be searched in approximately 22 hours [12]. In 1990, Lai and Massay introduced an iterated block cipher known as Proposed Encryption Standard (PES) [13]. Later the same authors proposed a modification of PES called Improved PES (IPES). In 1992, IPES was commercialized and was renamed the International Data Encryption Algorithm (IDEA). It is believed that, to date, the algorithm is the best and the most secure block algorithm available to the public [14].In this paper, Field Programmable Gate Array (FPGA) based implementations of the IDEA algorithm is described. This paper is organized as follows. In Section 2 the IDEA algorithm is described. In Section 3 basic building blocks such as addition modulo 216, multiplication modulo 216 + 1 and multiplicative inverse are described. In section 4 the design of IDEA architecture and the control unit is described. In section 5 testing, verification process and the results are discussed. Conclusions are drawn in Section 6.2. IDEA ALGORITHMIDEA belongs to a class of cryptosystems called secret-key cryptosystems, which is characterized by the symmetry of encryption and decryption processes. It takes 64-bit plaintext (X) input and produces 64-bit ciphertext (Y) output using a 128-bit key (K). The design philosophy behind IDEA is to mix operations from different algebraic groups including - Bitwise Addition Modulo 2 (XOR), - Addition modulo 216, - Multiplication modulo 216 + 1.All these operations work on 16-bit sub-blocks. The IDEA block cipher (Figure 1) [2] consists of a cascade of eight identical blocks known as rounds, followed by a half-round or output transformation. IDEA is believed to possess strong cryptographic strength because - Its primitive operations are of three distinct algebraic groups of 216 elements.- Multiplication modulo 216 + 1 provides desirable statistical independence between plaintext and ciphertext.- Its property of having iterative rounds makes differential attacks difficult.For encryption the 64-bit plaintext is divided into four 16-bit plaintext sub-blocks, X1 X2 X3 X4. The algorithm converts the plaintext blocks into ciphertext blocks of the same bit-length, similarly divided into four 16-bit sub-blocks, Y1 Y2 Y3 Y4. The 52 16-bit subkeys, Ki(r), where i and r are the subkey number and round number respectively, are computed from the 128-bit secret key. Each round uses six subkeys and the last four subkeys are used in theoutput transformation. At the heart of each round is the transformation called Multiplication-Addition Structure (MA-Box). It consists of two multiplication modulo 216 + 1 blocks and two addition modulo 216 blocks. The MA-Box provides the desired statistical properties of the cipher. The decryption process is essentially the same as the encryption process except that the subkeys are different [2]. This property is called “Similarity” of encryption and decryption. The algorithm for computing the encryption subkeys involves only logical rotations. The procedure begins by partitioning the 128-key secret key K into eight 16-bit blocks and assigning them directly to the first eight subkeys. The input K is then rotated left by 25 bits, partitioned into eight 16-bit blocks and again assigned to thenext eight subkeys. The process continues until all 52 subkeys are assigned. The decryption subkeys Ki-(r) is computed from the encryption subkeys as in Table 2.Figure1: Idea Computation PathTable 1. IDEA encryption subkeys Ki(r) Key used byModuloMultiplicationUnitKey used byModuloAdder UnitKey used byModuloAdder UnitKey used byModuloMultiplicationUnitKeys used by Mangler Unit(MA-Box)r =1 K1(r)K2(r)K3(r)K4(r)K5(r)K6(r)2 - r - 8 K1(r)K2(r)K3(r)K4(r)K5(r)K6(r)r = 9 K1(r)K2(r)K3(r)K4(r)N/A N/ATable 2. IDEA decryption subkeys Ki-(r) derived from encryption subkeys Ki(r),-Ki and Ki-1 denote additive inverse modulo 216 and multiplicative inverse 216+1 of Ki respectively.K1-(r)K2-(r)K3-(r)K4-(r)K5-(r)K6-(r)r =1 (K1(10-r) )-1-K2(10-r)-K3(10-r)(K4(10-r) )-1K5(9-r)K6(9-r)2 - r - 8 (K1(10-r) )-1-K3(10-r)-K2(10-r)(K4(10-r) )-1K5(9-r)K6(9-r)r = 9 (K1(10-r) )-1-K2(10-r)-K3(10-r)(K4(10-r) )-1N/A N/AIDEA works within any block-cipher mode that works with DES algorithm: Electronic Code Book(ECB), Cipher Block Chaining (CBC), Output Feedback (OFB), and Cipher Feedback (CFB). Since IDEA’s keylength is 128 bits over twice as the DES key it would require 2128 encryptions to recover the key. DES onlyrequires 256 encryptions to break. IDEA is much stronger to brute force attack. 3. Basic BlocksThe basic blocks operate on 16-bit vectors. They are:- Bit-wise Addition Modulo 2 (XOR) Block- Addition of Integers Modulo 216 Block- Multiplication Modulo 216 +1 Block- Multiplicative Inverse BlockThe XOR, Modulo Addition 216 and Modulo Multiplication 216 +1 block are the basic building block of the IDEA-Round unit. The Multiplicative Inverse Block is the part of the key-scheduling unit. It is used to calculate the multiplicative inverse ((Ki(r))-1) of some selected 16-bit encryption keys (Ki(r)). The inverse key is used in decryption cycle. The basic blocks were implemented and verified for correct operation before implementing theoverall architecture of IDEA. (The IDEA-Round and Key-scheduling units are described in section 4.)3.1 Bitwise Addition Modulo 2 (XOR) block:Figure 2Figure2 represents the XOR block. The built-in XOR function in VHDL


View Full Document

MASON ECE 636 - Area Efficient Hardware Implementation of IDEA

Documents in this Course
Load more
Download Area Efficient Hardware Implementation of IDEA
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Area Efficient Hardware Implementation of IDEA and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Area Efficient Hardware Implementation of IDEA 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?