1. Trang chủ
  2. » Luận Văn - Báo Cáo

HỆ MÃ HÓA TIÊU CHUẨN TIÊN TIẾN Advanced Encryption Standard AES

17 1,6K 10

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 245,5 KB

Nội dung

HỆ MÃ HÓA TIÊU CHUẨN TIÊN TIẾN Advanced Encryption Standard AES Sự ra đời của hệ mã hóa AES? Hệ mã hóa AES và Quy trình mã hóa Thuật toán mã hóa và giải mã AES Thuật toán sinh khóa AES Độ an toàn của hệ mã hóa AES Demo chương trình

HỆ MÃ HÓA TIÊU CHUẨN TIÊN TIẾN Advanced Encryption Standard - AES Học viên: Trần Phương Nam Giảng viên: PGS.TS Trịnh Nhật Tiến Nội Dung • Sự ra đời của hệ mã hóa AES? • Hệ mã hóa AES và Quy trình mã hóa • Thuật toán mã hóa và giải mã AES • Thuật toán sinh khóa AES • Độ an toàn của hệ mã hóa AES • Demo chương trình Sự ra đời của hệ mã hóa AES? • Thuật toán mã hóa khối đối xứng • Được công bố năm 2001 • Dùng để thay thế cho hệ mã hóa DES và 3DES DES: dễ bị tấn công 3DES: chậm Hệ mã hóa AES • Khối dữ liệu đầu vào có kích thước là 128 bit • Kích thước của khóa tùy thuộc vào từng trường hợp cụ thể có thể 128, 192 or 256 bits Key size (words/bytes/bits) 4/16/128 6/24/192 8/32/256 Number of rounds 10 12 14 Expanded key size (words/byte) 44/176 52/208 60/240 Hệ mã hóa AES • Khóa nhận được như mảng đầu vào gồm 4 hàng và Nk cột • Nk = 4,6, hoặc 8, là biểu diễn độ dài của khóa • Khóa đầu vào được mở rộng thành một mảng các từ 32 bits • 4 từ khác nhau như một khóa của mỗi vòng k0 k4 k8 k12 k1 k2 k3 k5 k6 k7 k9 k10 k11 k13 k14 k15 w0 w1 w2 …… w42 w43 Hệ mã hóa AES • Độ dài khối đầu vào là128 • Sao chép trạng thái của mảng với Nb cột (Nb=4) in0 in4 in8 in12 in1 in2 in3 in5 in6 in7 in9 in10 in11 in13 in14 in15 S00 S01 S02 S03 S10 S20 S30 S11 S21 S31 S12 S22 S32 S13 S23 S33 o0 o4 o8 o12 o1 o2 o3 o5 o6 o7 o9 o10 o11 o13 o14 o15 Input State array Output Hệ mã hóa AES • Số vòng được thay đổi phụ thuộc vào kích thước của khóa – ký hiệu Nr • Mỗi vòng là sự lặp lại các chức năng mà thực hiện chuyển đổi trên mạng trạng thái • Gồm 4 chức năng chính: một hàm hoán vị, 3 hàm thay thế. Substitute bytes, Shift rows, Mix columns, Add round key Thuật toán mã hóa AES • AddRoundKey() – thực hiện phép XOR bit giữa trạng thái trung gian (state) và một khóa vòng lặp (Round Key) • MixColumns() – nhận tất cả các cột của một trạng thái (state) và trộn với dữ liệu của nó (không phụ thuộc lẫn nhau) để nhận được cột mới. • ShiftRows() – xử lý các trạng thái bằng cách dịch vòng ba hàng cuối của trạng thái với số lần dịch khác nhau • SubBytes() – xử lý một trạng thái bằng cách sử dụng một bảng thế phi tuyến các byte (S-box) thao tác trên mỗi byte một cách độc lập Thuật toán mã hóa AES Add round key Substitute bytes Shift rows Mix columns Add Round key Substitute bytes Shift rows Mix columns Add round key Substitute bytes Shift rows Add round key plaintext Cipher text key W[4,7] W[36,39] W[40,43] R o u n d 1 R o u n d 9 Thuật toán mã hóa AES Cipher(byte in[4*Nb], byte out[4*Nb], word w[Nb*(Nr+1)]) Begin byte state[4,Nb] state = in AddRoundKey(state, w[0, Nb-1]) for round=1 to Nr-1 SubBytes(state) ShiftRows(state) MixColumns(state) AddRoundKey(state, w[round*Nb, round+1)*Nb-1]) end for SubBytes(state) ShiftRows(state) AddRoundKey(state, w[Nr*Nb, (Nr+1)*Nb-1) Out = state end [...]... AddRoundKey(state, w[0, Nb-1]) Out = state end Thuật toán giải mã AES • Thuật toán giải mã sử dụng chìa khóa mở rộng theo thứ tự ngược • Các chức năng trong giải mã là hình thức đảo ngược các chức năng • Thuật toán giải mã không giống với thuật toán mã hóa • Vòng cuối chỉ thực hiện 3 giai đoạn Độ an toàn của thuật toán • Thiết kế và độ dài khóa của thuật toán AES (128, 192 và 256 bít) là đủ an toàn • Sự phức tạp...Thuật toán mã hóa AES • Chỉ hàm Add round key tạo ra sự sử dụng các khóa • Ba hàm còn lại được sử dụng phương thức “mập mờ” và “khuếch tán” • Vòng cuối cùng chỉ bao gồm thực hiện ba giai đoạn Thuật toán giải mã AES • InvSubBytes(): là nghịch đảo của phép thay thế theo SubBytes() • InvShiftRows(): là phép biến... đổi thuận nghịch vì nó chỉ áp dụng một phép toán XOR Thuật toán giải mã AES ciphertext Add round key Inv Sub bytes Inv Sub bytes Inv Sub bytes Add round key Add round key Add round key Inv Mix Columns W[36,39] key Round 9 Inv Shift rows Round 1 Inv Shift rows Inv Mix columns W[4,7] Inv Shift rows plaintext W[0,3] Thuật toán giải mã AES InvCipher(byte in[4*Nb], byte out[4*Nb], word w[Nb*(Nr+1)]) Begin . và Quy trình mã hóa • Thuật toán mã hóa và giải mã AES • Thuật toán sinh khóa AES • Độ an toàn của hệ mã hóa AES • Demo chương trình Sự ra đời của hệ mã hóa AES? • Thuật toán mã hóa khối đối. HỆ MÃ HÓA TIÊU CHUẨN TIÊN TIẾN Advanced Encryption Standard - AES Học viên: Trần Phương Nam Giảng viên: PGS.TS Trịnh Nhật Tiến Nội Dung • Sự ra đời của hệ mã hóa AES? • Hệ mã hóa AES và. 2001 • Dùng để thay thế cho hệ mã hóa DES và 3DES DES: dễ bị tấn công 3DES: chậm Hệ mã hóa AES • Khối dữ liệu đầu vào có kích thước là 128 bit • Kích thước của khóa tùy thuộc vào từng trường

Ngày đăng: 25/10/2014, 22:06

TỪ KHÓA LIÊN QUAN

w