Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 31 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
31
Dung lượng
1,14 MB
Nội dung
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG KHOA VIỄN THÔNG I BÀI THI TIỂU LUẬN AN NINH MẠNG VIỄN THƠNG Đề tài: Tìm hiểu tiêu chuẩn mật mã hóa liệu DES Bài tập tiểu luận môn ANM 2|Page Bài tập tiểu luận môn ANM LỜI CẢM ƠN Chúng em xin gửi lời cảm ơn sâu sắc đến giảng viên mơn – thầy Hồng Trọng Minh dạy dỗ, truyền đạt kiến thức quý báu cho em suốt thời gian học tập vừa qua Trong thời gian học tập lớp học, em có thêm cho nhiều kiến thức bổ ích, tinh thần học tập hiệu quả, nghiêm túc Đây chắn kiến thức quý báu, hành trang để em vững bước sau Bộ mơn an ninh mạng viễn thơng mơn học vơ bổ ích có tính thực tế cao Đảm bảo cung cấp đủ kiến thức, gắn liền với nhu cầu thực tiễn sinh viên Tuy nhiên, vốn kiến thức nhiều hạn chế khả tiếp thu thực tế nhiều bỡ ngỡ Mặc dù chúng em cố gắng chắn tiểu luận khó tránh khỏi thiếu sót nhiều chỗ cịn chưa xác, kính mong thầy xem xét góp ý để tiểu luận em hồn thiện Kính chúc thầy sức khỏe,hạnh phúc đạt nhiều thành tựu nghiệp giảng dạy 3|Page Bài tập tiểu luận môn ANM Mục Lục MỞ ĐẦU 1.Lịch sử DES Mơ tả thuật tốn DES 2.1 Sơ đồ thuật toán 2.2 Đặc điểm DES 3.Q trình mã hóa 3.1 Cách tính xo 10 3.2 Cách tính LiRi 11 3.2.1 Các biến hàm f 11 3.2.1.a Cách xác định biến thứ 11 3.2.1.b Xác định biến J 12 3.2.1.c Cách tính hàm f 13 3.3 Cách xác định mã y 14 Giải mã 15 Các chế độ mã hóa theo DES 16 5.1 Chế độ chuyển mã điện tử ECB 16 5.2 Chế độ liên kết khối mã CBC 17 5.3 Chế độ phản hồi mã CFB 19 5.4 Chế độ phản hồi đầu OFB 22 5.5 Chế độ kiểu máy đếm CTR 24 Đánh giá độ an toàn DES 27 6.1 Đánh giá chung độ mật DES 27 6.2 Ưu điểm hệ mật mã DES 27 6.3 Điểm yếu 27 6.3.1 Tính bù: 27 4|Page Bài tập tiểu luận mơn ANM 6.3.2 Khóa yếu 28 6.3.3 DES có cấu trúc đại số 28 6.3.4 Khơng gian khóa K 29 6.4 Các dạng công DES 29 Ứng dụng thuật toán DES 30 Tồng kết 30 TÀI LIỆU THAM KHẢO 31 5|Page Bài tập tiểu luận môn ANM Danh mục hình Hình 2.1 Thuật tốn mã hóa DES Hình 2.2 Sơ đồ mã hóa 10 Hình 3.1 Q trình tạo khóa k 12 Hình 3.2 Sơ đồ hoạt động hàm f 13 Hình 4.1 Mơ mã hóa (a) giải mã (b) theo DES 15 Hình 5.1 Chế độ mã hóa/giải mã ECB 16 Hình 5.2 Chế độ mã hóa/giải mã CBC 18 Hình 5.3 Chế độ mã hóa/giải mã CFB 20 Hình 5.4 Chế độ mã hóa, giải mã OFB 22 Hình 5.5 Chế độ mã hóa, giải mã CTR 25 Danh mục bảng Bảng 3.1 Bảng IP…………………………………………………………………………10 Bảng 3.2 Bảng chọn E cố định 11 Bảng 3.3 Hoán vị IP 14 6|Page Bài tập tiểu luận môn ANM MỞ ĐẦU Khi nhu cầu trao đổi thông tin liệu ngày lớn đa dạng, tiến điện tử viễn thông công nghệ thông tin không ngừng phát triển ứng dụng để nâng cao chất lượng lưu lượng truyền tin quan niệm ý tưởng biện pháp bảo vệ thông tin liệu ngày đổi Bảo vệ an tồn thơng tin liệu chủ đề rộng, có liên quan đến nhiều lĩnh vực thực tế có nhiều phương pháp thực để bảo vệ an toàn thông tin liệu Ngày nay, nhu cầu trao đổi thơng tin mật thành viên nhóm, tổ chức ngày lớn việc đảm bảo an tồn thơng tin cần thiết Cùng với phát triển mật mã nói chung hệ mã đối xứng nói riêng thám mã lĩnh vực thường quan tâm nghiên cứu, cơng khai, cơng khai không đầy đủ Mặc dù, thời gian qua có nhiều kết nghiên cứu DES cơng bố, DES bị phá khóa hệ thống chuyên dụng vòng chưa đầy 24 giờ, việc nghiên cứu DES cần thiết để hướng tới hệ mật mã đại có độ dài khóa lớn hơn, dần thay DES Vậy làm để đánh giá chất lượng hệ mật mã tốt? Hiểu tính cần thiết an toàn nên chúng em chọn đề tài:” Tìm hiểu chuẩn mật mã hóa liệu DES” Mục đích tiểu luận tìm hiểu tính chất,đặc điểm ,từ đánh giá ưu nhược điểm DES Phạm vi nghiên cứu : nghiên cứu mặt lý thuyết Phương pháp nghiên cứu: Phân tích thơng tin thơng qua tài liệu tham khảo từ đưa kêt luận mặt lý thuyết 7|Page Bài tập tiểu luận môn ANM 1.Lịch sử DES 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 Sau chuẩn sử dụng rộng rãi phạm vi giới Ngay từ đầu, thuật tốn gây nhiều tranh cãi, bao gồm thành phần thiết kế mật, độ dài khóa tương đối ngắn, nghi ngờ cửa sau để Cơ quan An ninh quốc gia Hoa Kỳ (NSA) bẻ khóa Do đó, DES giới nghiên cứu xem xét kỹ lưỡng, việc thúc đẩy hiểu biết đại mật mã khối (block cipher) phương pháp thám mã tương ứng 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 Thuật toán tin tưởng an tồn thực tiễn có dạng Triple DES (thực DES ba lần), lý thuyết phương pháp bị phá Gần DES thay AES (Advanced Encryption Standard, hay Tiêu chuẩn Mã hóa Tiên tiến) Mơ tả thuật tốn DES 2.1 Sơ đồ thuật tốn Ở nửa hình bên trái hình 2.1, trình xử lý rõ diễn ba giai đoạn Đầu tiên, rõ 64 bit chuyển tới khối hoán vị khởi tạo để xếp lại bit cho chuỗi bit hốn vị Tiếp theo 16 vòng mật mã Feistel Đầu vòng cuối (vòng 16) gồm 64 bit hàm rõ đầu vào khóa K Sau đó, nửa trái nửa phải 64 bit tráo đổi cho Cuối cùng, bit tráo đổi đưa qua hốn vị kết thúc, hàm hoán vị nghịch đảo hoán vị khởi tạo, cho 64 bit mã Phần bên phải hình 2.1 mơ tả cách thức khóa 56 bit sử dụng Ban đầu, khóa 64 bit chuyển qua hốn vị khóa Sau đó, 16 vịng, khóa Ki tạo cách kết hợp dịch vòng trái hoán vị Hàm hoán vị giống vịng, khóa khác tạo dịch vòng trái lặp lại bit khóa 8|Page Bài tập tiểu luận mơn ANM Hình 2.1 thuật tốn mã hóa DES 2.2 Đặc điểm DES Mật mã DES có đặc điểm sau: + Là mã thuộc mã Feistel có 16 vịng, ngồi DES có thêm hoán vị khởi tạo trước bắt đầu vịng hốn vị kết thúc sau vịng 16 + Kích thước khối 64 bit + Kích thước khóa 56 bit + Mỗi vịng DES dùng khóa có kích thước 48 bít trích từ khóa 3.Q trình mã hóa 9|Page Bài tập tiểu luận mơn ANM Hình 2.2 Sơ đồ mã hóa 3.1 Cách tính 𝐱 𝐨 Hốn vị biến x theo phép hoán vi ban đầu IP(X) xo = IP(X) = Lo R o Bảng 3.1 Bảng IP 10 | P a g e Bài tập tiểu luận môn ANM 𝐶𝑗 = CIPTHk(𝑃𝑗 ) với j=1, 2, 3, …, n Plaintext đầu vào trực tiếp để thực thi thuật tốn mã hóa với khóa mã K để tạo ciphertext *Giải mã ECB Biểu thức định nghĩa: 𝑃𝑗 = CIPTHINVk(𝐶𝑗 =) với j=1, 2, 3, …, n Ciphertext đầu vào trực tiếp để thực thi thuật toán giải mã với khóa mã K để tạo plaintext *Nhận xét: • • • • - Ưu điểm: Thiết kế phần cứng đơn giản Vấn đề cần quan tâm thiết kế logic cho thuật tốn mã hóa Lỗi bit không bị lan truyền Nếu lỗi bit xuất ciphertext khối liệu ảnh hưởng đến việc giải mã khối liệu khơng ảnh hưởng đến việc giải mã khác khối liệu khác Có thể thực mã hóa/giải mã song song (parallel) nhiều khối liệu lúc Điều giúp tăng tốc độ xử lý hệ thống địi hỏi mã hóa/giải mã tốc độ cao - Nhược điểm: Khả bảo mật Do giá trị plaintext ciphertext ánh xạ độc lập một-một nên thơng tin mã hóa dễ bị sửa đổi cách xóa bớt khối liệu, chèn thêm khối liệu, hốn đổi vị trí khối liệu để làm sai lệch thông tin nơi nhận 5.2 Chế độ liên kết khối mã CBC CBC (Cipher Block Chaining) chế độ mã hóa chuỗi, kết mã hóa khối liệu trước (ciphertext) tổ hợp với khối liệu (plaintext) trước thực thi mã hóa 17 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM Hình 5.2 Chế độ mã hóa/giải mã CBC *Mã hóa CBC Biểu thức định nghĩa: 𝐶1 = CIPHk(𝑃1 +IV) 𝐶𝑗 = CIPHk(𝑃𝑗 +𝐶𝑗−1 ) với j=2, 3, …, n • • • • - Lần mã hóa đầu tiên: Plaintext XOR với vector khởi tạo IV Kết bước đầu vào cho việc thực thi thuật tốn mã hóa với khóa mã K - Lần mã hóa sau lần đầu tiên: Plaintext XOR với ciphertext lần mã hóa trước Kết bước đầu vào cho việc thực thi thuật tốn mã hóa với khóa mã K *Giải mã CBC Biểu thức định nghĩa: 𝑃1 = CIPHINVk(𝐶1 )+IV 18 | P a g e nhóm 14 Bài tập tiểu luận môn ANM 𝑃𝑗 = CIPHk(𝐶𝑗 )+ 𝐶𝑗−1 ) với j=2, 3, …, n - Lần giải mã đầu tiên: • Ciphertext thực thi q trình giải mã với khóa mã K Kết bước XOR với vector khởi tạo IV để tạo plaintext Lần giải mã sau lần đầu tiên: • Ciphertext thực thi q trình giải mã với khóa mã K • Kết bước XOR với ciphertext sử dụng lần giải mã trước để tạo plaintext *Nhận xét • • • • • • • • - Ưu điểm: Khả bảo mật cao ECB Ciphertext khối liệu plaintext khác cho lần mã hóa phụ thuộc vào IV giá trị mã hóa (ciphertext) khối liệu liền trước Q trình giải mã (mã hóa nghịch) thực song song nhiều khối liệu - Nhược điểm: Thiết kế phần cứng phức tạp ECB ngồi logic thực thi thuật tốn mã hóa, người thiết kế cần thiết kế thêm: Logic quản lý độ dài chuỗi liệu mã hóa, cụ thể số lượng khối liệu chuỗi liệu Bộ tạo giá trị ngẫu nhiên cho IV Lỗi bit bị lan truyền Nếu lỗi bit xuất ciphertext khối liệu làm sai kết giải mã khối đữ liệu khối liệu Khơng thể thực thi q trình mã hóa song song xử lý khối liệu sau phụ thuộc vào ciphertext khối liệu trước, trừ lần mã hóa 5.3 Chế độ phản hồi mã CFB CFB (Cipher Feedback) chế độ mã hóa mà ciphertext lần mã hóa phản hồi (feedback) đến đầu vào lần mã hóa Nghĩa là, ciphertext lần mã hóa sử dụng để tính tốn ciphertext lần mã hóa Mơ tả giống CBC q trình trực lại khác 19 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM Hình 5.3 Chế độ mã hóa/giải mã CFB *Mã hóa CFB Biểu thức định nghĩa: 𝐼1 = IV 𝐼𝑗 = LSBb-s(𝐼𝑗−1 ) | C#j-1 với j=2, 3, , n • • • 𝑂𝑗 = CIPHk(𝐼𝑗 ) với j=1, 2, , n C#j = P#j + MSBs(𝑂𝑗 ) với j=1, 2, , n - Lần mã hóa đầu tiên: Khối liệu ngõ vào q trình mã hóa lấy từ IV, ứng với biểu thức I1, Vector khởi tạo IV mã hóa để tạo khối giá trị chứa b bit, ứng với biểu thức Oj s bit MSB kết dùng để XOR với s bit liệu (plaintext) để tạo s bit ciphertext, ứng với biểu thức C#j IV giá trị không cần bảo mật phải giá trị dự đốn trước IV có độ dài b bit, độ dài khối liệu mà chuẩn mã hóa quy định 20 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM s số nguyên ≤ s ≤ b, độ dài plaintext ciphertext cho lần mã hóa/giải mã Giá trị s tích hợp vào tên gọi chế độ CFB để rõ chế độ số lượng bit hỗ trợ Ví dụ: • 1-bit CFB – Mỗi lần thực mã hóa/giải mã bit 8-bit CFB – Mỗi lần thực mã hóa/giải mã bit • 64-bit CFB – Mỗi lần thực mã hóa/giải mã 64 bit • - Lần mã hóa sau lần đầu tiên: • • • • • • • • • • • Khối liệu ngõ vào q trình mã hóa ghép giã b-s bit LSB khối ngõ vào lần mã hóa trước s bit ciphertext lần mã hóa trước đó, ứng với biểu thức Ij, Giá trị bước mã hóa để tạo khối giá trị chứa b bit, ứng với biểu thức Oj s bit MSB kết dùng để XOR với s bit liệu (plaintext) để tạo s bit ciphertext, ứng với biểu thức C#j *Nhận xét So sánh với chế độ CBC, chế độ CFB có điểm khác biệt sau đây: Thuật tốn mã hóa khơng áp dụng trực tiếp plaintext mà dùng để biển đổi khối liệu sinh từ IV ciphertext Số lượng bit liệu mã hóa, giải mã nhỏ số lượng bit mà thuật toán mã hóa hỗ trợ, ≤ s ≤ b - Ưu điểm: Khả bảo mật cao ECB Ciphertext khối liệu plaintext khác cho lần mã hóa phụ thuộc vào IV giá trị mã hóa (ciphertext) khối liệu liền trước Q trình giải mã (mã hóa nghịch) thực song song nhiều khối liệu Tùy biến độ dài khối liệu mã hóa, giải mã thơng qua thơng số s - Nhược điểm: Thiết kế phần cứng phức tạp CBC Ngoài thành phần logic CBC, CFB cần thêm logic để chọn số bit cần xử lý s thơng số cấu hình Lỗi bit bị lan truyền Nếu lỗi bit xuất ciphertext khối liệu làm sai kết giải mã khối đữ liệu khối liệu Khơng thể thực thi q trình mã hóa song song xử lý khối liệu sau phụ thuộc vào ciphertext khối liệu trước, trừ lần mã hóa 21 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM 5.4 Chế độ phản hồi đầu OFB OFB (Output Feedback) chế độ mã hóa mà giá trị ngõ khối thực thi thuật tốn mã hóa, khơng phải ciphertext, lần mã hóa phản hồi (feedback) đến ngõ vào lần mã hóa Hình 5.4 Chế độ mã hóa, giải mã OFB *Mã hóa OFB Biểu thức định nghĩa: 𝐼1 = IV 𝐼𝑗 = 𝑂𝑗−1 • với j = 2, 3, , n Oj = CIPHk(Ij) với j = 1, 2, , n Cj = Pj + Oj với j = 1, 2, , n-1 C*n = P*n + MSBu(On) - Lần mã hóa đầu tiên: Giá trị IV lấy làm khối giá trị đầu vào mã hóa, ứng với biểu thức I1 22 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM • • Thực thi giải thuật mã hóa cho khối với khóa mã K, ứng với biểu thức Oj XOR plaintext kết bước trên, ứng với biểu thức Cj - Lần mã hóa sau lần trước lần cuối cùng: • Giá trị khối ngõ (output block) trước lấy làm khối giá trị đầu vào mã hóa, ứng với biểu thức Ij • Thực thi giải thuật mã hóa cho khối với khóa mã K, ứng với biểu thức Oj XOR plaintext kết bước trên, ứng với biểu thức Cj - Lần mã hóa cuối (thứ n): • • Giá trị khối ngõ (output block) trước lấy làm khối giá trị đầu vào mã hóa, ứng với biểu thức Ij • Thực thi giải thuật mã hóa cho khối với khóa mã K, ứng với biểu thức Oj XOR plaintext với bit MSB kết bước theo độ dài plaintext (độ dài plaintext lần cuối ngắn độ dài khối ngõ ra), ứng với biểu thức C*n *Giải mã OFB Biểu thức định nghĩa: • 𝐼1 = IV Ij = Oj-1 với j = 2, 3, , n Oj = CIPHk(Ij) với j = 1, 2, , n Pj = Cj + Oj với j = 1, 2, , n-1 P*n = C*n + MSBu(On) • • • • • • • • - Lần giải mã đầu tiên: Giá trị IV lấy làm khối giá trị đầu vào mã hóa, ứng với biểu thức I1 Thực thi giải thuật mã hóa cho khối với khóa mã K, ứng với biểu thức Oj XOR ciphertext kết bước trên, ứng với biểu thức Pj - Lần giải mã sau lần trước lần cuối cùng: Giá trị khối ngõ (output block) trước lấy làm khối giá trị đầu vào mã hóa, ứng với biểu thức Ij Thực thi giải thuật mã hóa cho khối với khóa mã K, ứng với biểu thức Oj XOR ciphertext kết bước trên, ứng với biểu thức Pj - Lần giải mã cuối (thứ n): Giá trị khối ngõ (output block) trước lấy làm khối giá trị đầu vào mã hóa, ứng với biểu thức Ij Thực thi giải thuật mã hóa cho khối với khóa mã K, ứng với biểu thức Oj 23 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM • XOR ciphertext với bit MSB kết bước theo độ dài ciphertext (độ dài ciphertext lần cuối ngắn độ dài khối ngõ ra), ứng với biểu thức P*n *Nhận xét Chế độ OFB có đặc điểm cần ý sau: • Thuật tốn mã hóa khơng áp dụng trực tiếp plaintext mà dùng để biển đổi khối liệu sinh từ IV khối ngõ lần mã hóa trước Điểm tương tự với CFB • OFB khác với CFB xử lý khối liệu với độ dài bit đầy đủ thuật toán mã hóa quy định khơng xử lý phần hay vài bit khối liệu • • • • - Ưu điểm: Khả bảo mật cao ECB Ciphertext khối liệu plaintext khác cho lần mã hóa phụ thuộc vào IV khối ngõ lần mã hóa trước Lỗi bit khơng bị lan truyền Khi lỗi bit xuất ciphertext, ảnh hưởng đến kết giải mã khối liệu Thiết kế phần cứng đơn giản CFB - Nhược điểm: Không thể thực mã hóa/giải mã song song nhiều khối liệu lần mã hóa/giải mã sau phụ thuộc vào khối ngõ lần mã hóa/giải mã liền trước 5.5 Chế độ kiểu máy đếm CTR CTR (Counter) chế độ mã hóa sử dụng tập khối ngõ vào, gọi counter, để sinh tập giá trị ngõ thơng qua thuật tốn mã hóa Sau đó, giá trị ngõ XOR với plaintext để tạo ciphertext trình mã hóa, XOR với ciphertext để tạo plaintext trình giải mã 24 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM Hình 5.5 Chế độ mã hóa, giải mã CTR *Mã hóa CTR Biểu thức định nghĩa: 𝑂𝑗 = CIPHk(𝑇𝑗 ) với j = 1, 2, , n𝐶𝑗 = 𝑃𝑗 + 𝑂𝑗 • Giá trị khối ngõ (output block) tạo từ giá trị khối đếm thứ j cách thực thi giải thuật mã hóa với khóa K, ứng với biểu thức Oj • Giá trị XOR với plaintext thứ j để tạo ciphertext thứ j, ứng với biểu thức Cj Đối với khối liệu cuối chuỗi liệu, khối thứ n, độ dài bit plaintext độ dài bit quy định chuẩn mã hóa lấy bit trọng số cao khối ngõ (output block) XOR với plaintext, ứng với biểu thức C*n • *Giải mã CTR Biểu thức định nghĩa: 25 | P a g e nhóm 14 Bài tập tiểu luận môn ANM 𝑂𝑗 = CIPHk(𝑇𝑗 ) ) 𝑃𝑗 =𝐶𝑗 + 𝑂𝑗 với j = 1, 2, , n với j = 1, 2, , n-1 P*n = C*n + MSBu(On) • Giá trị khối ngõ (output block) tạo từ giá trị khối đếm thứ j cách thực thi giải thuật mã hóa với khóa K, ứng với biểu thức Oj • Giá trị XOR với ciphertext thứ j để tạo plaintext thứ j, ứng với biểu thức Cj Đối với khối liệu cuối chuỗi liệu, khối thứ n, độ dài bit ciphertext độ dài bit quy định chuẩn mã hóa lấy bit trọng số cao khối ngõ (output block) XOR với ciphertext, ứng với biểu thức P*n • *Nhận xét • • • • • • • • • • • • • Chế độ CTR có đặc điểm cần ý sau: Thuật tốn mã hóa khơng áp dụng trực tiếp plaintext mà dùng để biển đổi khối liệu sinh từ đếm (counter) Quá trình mã hóa/giải mã khối liệu độc lập - Ưu điểm: Khả bảo mật cao ECB Tuy q trình mã hóa/giải mã khối liệu độc lập plaintext ảnh xạ đến nhiều ciphertext tùy vào giá trị đếm lần mã hóa Có thể mã hóa/giải mã song song nhiều khối liệu - Nhược điểm: Phần cứng cần thiết kế thêm đếm counter giải thuật tạo giá trị counter không lặp lại *Chú thích b – kích thước theo bit khối (block) j - số khối đoạn (segment) liệu theo thứ tự từ trái sang phải n - số khối đoạn liệu plaintext s – số bit đoạn liệu u - số bit khối plaintext ciphertext cuối Cj – Khối ciphertext thứ j C#j - Đoạn ciphertext thứ j C*n - khối cuối ciphertext, khối chứa phần liệu (partial block) 26 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM • • • • • • • • Ij - khối ngõ vào thứ j IV - Vector khởi tạo (Initialization Vector) K - Khóa mã Oj - Khối ngõ thứ j Pj - Khối plaintext thứ j P#j - Đoạn plaintext thứ j P*n - Khối cuối plaintext, khối chứa phần liệu Tj - Khối đếm thứ j Các chức • X|Y - Nối hai chuỗi bit X Y • X+Y - XOR hai chuỗi bit có độ dài X Y CIPTHk(X) – Chức mã hóa (mã hóa thuận) thuật tốn mã hóa khối với khóa mã K áp dụng khối liệu X CIPTHINVk(X) – Chức giải mã (mã hóa nghịch) thuật tốn mã hóa khối với khóa mã K áp dụng khối liệu X LSBm(X) - Chức lấy m bit LSB chuỗi bit X MSBm(X) - Chức lấy m bit MSB chuỗi bit X • • • • Đánh giá độ an toàn DES 6.1 Đánh giá chung độ mật DES Đã có nhiều nghiên cứu phá mã DES phương pháp mã hoá khối khác trình bày số phương pháp phá mã thám mã vi sai, thám mã tuyến tính phi tuyến Tuy nhiên phương pháp đòi hỏi số lượng rõ lớn (để công lựa chọn rõ) nên không thực thực tế Trên thực tế thám mã DES dựa vào tiêu chuẩn rõ cơng nghệ tốn mạch (cơng nghệ Cluster) 6.2 Ưu điểm hệ mật mã DES • Có tính bảo mật cao • Cơng khai, dễ hiểu • Mã hóa nhanh, modul • Có thể triển khai thiết bị điện tử có kích thước nhỏ 6.3 Điểm yếu 6.3.1 Tính bù: 27 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM Ký hiệu phần bù u (ví dụ 0100101 1011010 bù nhau) DES có tính chất sau: y = DESz (x) => 𝑦 =DESz ( 𝑥 ) Cho nên biết MÃ y mã hóa từ TIN x với khóa z ta suy mã hóa từ TIN với khóa Tính chất điểm yếu DES nhờ kẻ cơng loại trừ nửa số khóa cần phải thử tiến hành phép thử – giải mã theo kiểu tìm kiếm vét cạn khơng gian khóa 6.3.2 Khóa yếu Các khóa yếu khóa mà theo thuật tốn sinh khóa tất 16 khóa Z1 = Z2= Z3= …= Z15= Z16 điều khiến cho phép sinh mã giải mã khóa yếu giống hệt DESz = DES-1z Có tất khóa yếu sau: [00000001 00000001 … … 00000001] [11111110 11111110 … … 11111110] [11100000 11100000 11100000 11100000 11110001 11110001 11110001 11110001] [00011111 00011111 00011111 00011111 00001110 00001110 00001110 00001110] Đồng thời có 10 khóa yếu với thuộc tính tồn Z, Z’ cho DES-1z = DESz’ hay DES-1z’= DES 6.3.3 DES có cấu trúc đại số Với 64 bit khối rõ ánh xạ lên tất vị trí 64 bit 64 khối mã 256 (khoảng 1017) vị trí ánh xạ cịn lớn Tuy nhiên điều việc mã hóa DES khơng có cấu trúc Với DES có cấu trúc đại số việc đa mã hóa xem ngang với việc đơn mã hóa Ví dụ có hai khóa K1 K2 ln khóa thứ K3 sau: EK2(EK1(X)) = EK3(X) Nói cách khác, việc mã hóa DES mang tính chất “ nhóm”, mã hóa rõ khóa K1 sau khóa K2 giống với việc mã hóa khóa K3 Điều thực quan trọng sử dụng DES đa mã hóa Nếu “nhóm” phát với cấu trúc hàm q nhỏ tính an toàn giảm 28 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM 6.3.4 Khơng gian khóa K DES có 256 = 1017 khóa Nếu biết cặp “tin/mã” thử tất 1017 khả để tìm khóa cho kết khớp Giả sử phép thử 10-6s, 1011s , tức 7300 năm Nhưng với máy tính chế tạo theo xử lý song song Chẳng hạn với 107 chipset mã DES chạy song song chipset phải chịu trách nhiệm tính tốn với 1010 phép thử Chipset mã DES ngày xử lý tốc độ 4.5 x 107 bit/s tức làm 105 phép mã DES giây Vào năm 1976 1977, Diffie Hellman ước lượng chế tạo máy tính chuyên dụng để vét cạn khơng gian khóa DES ½ ngày với giá 20 triệu la Năm 1984, chipset mã hóa DES với tốc độ mã hóa tổng 256000 lần/giây Năm 1987, tăng lên 512000 lần/giây Vào năm 1993, Michael Wiener thiết kế máy tính chuyên dụng với giá triệu đô la sử dụng phương pháp vét cạn để giải mã DES trung bình 3,5 (và chậm giờ) Đến năm 1990, nhà toán học người Do Thái – Biham Shamir – phát minh phương pháp phá mã vi sai, kỹ thuật sử dụng đoán khác rõ để đưa thông tin mã Với phương pháp này, Biham Shamir chứng minh hiệu phương pháp vét cạn Phá mã vi sai thuật toán xem xét cặp mã hóa khác nhau, cặp mã hóa mà rõ khác biệt Người ta phân tích tiến trình biến đổi cặp mã thông qua vịng DES chúng mã hóa với khóa K Sau chọn hai rõ khác cách ngẫu nhiên hợp lý Sử dụng khác kết mã hóa gán cho khóa khác cách phù hợp Khi phân tích nhiều cặp mã, tìm khóa xem 6.4 Các dạng công DES Tấn công vét cạn khóa (Brute Force Attack): Vì khóa mã DES có chiều dài 56 bít nên để tiến hành brute-force attack, cần kiểm tra 256 khóa khác Hiện với thiết bị phổ dụng, thời gian gian để thử khóa lớn nên việc phá mã không khả thi (xem bảng) Tuy nhiên vào năm 1998, tổ chức Electronic Frontier Foundation (EFF) thông báo xây dựng thiết bị phá mã DES gồm nhiều máy tính chạy song song, trị giá khoảng 250.000$ Thời gian thử khóa ngày Hiện mã DES sử dụng thương mại, nhiên người ta bắt đầu áp dụng phương pháp mã hóa khác có chiều dài khóa lớn (128 bít hay 256 bít) TripleDES AES Phá mã DES theo phương pháp vi sai (differential cryptanalysis) Năm 1990 Biham Shamir giới thiệu phương pháp phá mã vi sai Phương pháp vi sai tìm khóa tốn thời gian brute-force Tuy nhiên phương pháp phá mã lại địi hỏi phải có 247 cặp rõ 29 | P a g e nhóm 14 Bài tập tiểu luận môn ANM – mã lựa chọn (chosen-plaintext) Vì phương pháp bất khả thi số lần thử phương pháp brute-force Phá mã DES theo phương pháp thử tuyến tính (linear cryptanalysis) Năm 1997 Matsui đưa phương pháp phá mã tuyến tính Trong phương pháp này, cần phải biết trước 243 cặp rõ-bản mã (known-plaintext) Tuy nhiên 243 số lớn nên phá mã tuyến tính khơng phải phương pháp khả thi Ứng dụng thuật toán DES DES sử dụng thực tế giao thức bảo mật tầng TCP SSL TLS (Secure socket layer Transport layer security) DES ko mạnh, đơn giản, đảm bảo realtime việc mã hóa giải mã liệu Tầng Giao vận Và nguồn gốc giao thức HTTPS Chữ "S" có nghĩa SSL TLS Với khơng gian khóa có độ lớn 256, biết cặp (bản mã, rõ), giả sử PC thông thường core thread thực phép thử với trường hợp khóa tốn 10-6 giây, máy PC tốn 1011 năm để vét cạn hết tồn khơng gian khóa phá thành cơng 1DES Tuy nhiên, PC máy tính thơng thương Ngày nay, với sức mạnh vi xử lý máy tính đại, cơng nghệ ghép nối song song vi xử lý, tính tốn phân tán, cộng thêm kỹ thuật lập trình song song, việc khai thác vi sử lý đồ hoạ (GPU – Graphic processor Unit); nên muốn phá DES, không bất khả thi đến 1011 năm cuối kỉ 20 Sau trở lên thịnh hành thập kỷ, DES bộc lộ nhiều yếu điểm tin tưởng; ứng dụng có vỏn vẹn số khía cạnh thơi Cịn việc sử dụng làm "khóa phiên" giao thức Needham - Schroeder khơng cịn chỗ Sau DES, người ta phát triển đưa vào sử dụng thuật tốn AES (Advance Encryption Standard) tốc độ xử lý tính tin cậy Tồng kết DES thuật tốn mã hóa theo khối, xử lý khối thơng tin rõ có độ dài xác định 64 bit Trước vào 16 chu trình chính, khối liệu cần bảo mật tách thành khối 64 bit, khối 64 bit đưa vào 16 vịng mã hóa DES để thực Qua tiểu luận cho thấy nhìn tổng quan DES cách thức hoạt động thuật toán DES Bài tiểu luận tìm hiểu cách hoạt động thuật toán DES đánh giá tổng quan ,chưa sâu vào đánh giá chi tiết ưu nhược điểm mật mã liệu DES 30 | P a g e nhóm 14 Bài tập tiểu luận mơn ANM TÀI LIỆU THAM KHẢO An ninh mạng viễn thông-HVCNBCVT(2016), chương trang 22-26 An toàn bảo mật thông tin-Trường đại học Hằng Hải(2008)-chương 3, trang 35-51 Các chế độ mã hóa giải mã -Nguyễn Quân(2019) Mật mã đối xứng-Phạm Nguyên Khang -chương Tìm hiểu chuẩn mật mã liệu DES đánh giá độ an toàn-Nguyễn Thị Thủy(2014)-Chương 2, trang 13-21 Tìm hiểu chuẩn mật mã liệu DES ứng dụng vào thi tuyển đại học -Đỗ Thị Phương(2003)-chương 31 | P a g e nhóm 14 ... 64 bit K khóa 56 bit a.Quy trình mã hóa b.Quy trình giải mã Hình 4.1 Mơ mã hóa (a) giải mã (b) theo DES Quy trình giải mã DES quy trình ngược lại với quy trình mã hóa DES, xuất phát từ mã Y ( Đầu... Feedback) chế độ mã hóa mà giá trị ngõ khối thực thi thuật tốn mã hóa, khơng phải ciphertext, lần mã hóa phản hồi (feedback) đến ngõ vào lần mã hóa Hình 5.4 Chế độ mã hóa, giải mã OFB *Mã hóa OFB Biểu... tồn bảo mật thông tin-Trường đại học Hằng Hải(2008)-chương 3, trang 35-51 Các chế độ mã hóa giải mã -Nguyễn Quân(2019) Mật mã đối xứng-Phạm Nguyên Khang -chương Tìm hiểu chuẩn mật mã liệu DES đánh