Question

2.3 Perhaps the simplest "serious" symmetric block encryption algorithm is the Tiny Encryption Algorithm (TEA). TEA operates on 64-bit blocks of plaintext using a 128-bit key. The plaintext is divided into

two 32-bit blocks (Lo, Ro), and the key is divided into four 32-bit blocks (Ko, K₁, K2, K3). Encryption involves repeated appli- cation of a pair of rounds, defined as follows for rounds i and i+1: -non lo buon L₁ = R₁-1 R₁ Li+1 = R Ri+LF(R₁, K₂, K3, 8+1) = = Li-1 F(R-1, Ko, K₁, 8;) where F is defined as giuo F(M, Kj, K, 8) = ((M<<<4) EK) ((M>> 5) HK) (M= 8) and where the logical shift of x by y bits is denoted by xy, the logical right shift of x by y bits is denoted by xy, and 8; is a sequence of predetermined constants. a. Comment on the significance and benefit of using the sequence of constants. b. Illustrate the operation of TEA using a block diagram or flow chart type of depiction. e. If only one pair of rounds is used, then the ciphertext consists of the 64-bit block (L2, R₂). For this case, express the decryption algorithm in terms of equations. d. Repeat part (c) using an illustration similar to that used for part (b).

Fig: 1