Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

thuật toán mã hóa và ứng dụng phần 7 potx
Nội dung xem thử
Mô tả chi tiết
Chương 5
164
Hình 5.16. Cấu trúc mã hóa
S–box 0
S–box 1
S–box 2
S–box 3
MDS
g
S–box 0
S–box 1
S–box 2
S–box 3
MDS
g
PHT
K2r+8
K2r+9
<<< 8
F
A B Thông tin cần mã hóa (128 bit) C D
A’ B’ Thông tin đã mã hóa (128 bit) C’ D’
K4 K5 K6 K7
K0 K1 K2
<<< 1
K3
:
:
input
whitening
1
chu kỳ
15
chu kỳ
Hoán vị
cuối
output
whitening
>>> 1
Các thuật toán ứng cử viên AES
165
Trong bước whitening của dữ liệu vào, các từ này XOR với bốn từ của khóa mở
rộng:
R0, i = Pi ⊕ Ki, i = 0, ..., 3 (5.25)
Với mỗi chu kỳ trong 16 chu kỳ, hai từ A, B và chỉ số chu kỳ được sử dụng làm
dữ liệu vào của hàm F. Từ C XOR với từ kết quả thứ nhất của hàm F và quay
phải 1 bit. Từ thứ D quay trái 1 bit và XOR với từ kết quả thứ hai của hàm F.
Cuối cùng, hai từ A và C, B và D hoán đổi cho nhau. Do đó:
(Fr, 0, Fr, 1) = F(Rr, 0, Rr, 1, r)
Rr+1, 0 = ROR(Rr, 2 ⊕ Fr, 0, 1)
Rr+1, 1 = ROL(Rr, 3, 1) ⊕ Fr, 1
Rr+1, 2 = Rr, 0
Rr+1, 3 = Rr, 1 (5.26)
r ∈ (0, ..., 15), ROR và ROL là hai hàm quay phải và trái với đối số thứ nhất là từ
32 bit được quay, đối số thứ hai là số bit cần quay.
Bước whitening dữ liệu ra không thực hiện thao tác hoán chuyển ở chu kỳ cuối
mà nó thực hiện phép XOR các từ dữ liệu với bốn từ khóa mở rộng.
Ci = R16, (i+2) mod 4 ⊕ Ki+4, i = 0, ..., 3 (5.27)
Sau đó, bốn từ của văn bản mã hóa được ghi ra thành 16 byte c0, ..., c15 sử dụng
quy ước little–endian như đã áp dụng với văn bản ban đầu.
ci = [ ] ⎥
⎦
⎤ ⎢
⎣
⎡ 8( mod 4)
/ 4
2 i
Ci mod 28
, i = 0, ..., 15 (5.28)