Biểu diễn khối tin

Một phần của tài liệu (LUẬN văn THẠC sĩ) bảo mật thông tin (Trang 54 - 56)

CHƯƠNG 1 BẢO MẬT THÔNG TIN

2.5.1. Biểu diễn khối tin

AES mật mã các khối tin 128 bits, sử dụng khối khóa 128, 192, hoặc 256 bits. Tám bits hợp thành 1 byte. Thứ tự bit trong khối (ký hiệu: i) ñánh số từ trái sang phải, từ trên xuống dưới, bắt ñầu từ 0. Các bits trong 1 byte (ký hiệu: bi) cũng ñánh số bắt ñầu từ 0, nhưng từ phải sang trái. Một byte {b7, b6, b5, b4, b3, b2, b1, b0} có thể biểu diễn dưới dạng ña thức sau, trong ñó bi nhận giá trị là 0, hoặc 1:

b(x) = b7x7 + b6x6 + b5x5 + b4x4 + b3x3 + b2x2 + b1x + b0 = 7 i i 0 b x i=

Bốn bits hệ nhị phân (binary) tương ứng 1 chữ số hệ thập lục phân (hexadecimal):

Binary Hexa Binary Hexa Binary Hexa Binary Hexa

0000 0 0100 4 1000 8 1100 c

0001 1 0101 5 1001 9 1101 d

0010 2 0110 6 1010 a 1110 e

0011 3 0111 7 1011 b 1111 f

Bảng 2.9. Bảng tương ứng Binary – Hexadecimal (Hexa)

Do ñó, 2 chữ số hệ thập lục phân {h1h0} cũng biểu diễn 1 byte. Ví dụ, {01101011} biểu diễn bởi ña thức x6 + x5 + x3 + x + 1, hoặc 2 chữ số {6b}.

Một khối có thể biểu diễn như dãy các bytes. Cụ thể, khối 128 bits {input0, input1, input2, input3, …, input126, input127} biểu diễn bởi dãy bytes a[0], a[2], …, a[15] (hoặc a0, a1, …, a15) với:

a[0] = {input0, input1, …, input7} a[1] = {input8, input9, …, input15} …

Khối tin còn biểu diễn dưới dạng “State”, là mảng 2 chiều có 4 hàng, Nb cột. Mỗi phần tử trong State là một byte, ký hiệu s[r,c] (hoặc sr,c) trong ñó r là chỉ số hàng (0 ≤ r < 4), c là chỉ số cột (0 ≤ c < Nb). Với AES, Nb = 4, là kết quả của phép chia kích thước khối (128 bits) cho 32 bits. Khối có biểu diễn bởi dãy bytes a[i] sẽ biểu diễn dưới dạng State qua công thức:

s[r,c] = a[r + 4c]

Nói cách khác, State là dãy bytes a[i] xếp từ thấp ñến cao vào mảng 2 chiều 4 hàng, Nb cột theo trật tự từ trên xuống dưới, từ trái qua phải. AES mật mã trên biểu diễn State của khối tin. Do vậy, trước và sau khi mật mã chúng ta phải thực hiện chuyển ñổi giữa 2 cách biểu diễn này. Dưới ñây là tương ứng giữa biểu diễn State và dãy bytes a[0], a[1], a[2], …, a[15] của khối tin AES (khối 128 bits, Nb = 4):

Hình 2.22. Tương ứng s[r,c] và a[i]

Mỗi cột trong State gồm 4 bytes có thể hiểu như một từ (32 bits), thứ tự byte xác ñịnh bởi chỉ số r. Khi ñó State là một dãy các từ, cụ thể, khối tin AES ñược biểu diễn bằng dãy w[0], w[1], w[2], w[3] (hoặc w0, w1, w2, w3), với: w[0] = s[0,0], s[1,0], s[2,0], s[3,0] w[1] = s[0,1], s[1,1], s[2,1], s[3,1] w[2] = s[0,2], s[1,2], s[2,2], s[3,2] w[3] = s[0,3], s[1,3], s[2,3], s[3,3] Hay biểu diễn ña thức:

w[0] (x) = s[3,0] x3 + s[2,0] x2 + s[1,0] x + s[0,0] w[1] (x) = s[3,1] x3 + s[2,1] x2 + s[1,1] x + s[0,1] w[2] (x) = s[3,2] x3 + s[2,2] x2 + s[1,2] x + s[0,2] w[3] (x) = s[3,3] x3 + s[2,3] x2 + s[1,3] x + s[0,3]

Một phần của tài liệu (LUẬN văn THẠC sĩ) bảo mật thông tin (Trang 54 - 56)

Tải bản đầy đủ (PDF)

(88 trang)