Uploaded by Aws Masri

Tiny Encryption Algorithm

advertisement
Tiny Encryption Algorithm
Introduction:
The Tiny Encryption Algorithm (TEA) is a block cipher function with
very simple operations. TEA uses Feistel structure and uses simple XOR,
232 addition modulo, Shift left and shift right operations for encryption.
The Tiny algorithm is well known for being a lightweight cryptographic
function that ensures both information security as well as ease of
implementation in terms of power, speed and cost.
TEA Process:
TEA uses Feistel structure with 64 rounds or 32 cycles where one cycle
is made of two of Feistel rounds. The block size of the plaintext is 64-bits,
which will be divided into two 32-bit words. The key size is 128 bits,
which will be divided into four 32-bit key words [𝑲𝟎 , 𝑲𝟏 , 𝑲𝟐 , 𝑲𝟑 ]. TEA
uses 𝑲𝟎 and 𝑲𝟏 in the odd numbered rounds and 𝑲𝟐 and 𝑲𝟑 . in the even
numbered rounds. The 32 bit sub-keys [𝑲𝟎 , 𝑲𝟏 , 𝑲𝟐 , 𝑲𝟑 ]required are
generated by pseudorandom number generator using the linear feedback
shift register. The encryption and decryption processes are identical. A
sample of a TEA cycle goes as the following:
1. At first, the 64-bits plaintext is split into two inputs with 32- bits each, 𝑨𝒊 and 𝑩𝒊 The
128 bits key is divided into four 32-bit key words [𝑲𝟎 −𝑲𝟑 ].
2. After that, the initial 32 right most input bits, B, will undergo three operations:
a. Left-shifted with 4 bits and the result is then being added up with the first subkey 𝑲𝟎 .
b. The same initial 𝑩𝒊 , is added up with Delta, a constant which is 2654435769 in
decimal value, and the result is being stored in the memory. Delta simply serves
to ensure that encryption and decryption in each round is different. If it wasn’t for
delta, changing the encryption on each round, the cipher would be vulnerable to a
slide attack
c. The same initial 𝑩𝒊 , is right-shifted with 5-bits and the result is then being added
up with the second sub-key 𝑲𝟏 .
d. The results from the past steps (a, b, c) are then XORed with each other to
produce 𝑨𝒙 .
3. 𝑨𝒙 is then added with the leftmost 32-bits, 𝑨𝒊 , to produce 𝑨𝒊+𝟏 . This marks the end of the
first Feistel round (half-cycle).
4. The second round is almost identical as the first round. 𝑨𝒊+𝟏 , the result from the first
round, goes under the same operations as in step 2 resulting in 𝑩𝒙 except that the keys
used will be 𝑲𝟐 and 𝑲𝟑 .
5. 𝑩𝒙 is then added with the rightmost 32-bits 𝑩𝒊 , to produce 𝑩𝒊+𝟏 . This marks the end of
the second and final round of the Feistel, hence completing a TEA cycle.
Conclusion:
TEA is one of the fastest and most efficient cryptographic algorithm compared to other
algorithms such as IDEA and AES due to its simplicity. The cipher is extremely compact and
can be used in a wide range of security applications including confidentiality, hashing, random
number generation and in modern applications such as distribution of pay-as-you-go real-time
video over broadband Internet. It also provides good security for mobile systems such as RFID
where hackers do not have enough time to break the security.
Download