Độ an toàn của hệ thống mật mã hoá dữ liệu des

20 4 0
Độ an toàn của hệ thống mật mã hoá dữ liệu des

Đ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

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA VIỄN THÔNG 1 TIỂU LUẬN KẾT THÚC HỌC PHẦN ĐỘ AN TOÀN CỦA HỆ THỐNG MẬT MÃ HOÁ DỮ LIỆU DES Bài thi cuối kì môn ANM DANH MỤC HÌNH Hình 1 Tổng quát về mật mã ho[.]

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG KHOA VIỄN THÔNG TIỂU LUẬN KẾT THÚC HỌC PHẦN ĐỘ AN TỒN CỦA HỆ THỐNG MẬT MÃ HỐ DỮ LIỆU DES Bài thi cuối kì mơn ANM DANH MỤC HÌNH Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình 10 Tổng quát mật mã hoá DES Sơ đồ tổng quát mã hố DES Cấu trúc vịng DES Kiến trúc tạo đầu hàm S-Box Sơ đồ mã hoá 2DES Sơ đồ giải mã 2DES Sơ đồ mã hoá 3DES khoá Sơ đồ giải hoá 3DES khoá Sơ đồ mã hoá 3DES khoá Sơ đồ mã hoá 3DES khoá DANH MỤC BẢNG BIỂU Bảng Bảng Bảng Bảng Bảng Bảng Bảng Bảng Bảng Bảng 10 Khối hoán vị khởi tạo Khối hoán vị kết thúc Thuật toán sinh khố Chỉ số dịch bit vịng Feistel Thuật toán hoán vị nén khoá Thuật toán Expand Hoạt động hàm S-Box Thuật toán P-Box Các khoá yếu Các khoá nửa yếu Bài thi cuối kì mơn ANM MỤC LỤC LỜI MỞ ĐẦU I Khái quát mật mã hoá DES 1.1 Khái niệm 1.2 Tính chất Sơ đồ mã hoá liệu DES II 2.1 Sơ đồ tổng quát mã hoá DES 2.2 Phân tích mật mã DES 2.2.1 Hoán vị khởi tạo hoán vị kết thúc 2.2.2 Thuật toán sinh khoá 2.2.3 Cấu trúc vòng DES 11 Độ an toàn DES 14 III 3.1 Điểm yếu DES 14 3.1.1 Tính bù 14 3.1.2 Khoá yếu 14 3.2 Các dạng công 15 3.2.1 Tấn cơng vét cạn khóa 15 3.2.2 Phá mã DES theo phương pháp vi sai 16 3.2.3 Phá mã DES theo phương pháp thử tuyến tính 16 3.3 Một số phương pháp khắc phục yếu điểm DES 16 3.3.1 Hiệu ứng lan truyền 16 3.3.2 2DES 17 3.3.3 3DES 18 KẾT LUẬN 20 TÀI LIỆU THAM KHẢO 21 Bài thi cuối kì mơn ANM LỜI MỞ ĐẦU Trước công nghệ thông tin chưa phát triển nói đến vấn đề bảo mật thơng tin người ta thường hay nghĩ đến biện pháp nhằm đảm bảo thơng tin trao đổi cách an tồn bí mật Ngày mạng máy tính trở nên phổ biến, nhu cầu sử dụng Internet người ngày lớn nhiều dịch vụ điện tử thư điện tử, chuyển tiền, thương điện tử áp dụng rộng rãi Các ứng dụng mạng Internet ngày phổ biến, dẫn đến việc bảo mật an tồn thơng tin ngày trở nên cấp thiết Đã có nhiều quốc gia nhà nghiên cứu vấn đề bảo mật đưa nhiều thuật tốn nhằm mục đích thơng tin bảo mật khơng bị đánh cắp Trong tiểu luận nhóm chúng em tìm hiểu thuật tốn DES (Data Encription Standard) Đây thuật toán chuẩn Mỹ nhiều nước giới sử dụng Tuy nhiên, với cơng nghệ phát triển có nhiều lý khiến thuật tốn DES trở nên khơng cịn an toàn tuyệt đối Người ta đưa số thuật toán mở rộng dựa tảng DES để số bit mã hoá tăng lên Sau nhóm chúng em trình bày cấu trúc độ an tồn thuật tốn mã hố DES Đề tài “Độ an tồn hệ thống mật mã hoá liệu DES” chúng em tập trung sâu phân tích độ an tồn, điểm yếu khả bị công phương pháp mật mã hoá Nội dung tiểu luận gồm phần : Phần I Khái quát mật mã hố DES: trình bày phát triển số tính chất mật mã hố DES Phần II Sơ đồ mã hố liệu DES: phân tích cấu trúc tổng quát cách thức vận hành mật mã hố DES Phần III Độ an tồn DES: tập trung làm rõ điểm yếu, dạng cơng số phương pháp nâng cao tính bảo mật, tăng độ an tồn mật mã hố liệu DES Bài thi cuối kì mơn ANM I Khái quát mật mã hoá DES 1.1 Khái niệm DES (viết tắt Data Encryption Standard, hay Tiêu chuẩn Mã hóa Dữ liệu) phương pháp mật mã hóa FIPS (Tiêu chuẩn Xử lý Thơng tin Liên bang Hoa Kỳ) chọn làm chuẩn thức vào năm 1976 DES thuật tốn mã hóa khối: thực xử lý khối thơng tin rõ có độ dài xác định qua trình biến đổi để tạo thành mã có độ dài khơng đổi Hình 1: Tổng qt mật mã hố DES 1.2 Tính chất - Mã DES thuộc hệ mã khối Feistel gồm 16 vòng, đặc biệt trước vào vịng sau vịng 16 DES có thêm hoán vị khởi tạo - Độ dài khối 64 bit - Khóa dùng DES có độ dài 64 bit Tuy nhiên có 56 bit sử dụng, lại bit sử dụng để kiểm tra chẵn lẻ - Ở vòng mã DES dùng khóa có độ dài 48 bit trích từ khóa Hình minh họa vịng mã DES II Sơ đồ mã hố liệu DES 2.1 Sơ đồ tổng quát mã hoá DES Mã hóa DES gồm có ba phần: Phần thứ hoán vị khởi tạo hoán vị kết thúc, phần thứ hai vòng DES, phần thứ ba thuật tốn sinh khóa Bài thi cuối kì mơn ANM Hình 2: Sơ đồ tổng qt mã hố DES Thơng qua sơ đồ tổng qt, ta thấy việc mã hoá DES chia thành phần là: xử lý rõ q trình sinh khố - Xử lý rõ: o Đầu vào rõ 64 bit qua khối hoán vị khởi tạo để xếp bit theo trật tự cho trước mà khơng làm thay đổi kích thước khối o Tiếp theo, khối đưa qua 16 vòng mật mã Feistel Đầu vòng cuối kết hợp rõ đầu vào khố K o Đầu vịng thứ 16 chuỗi 64 bit, hai nửa trái phải chuỗi hoán vị cho o Cuối cùng, bit đưa qua khối hoán vị kết thúc tạo thành mã có kích thước trùng với rõ Bài thi cuối kì mơn ANM - Q trình sinh khố: o Đầu vào khố 64 bit lựa chọn ngẫu nhiên thống bên nhận bên gửi, khoá đưa vào khối hoán vị khoá theo quy tắc cho trước Đầu chuỗi 56 bit chia thành hai nửa trái phải đưa qua khối dịch vòng trái o Trong khối dịch trái, bit dịch số vị trí tuỳ theo số vịng vịng Feistel, sau đưa qua khối PC2 mục đích để hốn vị nén chuỗi từ 56 bit thành chuỗi 48 bit theo quy tắc cho trước o Khoá đưa vào cộng module với kết cho vòng Feistel bên phía rõ 2.2 Phân tích mật mã DES 2.2.1 Hoán vị khởi tạo hoán vị kết thúc Bản rõ M (hexa)= AB091104081307CD Mã nhị phân rõ M: M = 10101011 00001001 00010001 00000100 00001000 00010011 00000111 11001101 Đầu tiên, rõ 64 bit nhị phân M vào khối hoán vị khởi tạo để xếp lại bit cho chuỗi bit hốn vị có kích thước đầu vào Bản rõ M 64 bit đánh số từ trái qua phải từ đến 64 hốn vị khởi tạo hoán đổi bit theo quy tắc hình đây: Bảng 1: Khối hốn vị khởi tạo IP(M) = 10000000 00100101 11001000 11100111 10000001 00000001 10010011 01000001 Sau 16 vịng mã hố Feistel, khối mã đưa vào khối hoán vị kết thúc Khối hoán vị thực hốn đổi vị trí bit theo quy tắc sau: Bài thi cuối kì mơn ANM Bảng 2: Khối hoán vị kết thúc L16 = A005471D (10100000 00000101 01000111 00011101) R16 = 2BC5113B (00101011 11000101 00010001 00111011) IP-1 = 01111111 01001001 00111010 01000011 00000111 11000001 00011000 10010000 Viết dạng số 16 là: 7F493A4307C11890 Bản rõ M = AB091104081307CD sau đưa qua khối mã khoá DES biến đổi thành mã C = 7F493A4307C11890 Hốn vị khởi tạo hốn vị kết thúc khơng có ý nghĩa bảo mật trường hợp kẻ công biết trước rõ hay rõ lựa chọn, tồn hai hoán vị cho mang tính chất kế thừa từ lịch sử 2.2.2 Thuật toán sinh khoá Chọn khoá K = 0123456789ABCDEF (tự chọn ngẫu nhiên 16 bit hexa) K = 00000001 00100011 01000101 01100111 10001001 10101011 11001101 11101111 Đầu tiên, khoá 64 bit nhị phân đưa qua hoán vị nén cho đầu khối mã 56 bit theo quy tắc đây: Khối mã khoá đầu vào 64 bit Khối mã hoá đầu 56 bit Bảng 3: Thuật toán sinh khoá Bài thi cuối kì mơn ANM Sau qua khối thu khối PC1 có giá trị: PC1 = 11110000 10101010 11001100 00001010 10101100 11001111 00000000 Với khối 56 bit khoá đầu chia thành nửa trái KL phải KR với độ dài khối 28 bit C0 = 11110000 10101010 11001100 0000 D0 = 1010 10101100 11001111 00000000 Bản mã C0 D0 dịch vòng trái với bit tuỳ theo số vịng liệt kê bảng Bảng 4: Chỉ số dịch bit vòng Feistel C1 = 11100001 01010101 10011000 0001 (dịch trái bit so với C0) D1 = 0101 01011001 10011110 00000001 (dịch trái bit so với D0) Sau qua vòng dịch ta thu hệ thống khố ứng với vịng đưa qua khối hoán vị nén PC2 Với đầu vào khối mã 56 bit cho đầu chuỗi mã 48 bit theo quy tắc đây: Bảng 5: Thuật toán hoán vị nén khoá K1 = 000010 110000 001001 100111 100110 110100 100110 100101 (0B02679B49A5) Dưới kết khố K sau vịng sau qua khối hoán vị nén PC2: Bài thi cuối kì mơn ANM 2.2.3 Cấu trúc vịng DES Hình 3: Cấu trúc vịng DES - Hàm Expand: 32 bit đầu vào mở rộng thành 48 bit sử dụng thuật toán hoán vị mở rộng với việc nhân đôi số bit Giai đoạn ký hiệu E sơ đồ Bài thi cuối kì mơn ANM Bảng 6: Thuật tốn Expand IP(M) = 10000000 00100101 11001000 11100111 10000001 00000001 10010011 01000001 L0 = 10000000 00100101 11001000 11100111 (32 bit) R0 = 10000001 00000001 10010011 01000001 (32 bit) Chuỗi bit bên phải R0 đưa qua hàm Expand cho kết là: E(R0) = 100000 000010 100000 000011 110010 100110 101000 000011 - XOR khoá: 48 bit thu sau q trình mở rộng XOR với khóa Mười sáu khóa 48 bit tạo từ khóa 56 bit theo chu trình tạo khóa K1 000010 110000 001001 100111 100110 110100 100110 100101 E(R0) 100000 000010 100000 000011 110010 100110 101000 000011 K1 + E(R0) 100010 110010 101001 100100 010100 010010 001110 100110 Kết đầu khối XOR - S-Box: 48 bit sau trộn chia làm khối bit xử lý qua hộp thay S-box Đầu khối bit khối bit theo chuyển đổi phi tuyến thực bảng tra Hình 4: Kiến trúc tạo đầu hàm S-Box Bài thi cuối kì mơn ANM Bảng 7: Hoạt động hàm S-Box Kết đầu hàm S-Box: K1 + E(R0) S(B) 100010 110010 101001 100100 010100 010010 001110 100110 0001 1100 0100 1110 0110 1010 1000 1000 Đầu khối S-Box - P-Box: Cuối cùng, 32 bit thu sau S-box xếp lại theo thứ tự cho trước (còn gọi P-box) Bảng 8: Thuật toán P-Box S(B) P(S) 0001 0001 1100 1000 0100 0110 1110 1101 0110 0001 1010 0000 1000 1101 1000 0011 Đầu khối P-Box Đầu khối P-Box đưa vào cộng Module với nửa trái mã L0 tạo thành nửa chuỗi mã phải vòng thứ Ghép với nửa bên phải mã R0 tạo thành chuỗi đầu vịng thứ Bài thi cuối kì mơn ANM Dưới kết đầu sau kết thúc vịng Feistel: III Độ an tồn DES 3.1 Điểm yếu DES Hiện DES xem khơng đủ an tồn cho nhiều ứng dụng Nguyên nhân chủ yếu độ dài 56 bit khóa nhỏ Khóa DES bị phá vịng chưa đầy 24 Đã có nhiều kết phân tích cho thấy điểm yếu mặt lý thuyết mã hóa dẫn đến phá khóa, chúng khơng khả thi thực tiễn 3.1.1 Tính bù Giả sử phần bù a ký hiệu 𝑎̅ (ví dụ : 01001101 phần bù 10110010) DES có tính chất sau: C = DES (a,k) → 𝐶̅ = DES ( 𝑎̅, 𝑘̅ ) Như ta biết mã C mã hóa từ thơng tin a với khóa k ta suy ̅ mã 𝐶 mã hóa từ rõ 𝑎̅ với khóa 𝑘̅ Đây điểm yếu DES kẻ công thực giải mã phương pháp cơng vét cạn khố 3.1.2 Khoá yếu Một điểm yếu DES sử dụng thuật tốn sinh khố gặp trường hợp 16 khoá trùng nhau, trường hợp khoá đầu vào gọi khoá yếu Như vậy, ta suy việc mã hố giải mã khoá yếu Bài thi cuối kì mơn ANM Bảng 9: Các khố yếu Ngồi ra, cịn có thêm cặp khố nửa yếu, nghĩa là: C = DES (a,k1) → C = DES (a,k2) Với mã mã khoá cặp mà nửa yếu tạo thành mã giống hệt Bảng 10: Các khoá nửa yếu Tuy nhiên dễ dàng tránh khóa thực thuật tốn, cách thử chọn khóa cách ngẫu nhiên Khi khả chọn phải khóa yếu nhỏ 3.2 Các dạng công 3.2.1 Tấn công vét cạn khóa - Khơng với mật mã hố khố đối xứng DES, mà với phương thức mật mã hố gặp phải kiểu cơng Kẻ cơng thử tất khố lên đoạn mã biên dịch thành rõ - Trong mã hoá DES sử dụng khố có kích thước 56 bit, để tìm rõ kiểu cơng vét cạn khố số khố phải thử 256 khố khác Bài thi cuối kì mơn ANM - Nếu số lượng khoá lớn, kiểu cơng khó để thực Do đó, họ phải dựa việc phân tích mã, thường áp dụng thử nghiệm thống kê - Để sử dụng kiểu công này, đa phần kẻ công phải thử trung bình nửa số khố để đạt thành cơng việc tìm rõ 3.2.2 Phá mã DES theo phương pháp vi sai - Phương pháp phá mã vi sai kiểu công dựa vào cặp rõ có lựa chọn phân tích giá trị khác hai rõ làm ảnh hưởng tới khác hai mã tương ứng Sự khác định nghĩa thông qua nhiều cách phép toán XOR thường sử dụng - Các cặp vi sai vào gọi XOR vào, XOR - Quy trình phá mã vi sai DES: o Tiền tính tốn lập bảng tham chiếu o Giới hạn khơng gian tìm khố o Xác định khoá - Phương pháp phá mã vi sai phá khố tốn thời gian so với công vét cạn Tuy nhiên, để sử dụng phương pháp cần thử 247 cặp rõ – mã lựa chọn để tìm khoá K Như vậy, cho tốn lần thử so với thuật tốn vét cạn vi sai bị cho bất khả thi 3.2.3 Phá mã DES theo phương pháp thử tuyến tính - Phương pháp phá mã tuyến tính phương pháp công DES đưa vào năm 1997 Matsui, phương pháp cần phải biết trước 243 cặp rõ mã Tuy nhiên, số lớn nên phương pháp khơng khả thi để cơng mật mã hố DES Một số phương pháp khắc phục yếu điểm DES 3.3 3.3.1 Hiệu ứng lan truyền - Trong rõ hay khoá, ta thay đổi bit dẫn đến thay đổi nhiều bit mã Người ta gọi tính chất hiệu ứng lan truyền - Nhờ vào tính chất mà kẻ cơng khơng thể giới hạn miền tìm kiếm rõ hay khố nên khơng thể thực kiểu cơng tuyến tính vi sai mà bắt buộc phải phá mã phương pháp vét cạn khố - DES phương pháp mã hố có tính chất hiệu ứng lan truyền Bài thi cuối kì mơn ANM Xét ví dụ: Với rõ đầu vào: M1 = AB091104081307CD M2 = BB091104081307CD Hình cho thấy kết ta thay đổi bit đầu vào rõ mã đầu từ q trình mã hố DES khác hoàn toàn C1 = 7F493A4307C11890 C2 = 352C108960A320B7 3.3.2 2DES Phương pháp mã hoá Double DES sử dụng mã hoá lần với khoá khác Khoá hệ mã theo mơ hình 112 bit Nhìn vào kích thước khố thấy độ an tồn phương pháp tăng gấp đôi so với DES truyền thống Hình 5: Sơ đồ mã hố 2DES Bài thi cuối kì mơn ANM Đầu tiên, rõ P vào khối mã hoá sử dụng khoá K1 tạo mã X, sau mã tiếp tục đưa vào khối mã hoá thứ sử dụng khoá K2 để thu mã cuối C Hình 6: Sơ đồ giải mã 2DES Việc giải mã thực ngược lại với trình mã hoá Bản mã C đưa qua khối giải mã sử dụng khố K2, sau đưa qua khối giải mã sử dụng khoá K1 cuối cho rõ đầu vào P Hạn chế phương pháp việc mã hoá giải mã tốn nhiều thời gian không gian khoá tăng lên gấp lần 3.3.3 3DES Một phương pháp để tăng tính bảo mật mật mã hoá DES sử dụng phương pháp mã hoá DES ba lần Khoá Triple DES 168 bit, trường hợp khoá thứ khoá thứ kích thước khố có độ dài 112 bit (nhưng khác với Double DES) - Triple DES khố: Hình 7: Sơ đồ mã hố 3DES khố Đầu tiên, rõ P đưa vào khối mã hóa E sử dụng khóa K1 tạo mã A Bản mã A sau đưa vào khối giải mã D sử dụng khóa K2 tạo B Bản B tiếp tục đưa vào khối mã hoá E sử dụng khoá K1 cuối tạo mã C Bài thi cuối kì mơn ANM Hình 8: Sơ đồ giải mã 3DES khoá Bản mã C đưa vào khối giải mã D sử dụng khố K1 tạo B, sau B đưa vào khối mã hoá E sử dụng khoá K2 tạo mã A Cuối cùng, mã A đưa vào khối giải mã D sử dụng khoá K1 tạo rõ P - Triple DES khố: Hình 9: Sơ đồ mã hố 3DES khố Ở trường hợp này, tương tự Triple DES khoá khối mã hoá cuối sử dụng khố thứ K3 Hình 10: Sơ đồ giải mã 3DES khoá Giải mã tương tự với Triple DES khoá khoá K1 khối giải mã thay K3 Việc lựa chọn mã hoá giải mã khoá thứ hai khơng làm thay đổi tính an tồn Triple DES Một số lý thuyết công Triple DES cho thấy hệ mật mã sử dụng chậm so với AES tới lần Bài thi cuối kì mơn ANM KẾT LUẬN Bài tiểu luận làm rõ tính chất cách thức hoạt động trình mật mã hố liệu DES Các bước q trình giải mã liệu thực tương tự trình mã hố khác thứ tự sử dụng khoá K đảo ngược lại Bằng cách thoả thuận trao đổi khoá chung với nhau, kết khố hai phía bên gửi bên nhận giống hệt Tuy nhiên, khoá sử dụng mật mã hố DES có độ dài 56 bit tương đối ngắn Việc dẫn đến việc thực kẻ cơng thực việc phá khố dựa vào số phương pháp công trình bày Ngày nay, phương pháp mật mã hố DES khơng cịn sử dụng rộng rãi trước tính an tồn khơng cịn đảm bảo Nhiều phương pháp pháp triển để trở nên phù hợp với việc bảo mật thông tin Tuy cố gắng kiến thức hạn chế nên tiểu luận nhóm chúng em cịn nhiều thiếu xót, mong xem góp ý để chúng em có thêm kiến thức kinh nghiệm tích luỹ cho thân Qua chúng em xin gửi lời cảm ơn chân thành sâu sắc tới thầy Học viện nói chung đặc biệt, em xin gửi lời cảm ơn sâu sắc đến Cô Phạm Anh Thư dạy dỗ, truyền đạt kiến thức quý báu cho chúng em Bài thi cuối kì mơn ANM TÀI LIỆU THAM KHẢO [1] Don Coppersmith The data encryption standard (DES) and its strength against attacks IBM Journal of Research and Development (1994) [2] TS.Phạm Anh Thư Slide Bài giảng môn An ninh mạng Viễn thông (2019-2020) [3] Mitsuru Matsui Linear Cryptanalysis Method for DES Cipher (1993) [4] Mitsuru Matsui The First Experimental Cryptanalysis of the Data Encryption Standard (1994) [5] Eli Biham, Adi Shamir Differential Cryptanalysis of the Data Encryption Standard, Springer Verlag (1993) ... đồ giải mã 2DES Sơ đồ mã hoá 3DES khoá Sơ đồ giải hoá 3DES khoá Sơ đồ mã hoá 3DES khoá Sơ đồ mã hoá 3DES khoá DANH MỤC BẢNG BIỂU Bảng Bảng Bảng Bảng Bảng Bảng Bảng Bảng Bảng Bảng 10 Khối hoán vị... tảng DES để số bit mã hoá tăng lên Sau nhóm chúng em trình bày cấu trúc độ an tồn thuật tốn mã hố DES Đề tài ? ?Độ an tồn hệ thống mật mã hoá liệu DES? ?? chúng em tập trung sâu phân tích độ an tồn,... hành mật mã hố DES Phần III Độ an tồn DES: tập trung làm rõ điểm yếu, dạng cơng số phương pháp nâng cao tính bảo mật, tăng độ an tồn mật mã hố liệu DES Bài thi cuối kì mơn ANM I Khái quát mật mã

Ngày đăng: 26/02/2023, 15:12

Tài liệu cùng người dùng

Tài liệu liên quan