Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
158 views

The International Data Encryption Algorithm (IDEA)

The International Data Encryption Algorithm (IDEA) is a symmetric-key block cipher introduced in 1991 to provide robust encryption for digital data and applications. It employs a 64-bit block size and 128-bit key size, using mathematical operations like modular arithmetic and XOR to transform plaintext to ciphertext. IDEA was designed to offer strong security against attacks while being efficient to implement in software and hardware, making it suitable for embedded systems. While newer algorithms like AES are now more commonly used, IDEA remains a potent encryption mechanism employed in some legacy systems.

Uploaded by

Love
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
158 views

The International Data Encryption Algorithm (IDEA)

The International Data Encryption Algorithm (IDEA) is a symmetric-key block cipher introduced in 1991 to provide robust encryption for digital data and applications. It employs a 64-bit block size and 128-bit key size, using mathematical operations like modular arithmetic and XOR to transform plaintext to ciphertext. IDEA was designed to offer strong security against attacks while being efficient to implement in software and hardware, making it suitable for embedded systems. While newer algorithms like AES are now more commonly used, IDEA remains a potent encryption mechanism employed in some legacy systems.

Uploaded by

Love
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

DESCRIPTION AND THE DESIGN PRINCIPLE OF IDEA

The International Data Encryption Algorithm (IDEA) is a symmetric-key block cipher that
made its debut in 1991. Its primary goal was to establish robust encryption for digital data,
serving a wide array of applications such as secure communications, financial transactions,
and electronic voting systems.

IDEA employs a block cipher with a 64-bit block size and a 128-bit key size. Utilizing an array
of mathematical operations, including modular arithmetic, bit shifting, and eXclusive-OR
(XOR) operations, it transforms plaintext into ciphertext. The cipher is meticulously designed
to offer significant security and resilience against diverse attack techniques, encompassing
differential and linear cryptanalysis.

An advantageous facet of IDEA is its resource-efficient implementation in both software and


hardware. The algorithm demonstrates notable speed and imposes minimal memory and
processing demands. This quality renders it particularly suitable for embedded systems and
scenarios where resource constraints are evident.

While newer encryption algorithms like AES (Advanced Encryption Standard) have
predominantly superseded IDEA in recent years, the latter remains recognized as a potent
and efficacious encryption mechanism. It continues to be leveraged in legacy systems and
applications.

In the realm of cryptography, block ciphers play a pivotal role in shaping numerous
cryptographic algorithms. Their prevalence lies in their aptitude for segmenting substantial
data into fixed-size chunks for encryption. These chunks entail a specified amount of
plaintext, which the cipher processes using a predetermined key length, yielding a fixed size
ciphertext. The strength of an algorithm hinges on the length of its encryption key.

ALGORITHMS AND KEY EXPANSIONS

The Simplified International Data Encryption Algorithm (IDEA) is a symmetric key block
cipher characterized by the following attributes:

 It adopts a fixed 16-bit plaintext, which it divides into four chunks of 4 bits each,
culminating in a 16-bit ciphertext.

 The algorithm operates with a 32-bit key, fragmented into 8 blocks, each
comprising 4 bits.

 The cryptographic process encompasses a sequence of 4 identical complete rounds


and an additional half-round. Each full round integrates 14 steps involving
operations such as bitwise XOR, modulo addition (2^4), and modulo multiplication
(+1).

 Following the four full rounds, the "half-round" condenses to the initial 4 out of the
14 steps previously engaged in full rounds. Executing these rounds mandates a
transition from binary notation to its corresponding decimal form for computation,
then reverting the result to binary form for the ultimate outcome.
The key schedule relies on 6 subkeys of 4 bits each for each complete round and 4 subkeys
for the half-round. Consequently, 4.5 rounds necessitate a total of 28 subkeys. The initial key,
denoted as 'K', directly provides the first 8 subkeys. By rotating the core key leftward by 6
bits between each set of 8, supplementary sets of 8 subkeys are generated, entailing less
than a single rotation per round (3 rotations).

MODE OF OPERATION

