Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Use the block cipher F_k(x) in Example 3.5.1 to encipher the plaintext AH by usi

ID: 3661415 • Letter: U

Question

Use the block cipher F_k(x) in Example 3.5.1 to encipher the plaintext AH by using the 8-bit binary ASCII representation of the letters, subdividing into 4-bit blocks, and using the key k = 001. The answer is: AH in binary ASCII and subdivided into 4-bit blocks is 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0 Enciphering with k = 001 gives 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0 but I need to show work - any help is appreciated. Example 3.5.1 is: Let S(x) be a function defined by the following table: Such a function is sometimes referred to in the literature as an s-box.

Explanation / Answer

Let fk1k2k3 (x1x2) be the function

let Fk(x) be the corresponding Feistel function, whose formula

. Calculate F101(1001) and verify that the formula for F 1 k (x),

given by F 1 k (y1y2y3y4) = ((y3y4)fk(y1y2))||y1y2,

applied to this value recovers 1001.

(b) Let fk(x) be the 3-bit-valued function defined by fk1k2 (x1x2x3)=(k2 · x1 mod 2)((k1 · x2 + 1) mod 2)((k1 · k2 · x1 + x3) mod 2), and let Fk(x) be the corresponding 6-bit-valued Feistel function, Fk(x), where k = k1k2 is a 2-bit key and x = x1x2x3x4x5x6 is a 6-bit plaintext. Compute F11(001100). Use the formula at the bottom of page 225 to compute F 1 11 on the value obtained and verify that it recovers the original string 001100. A solution to this exercise is as follows.

(a) F101(1001) = (01)||(10 f101(01))

Now f101(01) = 1+1 · 02 + 0 · 0 · 1 mod 2 12 · 0 · 1+1 · 12 mod 2 = 11 so F101(1001) = (01)||(10 11) = (01)||(01) = 0101 Also F 1 101(0101) = (01 f101(01))||(01).

Since f101(01) = 1+1 · 02 + 0 · 0 · 1 mod 2 12 · 0 · 1+1 · 12 mod 2 19 = 11, F 1 101(0101) = (01 11)||01 = (10)||(01) = 1001. (b) R(x) = 100,

L(x) = 001, and f11(R(x)) = f11(100) = (1 · 1)(1 · 0 + 1)(1 · 1 · 1 + 0) = 111 Then F11(001100) = (100)||(001 111) = (100)||(110) = 100110.

3. (a) y0 = Fk(iv x0), yi = Fk(yi1 xi), i = 1, 2, .... (b) x0 = iv F 1 k (y0), xi = yi1 F 1 k (yi), i = 1, 2, .... 4. Y1 = Fk(iv), x1 = y1 Lm(Y1); Yi = Fk(S(yi1, yi1)), xi = yi Lm(Yi), i = 1, 2, .... 5. F 1 k1k2 (y1y2y3y4) = y3 + k1k2y1 + k1y2 2 (y4+k1y1y2+k2y1y2)(y1)(y2) mod 2.