Mụ tả thuật toỏn

Một phần của tài liệu Ứng dụng hệ mật mã khóa công khai trong quản lý đề thi (Trang 53 - 54)

Hỡnh 2.5: Mụ tả thuật toỏn AES

Trong bước AddRoundKey, mỗi byte được kết hợp với một byte trong khúa con của chu trỡnh sử dụng phộp toỏn XOR (⊕).

Hỡnh 2.6: Bước SubBytes

Trong bước SubBytes, mỗi byte được thay thế bằng một byte theo bảng tra

Số húa bởi Trung tõm Học liệu – Đại học Thỏi Nguyờn http://www.lrc-tnu.edu.vn Hỡnh 2.7: Bước ShiftRows

Trong bước ShiftRows, cỏc byte trong mỗi hàng được dịch vũng trỏi. Số vị trớ dịch chuyển tựy thuộc từng hàng. Trong bước MixColumns, mỗi cột được nhõn với một hệ số cố định c(x).

Hỡnh 2.8: Bước MixColumns

Mặc dự 2 tờn AES và Rijndael vẫn thường được gọi thay thế cho nhau nhưng trờn thực tế thỡ 2 thuật toỏn khụng hoàn toàn giống nhau. AES chỉ làm việc với cỏc khối dữ liệu (đầu vào và đầu ra) 128 bớt và khúa cú độ dài 128, 192 hoặc 256 bớt trong khi Rijndael cú thể làm việc với dữ liệu và khúa cú độ dài bất kỳ là bội số của 32 bớt nằm trong khoảng từ 128 tới 256 bớt. Cỏc khúa con sử dụng trong cỏc chu trỡnh được tạo ra bởi quỏ trỡnh tạo khúa con Rijndael. Mỗi khúa con cũng là một cột gồm 4 byte. Hầu hết cỏc phộp toỏn trong thuật toỏn AES đều thực hiện trong một trường hữu hạn của cỏc byte. Mỗi khối dữ liệu 128 bit đầu vào được chia thành 16 byte (mỗi byte 8 bit), cú thể xếp thành 4 cột, mỗi cột 4 phần tử hay là một ma trận 4x4 của cỏc byte, nú được gọi là ma trận trạng thỏi, hay vắn tắt là trạng thỏi (tiếng Anh: state, trang thỏi trong Rijndael cú thể cú thờm cột). Trong quỏ trỡnh thực hiện thuật toỏn cỏc toỏn tử tỏc động để biến đổi ma trận trạng thỏi này.

Một phần của tài liệu Ứng dụng hệ mật mã khóa công khai trong quản lý đề thi (Trang 53 - 54)