IDEA uses a block cipher with a block size of 64 bits and a key size of 128 bits. A block cipher
is a cryptographic algorithm that encrypts fixed-size blocks of data (typically 64 or 128 bits)
at a time using a secret key. It transforms plaintext blocks into ciphertext blocks using a
specific encryption function, and decryption is performed using a corresponding decryption
function and the same secret key. The cipher takes a fixed size of the plaintext in the
encryption process and generates a fixed size ciphertext using a fixed-length key. IDEA
operates on 64-bit blocks of plaintext and produces 64-bit blocks of ciphertext. It uses a
series of mathematical operations, including modular arithmetic, bit shifting, and eXclusive-
OR (XOR) operations, to transform the plaintext into ciphertext. The cipher is designed to be
highly secure and resistant to various types of attacks, including differential and linear
cryptanalysis.

ENCRYPTION

IDEA derives most of its security from multiple interleaved mathematical operations
including modular addition, modular multiplication and bitwise exclusive-OR (XOR). By using
a 128-bit key, IDEA encrypts a 64-bit block of plaintext into a 64-bit block of ciphertext.

One process partitions the plaintext block into four 16-bit subblocks for each of the eight
complete rounds, namely X1, X2, X3 and X4. Another process produces six 16-bit key
subblocks for each of the encryption rounds, namely K1, K2, K3, K4, K5 and K6.

For subsequent output transformation, a further four 16-bit key subblocks are required.
Thus, from a 128-bit key, a total of 52 16-bit subblocks are generated.

In each complete round, three algebraic operations are performed: bitwise XOR, addition
modulo (216) and multiplication modulo (216+1).

The 14 steps for a complete round are the following:

1. Multiply X1 with Z1.

2. Add X2 to Z2.

3. Add X3 to Z3.

4. Multiply X4 with Z4.

5. Bitwise XOR the results of steps 1 and 3.

6. Bitwise XOR the results of steps 2 and 4.


7. Multiply the result of step 5 with Z5.

8. Add the results of steps 6 and 7.

9. Multiply the result of step 8 with Z6.

10. Add the results of steps 7 and 9.

11. Bitwise XOR the results of steps 1 and 9.

12. Bitwise XOR the results of steps 3 and 9.

13. Bitwise XOR the results of steps 2 and 10.

14. Bitwise XOR the results of steps 4 and 10.

Six subkeys are used in each of the eight rounds, and the final 4 subkeys are used in the
ninth half-round final transformation. Swapping occurs for every round until the final
complete round (round 8). After eight complete rounds, the final half-round transformation
occurs. The steps involved are the following:

1. Multiply X1 with the first subkey.

2. Add X2 with the second subkey.

3. Add X3 with the third subkey.

4. Multiply X4 with the fourth subkey.

The concatenation of the four blocks is the encrypted output.

The diagram below depicts the steps for a complete round:


DECRYPTION

The decryption process uses the same steps as the encryption process. However, different
16-bit key subblocks are generated. Each of the 52 16-bit key subblocks used for decryption
is the inverse of the key subblock used during encryption with respect to applied algebraic
operations. Also, these subblocks are used in reverse order during decryption. So, if we
numbered them 1 to 52 during encryption, we'd use them in the order 52 to 1 for decryption.
Decryption in IDEA works on the shoes and socks principle, i.e., the last encryption is the first
to be removed. Therefore IDEA decryption reverses the steps of encryption by using special
key parts in the opposite order, to allow us to convert the ciphertext back into plaintext.

SECURITY

IDEA is considered to be a very secure encryption algorithm. No successful algebraic or linear


flaws have been reported as of yet. A significant portion of its security comes from the
interleaving of operations from different groups, including bitwise eXclusive-OR (XOR),
modular addition, and multiplication. There are, however, other encryption algorithms that
are considered more secure than IDEA, such as Advanced Encryption Standard (AES) and the
Rivest–Shamir–Adleman (RSA) algorithm.

Pros:
 IDEA is considered to be a very secure encryption algorithm.

 No successful linear or algebraic weaknesses have been reported.

 IDEA is patent-free and thus completely free for all uses.

Cons:
 Other encryption methods, such Advanced Encryption Standard (AES), are thought
to be more secure than IDEA.

 As of 2007, the best attack applied to all keys could break IDEA reduced to 6
rounds (the full IDEA cipher uses 8.5 rounds).

 IDEA is not widely used anymore.

You might also like