Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
733,27 KB
Nội dung
i Header Page of 113 HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG - ĐẶNG VĂN TUẤN ỨNG DỤNG CHUẨN MÃ HÓA NÂNG CAO (AES) TRONG GIAO THỨC ĐÓNG GÓI BẢO MẬT DỮ LIỆU (ESP) CHUYÊN NGÀNH : KỸ THUẬT VIỄN THÔNG MÃ SỐ: 60.52.02.08 TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT HÀ NỘI – NĂM 2014 Footer Page of 113 ii Header Page of 113 Luận văn hoàn thành tại: HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG Người hướng dẫn khoa học: TS Ngô Đức Thiện (Ghi rõ học hàm, học vị) Phản biện 1: PGS.TS Trần Hồng Quân Phản biện 2: PGS.TS Trương Vũ Bằng Giang Luận văn bảo vệ trước Hội đồng chấm luận văn thạc sĩ Học viện Công nghệ Bưu Viễn thông Vào lúc: 30 ngày 15 tháng 02 năm 2014 Có thể tìm hiểu luận văn tại: - Thư viện Học viện Công nghệ Bưu Viễn thông Footer Page of 113 Header Page of 113 MỞ ĐẦU Với phát triển nhanh chóng khoa hoc công nghệ, tốc độ xử lý vi xử lý ngày cao, phương pháp mã hóa tiêu chuẩn (DES - Data Encryption Standard) trở nên không an toàn bảo mật thông tin độ dài khóa mã ngắn (56 bits) Thuật toán Rijndael hai tác giả Vincent Rijmen Joan Daeman Viện tiêu chuẩn công nghệ Hoa kỳ (NIST - National Institute Standards of Technology) thức chọn trở thành chuẩn mã hóa nâng cao (AES - Advanced Encryption Standard) từ ngày 02 tháng 10 năm 2000 nhằm phục vụ nhu cầu bảo mật thông tin liên lạc Chính phủ Hoa Kỳ ứng dụng dân Ngày nay, ứng dụng chuẩn mật mã nâng cao sử dụng ngày phổ biến lĩnh vực khác giới Chuẩn mật mã nâng cao không đơn mã hóa giải mã thông tin mà bao gồm nhiều vấn đề khác cần nghiên cứu giải ứng dụng giao thức bảo mật liệu truyền mạng Internet Với phát triển ngày nhanh chóng Internet ứng dụng giao dịch điện tử mạng, nhu cầu bảo vệ thông tin hệ thống ứng dụng điện tử ngày quan tâm có ý nghĩa quan trọng Vì việc nghiên cứu chuẩn mật mã nâng cao ứng dụng trường bảo mật thông tin cần thiết Ngoài phần mở đầu, kết luận mục tài liệu tham khảo luận văn gồm chương: Chương 1: Tổng quan chuẩn mã hóa nâng cao (AES) Chương 2: Giao thức đóng gói bảo mật liệu (ESP) Chương 3: Ứng dụng chuẩn mã hóa nâng cao giao thức đóng gói bảo mật liệu Footer Page of 113 Header Page of 113 CHƢƠNG 1: TỔNG QUAN VỀ CHUẨN MÃ HÓA NÂNG CAO (AES) 1.1 Đặt vấn đề Với tốc độ khả xử lý vi xử lý ngày nâng cao, phương pháp mã hóa chuẩn DES, Tri DES trở nên không an toàn bảo mật thông tin Vì cần nghiên cứu chuẩn mật mã đáp ứng nhu cầu bảo mật thông tin, chuẩn mã hóa nâng cao AES đời Có năm thuật toán vào vòng chung kết, gồm có: Mars, RC6, Serpent, Twofish Rijndael Các thuật toán đạt yêu cầu AES nên gọi chung thuật toán ứng viên AES Các thuật toán ứng viên AES có độ an toàn cao, chi phí thực thấp Tuy nhiên với thiết kế đẹp đơn giản thuật toán Rijndael hai nhà mật mã học người Bỉ Joan Deamen Vincent Rijmen thiết kế chọn thuật toán AES 1.2 Thuật toán AES Cơ sở toán học AES Trong AES phép toán cộng nhân thực byte trường hữu hạn Galois GF( ) Các phần tử trường GF( ) xem đa thức [1] Phép cộng: Phép cộng hai phần tử (các byte) trường hữu hạn thực cách cộng theo modulo bít tương ứng biểu diễn byte Phép cộng byte A B với: A a1 a a3 a a5 a6 a7 a8 B b1 b2 b3 b b5 b7 b8 C = A + B với b6 C c1 c2 c3 c4 c5 c6 c7 c8 Ci a i bi mod với i 1,8 Các phần tử trường hữu hạn biểu diễn dạng đa thức Ví dụ tổng 73H 4EH 3DH Footer Page of 113 A 73H B 4EH (viết dạng số 16 - hexa) là: Header Page of 113 Viết dạng nhị phân: 01110011 01001110 00111101 Viết dạng đa thức: x x5 x x x x3 x x x5 x x3 x Phép nhân: Phép nhân thực GF( ) cách nhân hai đa thức rút gọn theo modulo đa thức bất khả quy m(x) Trong AES đa thức bất khả quy m x x8 x x x Ví dụ: A C3H , B 85H a x x7 x6 x tương ứng với: b x x7 x Khi C = A B c x a x .b x mod x8 x x x c x x7 x5 x3 x x hay C AEH 10101110 1.3 Mô tả AES theo Rijndael 1.3.1 Đầu vào đầu phép mã giải mã AES mã hóa khối rõ M 128 bít thành khối mã C 128 bít cách dùng khóa mã K có độ dài 128 bít (hoặc 192 256 bít) tương ứng với AES-128 (hoặc AES-192 AES-256) Thuật toán thực byte kích thước khối đầu vào đầu khóa biểu thị từ 32 bít (4 byte) Đối với phép mã hóa, đầu vào khối rõ khóa, đầu mã Đối với phép giải mã, đầu vào khối mã khóa, đầu khối rõ Biến đổi vòng Rijndael bước nó, thao tác kết trung gian, gọi trạng thái Trạng thái vẽ mảng chữ nhật byte với dòng Số cột trạng thái ký hiệu Nb độ dài khối chia cho 32 (đối với AES Nb 4) Độ dài khóa ký hiệu Nk =4, 6, (bằng độ dài khóa chia cho 32 bit word) Số vòng Footer Page of 113 Header Page of 113 ký hiệu Nr phụ thuộc vào độ dài khối độ dài khóa, với N r = 10 Nk = 4, Nr = 12 Nk = 6, Nr = 14 Nk = Bảng 1.1: Bảng kết hợp độ dài khóa- kích thƣớc khối- số vòng 1.3.2 Cấu trúc AES Rijndael mã khối khóa - lặp: bao gồm việc áp dụng lặp ánh xạ vòng trạng thái Hình vẽ 1.1 sau minh họa cấu trúc sở thuật toán AES Hình 1.1: Cấu trúc sở thuật toán AES Tầng phi tuyến: Áp dụng song song S - box mà có tính chất phi tuyến trường hợp tối ưu Tầng trộn tuyến tính: Đảm bảo khuếch tán cao qua nhiều vòng Tầng cộng khóa: Là phép XOR bit Round key trạng thái trung gian Trong thực tế, tầng trộn tuyến tính Rijndael lại bao gồm hai tầng con, ShiftRows MixColumns 1.3.3 Quy trình mã hóa giải mã Quy trình mã hóa giải mã AES sử dụng hàm lặp kết hợp Footer Page of 113 Header Page of 113 bốn hàm biến đổi sau (đơn vị xử lý byte): + Mỗi byte trạng thái thay byte khác sử dụng theo bảng (S-box) + Dịch chuyển, hàng trạng thái dịch vòng theo số bước khác + Quá trình trộn làm việc theo cột khối theo phép biến đổi tuyến tính + Cộng khóa RoundKey vào trạng thái Giải mã AES cách biến đổi ngược biến đổi phép mã hóa AES cách biến đổi tương đương Các biến đổi minh họa qua hình 1.2 (với độ dài khóa 128bits, Nr =10) [1]: Hình 1.2: Quy trình mã hóa giải mã AES 1.3.3.1 Quy trình mã hóa Toàn phép mã hóa mô tả sau: (1) S = AddRoundKey (P,W0) (2) For i = to Nr -1 S = SubBytes (S) S = ShiftRows (S) S = MixColumns (S) S = AddRoundKey (S, W) (3) S = SubBytes (S), S = ShiftRows (S) Footer Page of 113 Header Page of 113 (4) C = AddRoundKey (S, WNr) 1.3.3.2 Quy trình giải mã Giải mã Rijndael có cách giải mã là: giải mã trực tiếp giải mã thuật toán giải mã tương đương Giải mã trực tiếp: Mọi biến đổi dùng phép tính mã hóa khả nghịch Cài đặt phép tính giải mã giữ nguyên thứ tự biến đổi dùng phép mã hóa, thay phép biến đổi biến đổi ngược chúng Giải mã tương đương: thực cách đảo ngược thứ tự hàm SubByte-1() ShiftRows-1(), thay đổi thứ tự AddRoundKey(), MixColumns-1 () lần lặp sau thay đổi khóa cho giá trị Round = → Nr-1 cách sử dụng biến đổi MixColumns() Các từ cuối danh sách khóa không bị thay đổi ta áp dụng phương pháp 1.3.4 1.3.4.1 Các phép biến đổi mã hóa giải mã AES Biến đổi SubBytes() Biến đổi SubBytes() thay byte riêng rẽ state sr,c giá trị s’r,c sử dụng bảng thay (S - box), bảng có ngược Hình 1.3 ảnh hưởng biến đổi SubBytes() state [1] Hình 1.3: SubBytes() áp dụng S - box cho byte state 1.3.4.2 Biến đổi ShiftRows() Hình 1.4 biến đổi ShiftRows() Footer Page of 113 Header Page of 113 Hình 1.4: Dịch vòng ShiftRows() ba hàng cuối state Trong biến đổi ShiftRows(), byte ba hàng cuối trạng thái dịch vòng số byte khác (độ lệch) Cụ thể, biến đổi ShiftRows(), xử lý sau: s’rc = sr(c+r) mod 4, với < r < c