Giáo trình bảo mật thông tin

125 115 0
Giáo trình bảo mật thông tin

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH NĂM XÂY DỰNG VÀ PHÁT TRIỂN 50 ĐẶNG TRƯỜNG SƠN GIÁO TRÌNH BẢO MẬT THƠNG TIN NHÀ XUẤT BẢN ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ******************* ĐẶNG TRƢỜNG SƠN GIÁO TRÌNH NHÀ XUẤT BẢN ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH LỜI NÓI ĐẦU Xã hội ngày dần chuyển đổi thành xã hội thông tin Thông tin ngày trở thành tài sản có giá trị có ý nghĩa quan trọng nhiều lĩnh vực sống Công nghệ thông tin truyền thông (CNTT&TT) đƣợc ứng dụng rộng rãi vào lĩnh vực sống hàng ngày Nhiều dịch vụ có ứng dụng CNTT&TT trở thành bình thƣờng, thành thói quen ngƣời dân nhƣ mua bán, tốn qua mạng, dịch vụ trực tuyến,… Những dịch vụ thành thực ngƣời dân cảm thấy an toàn tham gia Do bảo mật thông tin kiến thức quan trọng mà tất làm việc lĩnh vực triển khai ứng dụng CNTT&TT cần phải biết Giáo trình Bảo mật thơng tin đặt mục tiêu cung cấp khái niệm tảng bảo mật an tồn thơng tin để sinh viên hiểu ứng dụng đƣợc công cụ bảo mật xây dựng vận hành dịch vụ CNTT&TT an tồn sau Bảo mật an tồn thơng tin lĩnh vực rộng bao gồm từ chế, sách, cơng cụ, đến thiết bị phần cứng, phần mềm hỗ trợ Giáo trình tập trung nhấn mạnh đến cơng cụ quan trọng bảo mật mật mã Nội dung xuyên suốt giáo trình kỹ thuật mật mã ứng dụng chúng bảo mật thông tin Sau học xong mơn Bảo mật thơng tin, sinh viên có kiến thức để hiểu vận dụng đƣợc kỹ thuật, quy trình, phƣơng pháp an tồn thơng tin; có kỹ việc tích hợp cơng cụ bảo mật để giải toán ứng dụng CNTT&TT thực tiễn Nội dung giáo trình gồm có chƣơng, bao quát hầu hết vấn đề cốt lõi mật mã bảo mật thơng tin Giáo trình không sâu vào vấn đề lý thuyết mà tập trung vào thuật toán mật mã ứng dụng chúng bảo mật thông tin Phần đầu chƣơng có tóm tắt nội dung chƣơng cuối chƣơng phần tập để sinh viên tự kiểm tra kiến thức tìm hiểu thêm qua link chứa tài liệu tham khảo Với kinh nghiệm nhiều năm giảng dạy môn Bảo mật thông tin trƣờng đại học, tác giả cố gắng đem kiến thức kinh nghiệm để trình bày vấn đề nêu giáo trình cách rõ ràng đơn giản Hầu hết nội dung kiến thức giáo trình kèm theo ví dụ minh hoạ trực quan Tuy nhiên, giáo trình chắn khơng tránh khỏi thiếu sót Tác giả xin chân thành cám ơn mong muốn nhận đƣợc góp ý giảng viên, sinh viên quan tâm để giáo trình ngày hồn thiện Mọi ý kiến đóng góp xin vui lịng gửi theo địa email: sondt@fit.hcmute.edu.vn DANH MỤC CHỮ VIẾT TẮT DES: Data Encryption Standard IP : Initial Permutation MD5 : Digest Message NIST : National Institute of Standards and Technology ANSI : American National Standards Institute ECB: Electronic Code Book CBC: Cipher Block Chaining OFB: Output Feedback CFB: Cipher Feedback AES: Advanced Encryption Standard FIPS PUB: Federal Information Processing Standards Publications  : Phép XOR (cộng modulo 2)  : Phép nhân trƣờng hữu hạn  : Phép nhân đa thức MAC: Message Authentication Code US-CERT United States Computer Emergency Readiness Team SHA Secure Hash Algorithm DSS Digital Signature Standard DSA Digital Signature Algorithm CA Certificate Authority MỤC LỤC LỜI NÓI ĐẦU DANH MỤC CHỮ VIẾT TẮT MỤC LỤC DANH MỤC HÌNH CHƢƠNG 1: NHẬP MÔN BẢO MẬT THÔNG TIN 11 1.1 KHÁI NIỆM BẢO MẬT THÔNG TIN 11 1.2 CÁC THÀNH PHẦN CỦA BẢO MẬT THÔNG TIN 12 1.3 KHOA HỌC MẬT MÃ 17 1.4 HỆ THỐNG MẬT MÃ 19 1.5 AN TOÀN HỆ THỐNG MẬT MÃ 20 1.6 CÂU HỎI VÀ BÀI TẬP 22 CHƢƠNG 2: MẬT MÃ CỔ ĐIỂN 23 2.1 LỊCH SỬ MẬT MÃ CỔ ĐIỂN 23 2.2 MẬT MÃ CAESAR 24 2.3 KỸ THUẬT THAY THẾ ĐƠN TỪ 25 2.4 KỸ THUẬT THAY THẾ ĐA TỪ 26 2.5 KỸ THUẬT ĐỔI CHỖ 28 2.6 KỸ THUẬT KẾT HỢP 30 CHƢƠNG 3: MẬT MÃ DÕNG 33 3.1 KHÁI NIỆM MẬT MÃ DÕNG 33 3.2 DỊNG KHỐ 34 3.3 MÁY TẠO DÕNG KHỐ TUYẾN TÍNH 34 3.4 MÁY CHẠY VÀ DỪNG LUÂN PHIÊN 36 3.5 ĐÁNH GIÁ ĐỘ AN TOÀN 37 3.6 CÂU HỎI VÀ BÀI TẬP 38 CHƢƠNG 4: MẬT MÃ KHỐI 41 4.1 MẠNG THAY THẾ - HOÁN VỊ SHANNON 41 4.2 CHUẨN MÃ HOÁ DỮ LIỆU - DES 44 4.3 SỬ DỤNG DES TRONG THỰC TẾ 54 4.4 CÂU HỎI VÀ BÀI TẬP 58 CHƢƠNG 5: CƠ SỞ LÝ THUYẾT SỐ 59 5.1 PHÉP TÍNH MODULO 59 5.2 BÀI TỐN RƯT GỌN LUỸ THỪA 60 5.3 BÀI TOÁN TÍNH NGHỊCH ĐẢO THEO MODULO 62 5.4 NHÓM, VÀNH VÀ TRƢỜNG 69 5.5 CÁC PHÉP TÍNH TRÊN ĐA THỨC 70 5.6 GIỚI THIỆU LÝ THUYẾT PHỨC TẠP 73 5.7 CÂU HỎI VÀ BÀI TẬP 74 CHƢƠNG 6: CHUẨN MẬT MÃ CAO CẤP AES 75 6.1 MẬT MÃ RIJNDAEL (AES) 75 6.2 BIẾN ĐỔI KHOÁ 84 6.3 SỬ DỤNG AES TRONG THỰC TẾ 85 6.4 CÂU HỎI VÀ BÀI TẬP 85 CHƢƠNG 7: MẬT MÃ KHỐ CƠNG KHAI 87 7.1 TỔNG QUAN MẬT MÃ KHỐ CƠNG KHAI 88 7.2 MẬT MÃ RSA 90 7.3 MẬT MÃ ELGAMAL 94 7.4 ĐÁNH GIÁ MẬT MÃ KHỐ CƠNG KHAI 96 7.5 CÂU HỎI VÀ BÀI TẬP 96 CHƢƠNG 8: XÁC THỰC VÀ CHỮ KÝ SỐ 99 8.1 CÁC VẤN ĐỀ VỀ XÁC THỰC 99 8.2 HÀM BĂM 105 8.3 CHỮ KÝ SỐ 108 8.4 CHUẨN CHỮ KÝ SỐ 111 8.5 CÂU HỎI VÀ BÀI TẬP 112 CHƢƠNG 9: PHÂN PHỐI KHOÁ 113 9.1 PHÂN PHỐI KHỐ CƠNG KHAI 113 9.2 PHÂN PHỐI KHĨA BÍ MẬT 117 9.3 CÂU HỎI VÀ BÀI TẬP 121 TÀI LIỆU THAM KHẢO 122 DANH MỤC HÌNH Hình 1.1 Mơ hình bảo mật máy tính 15 Hình 1.2 Mơ hình bảo mật máy tính 15 Hình 2.1 Mật mã Vigenere 27 Hình 3.1 Lược đồ mật mã dòng 33 Hình 3.2 Tạo dịng khố mật mã dòng 34 Hình 3.3 Máy tạo dịng khố tuyến tính LFSR-3 34 Hình 3.4 Máy tạo dịng khố tuyến tính LFSR-m 36 Hình 3.5 Máy chạy dừng luân phiên 36 Hình 4.1 S-box xử lý bit đầu vào 42 Hình 4.2 Mạng thay thế/hoán vị S-P 43 Hình 4.3 Lược đồ thuật toán mã hoá DES 45 Hình 4.4 Tạo khoá DES 46 Hình 4.5 Các bảng PC1 PC2 46 Hình 4.6 Biến đổi PC1 47 Hình 4.7 Biến đổi PC2 48 Hình 4.8 Biến đổi IP 49 Hình 4.9 Một vòng tính tốn 49 Hình 4.10 Hàm biến đổi E 50 Hình 4.11 XOR với khoá 51 Hình 4.12 S-box S1 51 Hình 4.13 Các S-box DES 52 Hình 4.14 Hàm hoán vị P 52 Hình 4.15 XOR với liệu trái 53 Hình 4.16 Hoán vị kết thúc IP-1 53 Hình 4.17 Mã hoá kiểu ECB 55 Hình 4.18 Mã hoá kiểu CBC 56 Hình 4.19 Mã hoá kiểu OFB 57 Hình 4.20 Mã hoá kiểu CFB 57 Hình 5.1 Cộng hai đa thức GF(23) 71 Hình 5.2 Nhân hai đa thức GF(23) 72 Hình 6.1 Các tham số AES 76 Hình 6.2 Mã hoá giải mã AES 77 Hình 6.3 Mã giả AES 77 Hình 6.4 Biến đổi liệu đầu vào 78 Hình 6.5 Biến đổi liệu đầu 79 Hình 6.6 Vịng tính toán 79 Hình 6.7 Biến đổi với S-box 80 Hình 6.8 S-box 80 Hình 6.9 Xây dựng S-box 81 Hình 6.10 Biến đổi ShiftRows 81 Hình 6.11 Biến đổi MixColumns 81 Hình 6.12 Biến đổi AddRoundKey 83 Hình 6.13 Tạo khoá mở rộng 84 Hình 6.14 Mã giả tạo khoá mở rộng 84 Hình 6.15 Ví dụ minh hoạ tính w[36] round key 85 Hình 7.1 Mật mã khố cơng khai 87 Hình 8.1 Xác thực thông điệp 99 Hình 8.2 Xác thực mật mã đối xứng 101 Hình 8.3 Xác thực mật mã khố cơng khai (thuận) 101 Hình 8.4 Xác thực mật mã khố cơng khai (nghịch) 101 Hình 8.5 Mơ hình kép mật mã khố công khai 102 Hình 8.6 Mã xác thực thông điệp 103 Hình 8.7 Mã xác thực thơng điệp giữ bí mật 103 Hình 8.8 Xác thực thông điệp hàm băm 104 Hình 8.9 Xác thực hàm băm kết hợp mật mã khố cơng khai 104 Hình 8.10 Hàm băm đơn giản n-bit 106 Hình 8.11 Cấu trúc hàm băm an toàn 106 Hình 8.12 Mơ hình chữ ký số RSA 109 Hình 8.13 Mơ hình chuẩn chữ ký số DSS 111 - Chọn số nguyên ngẫu nhiên K với  K  p -1 (K, p-1) = - Tính S1 = K mod p Tính K-1 mod (p-1) S2 = K-1(H - XAS1) mod (p-1) Chữ ký số cặp hai giá trị: (S1, S2)  B kiểm tra chữ ký với bƣớc sau: - Tính V1 = H mod p - Tính V2 =  ) mod p Chữ ký số gọi hợp lệ V1 = V2 Thật vậy: H mod p =  H mod p = mod p = ) mod p  ) mod p Giả sử V1 = V2 Thay giá trị YA S1 mod p H - XAS1 = KS2 mod (p-1) Tính chất phần tử sinh ( phần tử sinh số nguyên tố p dãy , 2,…, p-1 dãy 1,2,…,p-1 theo mod p Từ suy  m = mod p  m = mod (p - 1)  i =  j mod p  i = j mod (p - 1) ) H - XAS1 = KK-1(H - XAS1) mod (p-1) Thay S2 Điều hiển nhiên !  Ví dụ chữ ký số ElGamal: - Cho trƣớc: p = 11,  = - Chọn khóa cá nhân: XA = - Tính: YA = - Khóa cơng khai: (YA, , p) = (3, 2,11) mod p = 28 mod 11 = Để ký thơng điệp M có giá trị băm H = H(M) = 5, ta làm bước: - Chọn số ngẫu nhiên K = 9; Khẳng định: gcd(K, p-1) = (9, 10) = - Tính: S1 = K mod p = 29 mod 11 = - Tính: K-1 mod (p-1) = 9-1 mod 10 = - S2 = K-1(H - XAS1) mod (p-1) =  (5 -  6) mod 10 = Chữ ký số là: (S1, S2) = (6, 3) Để kiểm tra chữ ký số ta cần khẳng định V1 = V2 với: 110 V1 = H mod p = 25 mod 11 = 10 V2 =  ) mod p = 36  63 mod 11 =  mod 11 = 10 Chữ ký số hợp lệ ! 8.4 CHUẨN CHỮ KÝ SỐ Năm 1991, NIST công bố chuẩn chữ ký số (Digital Signature Standard - DSS, FIPS 186) Chuẩn chữ ký số DSS sử dụng hàm băm SHA thuật toán chữ ký số DSA Sau ba lần điều chỉnh, cuối DSS FIPS 186-3 vào năm 2009 Mơ hình DSS chuẩn phiên có dạng: Hình 8.13 Mơ hình chuẩn chữ ký số DSS Các tham số DSA gồm có:  Các tham số toàn cục: - p số nguyên tố, với 2L-1 < p < 2L ; 512  L  1024 L bội 64 - q ƣớc số nguyên tố p - 1, với 2159 < q < 2160 (q có độ dài 160 bit) - g = h(p-1)/q mod p, với h thoả < h < p - cho h(p-1)/q mod p >  Khoá cá nhân người dùng: x số ngẫu nhiên khoảng < x < q  Khoá công khai người dùng: y = gx mod p  Số bí mật người dùng: k số ngẫu nhiên khoảng < k < q 111 Các số p, q, g cần đƣợc cơng bố cơng khai cho nhóm ngƣời; x y tƣơng ứng khoá cá nhân khố cơng khai ngƣời dùng, chúng khơng đƣợc thay đổi khoảng thời gian Các tham số x k dùng để tạo chữ ký số chúng cần đƣợc giữ bí mật Tham số k cần đƣợc thay đổi tạo chữ ký  Q trình ký: Thơng điệp đƣợc ký M; Tính: - H(M) = SHA(M) - r = (gk mod p) mod q - s = (k-1 (H(M) + xr) ) mod q Chữ ký số cặp (r, s)  Kiểm tra chữ ký: (Giả sử nhận giá trị:M’, r’ s’) Tính - w = (s')-1 mod q - u1 = ( H(M')w ) mod q - u2 = ( (r')w ) mod q - v = ( (gul yu2) mod p ) mod q Kiểm tra, v = r', chữ ký hợp lệ tin tƣởng chắn thơng điệp nhận đƣợc đƣợc gửi từ ngƣời có cặp khoá (x, y) 8.5 CÂU HỎI VÀ BÀI TẬP Tìm hiểu thêm hàm băm SHA-512 tài liệu: http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf Tìm hiểu thêm chuẩn chữ ký số DSS tài liệu: http://csrc.nist.gov/publications/fips/fips186-3/fips_186-3.pdf Minh họa quy trình chữ ký số RSA với thông số sau: - Cho: p = 7, q =13, e = - Tính cặp khóa cá nhân cơng khai - Tiến hành q trình ký kiểm tra với thơng điệp M có H(M) = Minh họa quy trình chữ ký số ElGamal với thông số sau: - Số nguyên tố p = 31, số  = 12, XA = - Xác định khóa cơng khai ngƣời ký - Ký kiểm tra với thông điệp M có H(M) = 18 (chọn k = 3) 112 Chương PHÂN PHỐI KHOÁ Chương giới thiệu số phương pháp phân phối khố cơng khai khố bí mật đến cho người dùng Đối với loại khố cần bảo đảm tính xác thực, tính tồn vẹn, tính bí mật khố phân phối Phân phối khố an tồn ba vấn đề quan trọng mật mã khố cơng khai Trong chƣơng đề cập đến trƣờng hợp, ngƣời dùng nhận đƣợc khố cơng khai, nhƣng khơng có chế để kiểm tra xác chủ nhân thực khố ai, bị công lừa đảo “Man in the middle” Trong chƣơng này, khảo sát phƣơng pháp cho phép phân khối khoá an tồn 9.1 PHÂN PHỐI KHỐ CƠNG KHAI Trong mục phƣơng pháp phân phối khóa cơng khai đƣợc xem xét là: ̶ Cơng bố khóa cơng khai ̶ Sử dụng thƣ mục khóa cơng khai ̶ Sử dụng trung tâm quản lý khóa cơng khai ̶ Sử dụng chứng khóa cơng khai 9.1.1 Cơng bố khóa cơng khai Hình 9.1 Cơng bố khố cơng khai 113 Chủ nhân khố cơng khai tuỳ ý cơng bố khố cơng khai Khố cơng khai đƣợc công bố phƣơng tiện thông tin đại chúng nhƣ báo chí, truyền thanh, truyền hình, cơng cụ Internet nhƣ mạng xã hội, thƣ điện tử, trang web, blogs, diễn đàn phát tán lên mạng với phƣơng pháp khác Chủ nhân khoá cơng khai dùng phƣơng pháp quảng cáo khác để phổ biến thơng tin khố Nhƣ vậy, việc cơng bố khố đƣợc thực dễ dàng Tuy nhiên, dễ dàng mà thơng tin dễ bị thay đổi mạo danh Phƣơng pháp cơng bố khố cơng khai thƣờng đƣợc sử dụng môi trƣờng hạn chế thơng tin khố khơng q quan trọng 9.1.2 Thƣ mục khóa cơng khai Hình 9.2 Thư mục khóa cơng khai Thư mục khóa cơng khai đƣợc tạo mạng Internet Thƣ mục chứa thực thể gồm tên chủ nhân khố khóa cơng khai tƣơng ứng Chủ nhân khóa cần đăng ký với thƣ mục trƣớc đƣa thơng tin khố cơng khai lên thƣ mục Chủ nhân khóa cơng khai đăng nhập vào thƣ mục thay đổi thơng tin khóa lúc Mọi ngƣời thay đổi khố cơng khai Thƣ mục khố công khai cần đƣợc công bố thƣờng xuyên mạng thƣ mục khố cơng khai cần đƣợc truy cập đƣờng điện tử Việc quản lý thƣ mục khoá công khai thƣờng đƣợc thực sở tự nguyện thƣ mục thƣờng khơng thu phí 114 Phƣơng pháp khơng an tồn khơng ổn định Kẻ gian làm thay đổi giả mạo khố cơng khai ngƣời khác cách khơng khó khăn Hơn nữa, thƣ mục khố cơng khai bị cơng từ chối dịch vụ hoặc, chí, bị xố hồn tồn nội dung thƣ mục 9.1.3 Trung tâm quản lý khóa cơng khai Hình 9.3 Trung tâm quản lý khóa cơng khai Trung tâm quản lý khóa cơng khai lƣu trữ khố cơng khai ngƣời dùng cấp cho có nhu cầu tra cứu khố cơng khai ngƣời khác cách xác thực an toàn Cơ chế hoạt động trung tâm nhƣ sau: - Ngƣời dùng A gửi thông điệp cho trung tâm yêu cầu cấp thông tin khóa cơng khai B: Request || Time1 - Trung tâm gửi lại A khóa cơng khai B: EKRtt [KUB || Request || Time1 ] - B làm tƣơng tự nhƣ A để có đƣợc KUA - A gửi cho B: EKUB [IDA || N1], N1 dùng để xác thực thông điệp 115 - B sau gửi cho A: EKUA [N1 || N2] – xác thực B chủ nhân khóa KUB - Cuối cùng, A gửi cho B: EKUB [N2] – A tự xác định Quy trình (1)(2) (4)(5) tƣơng tự với mục tiêu yêu cầu khoá cơng khai từ trung tâm quản lý khố cơng khai Trong trình gửi yêu cầu nhận trả lời có giá trị time1và time2 mốc thời gian nhằm phân biệt yêu cầu khác EKRtt quy trình mã hố, sử dụng khố cá nhân trung tâm nhằm xác thực bảo đảm tính tồn vẹn thơng điệp trả lời Quy trình (3)(6)(7) quy trình bắt tay (handshake) A B nhằm xác thực lẫn N1 N2 giá trị dùng để xác thực IDA định danh A Ƣu điểm trung tâm quản lý khóa cơng khai tăng cƣờng bảo mật so với thƣ mục phân phối khóa cơng khai; khố cơng khai đƣợc phân phối an toàn từ trung tâm Ở đây, u cầu ngƣời dùng phải biết khóa cơng khai trung tâm để kiểm tra thơng điệp trả lời từ trung tâm cần Bằng phƣơng pháp này, ngƣời dùng liên lạc với trung tâm để lấy khóa cơng khai đối tác cách an toàn Nhƣợc điểm hệ thống ngƣời dùng cần phải liên lạc trực tiếp với trung tâm cần khóa cơng khai khơng phải lúc làm đƣợc việc 9.1.4 Chứng khóa cơng khai Chứng khố cơng khai trung tâm quản lý khố cơng khai (Certificate Authority - CA) cấp Cơ chế hoạt động hệ thống nhƣ sau: - A gửi thông điệp cho CA yêu cầu cấp chứng cho khóa cơng khai (KUA) (Chứng A tạo A uỷ quyền CA tạo cho mình) - CA cấp cho A chứng khố cơng khai (CA): CA = EKRauth [Time1 || IDA || KUA ] 116 - B làm tƣơng tự nhƣ A để có chứng cho khóa ơng khai (KUB ) CB - A gửi CA cho B B gửi CB cho A - A B đọc chứng nhận đƣợc để xác định khóa cơng khai Hình 9.4 Chứng khóa cơng khai Chứng CA có giá trị time1 tổng hợp mốc thời gian nhƣ ngày cấp, thời hạn có giá trị chứng CA IDA cho biết chứng A KUA khố cơng khai A EKRAuth mã hoá khoá cá nhân CA, dùng để xác thực thông tin mà CA cấp Nhƣ vậy, chất chứng CA tạo liên kết IDA với KUA khoảng thời gian đƣợc xác định Time1 tất thông tin đƣợc bảo đảm ngƣời thứ ba tin tƣởng CA Chứng khố cơng khai có ƣu điểm cho phép trao đổi khóa cơng khai mà không cần truy cập với thời gian thực tới nơi quản lý khóa Chứng khố cơng khai xác thực ngƣời sở hữu khóa cơng khai tƣơng ứng Chứng khố cơng khai thƣờng kèm theo thơng tin khác nhƣ: thời hạn có hiệu lực khóa, thuật tốn mã hóa, quyền sử dụng, …Tất nội dung đƣợc ký thành phần tin tƣởng đƣợc gọi Certificate Authority (CA) Mọi ngƣời cần có khóa cơng khai CA để kiểm tra chứng CA cấp Chứng khố cơng khai phƣơng pháp phân phối khố cơng khai thuận tiện, an toàn hiệu 9.2 PHÂN PHỐI KHĨA BÍ MẬT Quy trình mã hóa khóa cơng khai đƣợc sử dụng để phân phối an tồn khóa bí mật Mặc dù dùng mật mã khóa cơng khai để giữ bí mật thơng tin nhƣng mật mã khóa cơng khai thƣờng chậm ngƣời ta phải sử dụng mật mã khóa bí mật 117 Để bảo đảm an tồn, khóa mật mã khóa bí mật cần đƣợc thay đổi thƣờng xun Mỗi khố bí mật thơng thƣờng đƣợc sử dụng khoảng thời gian ngắn Nhiều khố bí mật thay đổi theo phiên làm việc, ta gọi khoá nhƣ khoá phiên Do khoá phiên thay đổi thƣờng xuyên nên cần phải có phƣơng pháp phân phối khố phiên cách an tồn Các phƣơng pháp phân phối khố phiên gồm có: - Phân phối khóa phiên đơn giản - Phân phối khóa phiên bí mật có xác thực (sử dụng thuật tốn mã hóa khóa cơng khai) - Phân phối khóa phiên sử dụng nguyên lý mã hóa khóa cơng khai (thuật tốn Diffie Hellman) 9.2.1 Phân phối khóa phiên đơn giản Hình 9.5 Phân phối khóa phiên đơn giản Quy trình ta ̣o và phân phớ i khóa nhƣ sau: - A tạo cặp khóa cơng khai tạm thời {KUA, KRA} - A gửi cho B khóa cơng khai với tên mình: KUA || IDA - B tạo khóa phiên KS, gửi cho A sau mã hóa khóa công khai mà A cung cấp: EKUA [KS] - A sử dụng khố cá nhân (KRA) giải mã để nhận đƣợc khóa phiên KS sau đó, B sử dụng Đây quy trình đơn giản,dễ thực nhƣng nguy bị chặn thông tin bị mạo danh trình trao đổi cao 118 9.2.2 Phân phối khóa phiên bí mật xác thực Hình 9.6 Phân phối khóa phiên bí mật xác thực Quy trình ta ̣o và phân phớ i khóa nhƣ sau: - A gƣ̉i cho B thông điê :̣p EKUB [N1 || IDA], N1 - dùng để xác thựcB - B giải mã , gắn N2 vào gƣ̉i lại cho A: EKUA [N1 || N2], N2 - dùng để xác thực A - A nhận đƣợc N1 - xác thực đƣợc B A trả lại N2 cho B: EKUB [N2] - B nhận đƣợc N2 - xác thực đƣợc A - A ta ̣o khóa phiên K S, gửi cho B sau mã hóa hai lầ n: EKUB [ EKRA [KS] ] - B giải mã, nhận đƣợc khóa phiên KS sau đó, A sử dụng Quy trình giống nhƣ quy trình bắt tay đƣợc trình bày mục 9.1.4 Phƣơng pháp này có phƣ́c ta ̣p so với phƣơng pháp nhƣng an toàn và bảo đảm đƣơ ̣c bí mâ ̣t lẫn xác thực 9.2.3 Phân phối khóa phiên theo Diffie Hellman Nội dung quy trình Diffie Hellman bao gồm bƣớc nhƣ sau: - Mỗi bên tạo cặp khóa (công khai + cá nhân) - Các bên trao đổi cho khóa cơng khai - Mỗi bên kết hợp khóa cơng khai nhận đƣợc với khóa cá nhân mà có để tạo khóa phiên - Các khóa phiên nhận đƣợc giống 119 Thuật toán an tồn từ hai khóa cơng khai đƣờng truyền khơng thể suy đƣợc khóa phiên Cơ sở tốn học thuật toán phép lũy thừa trƣờng Galoa: tốn lũy thừa có độ phức tạp O((log n)3) (dễ) tốn ngƣợc lại logarit rời rạc có độ phức tạp O(e log n log log n) (rất khó) Thuật tốn Diffie Hellman có khả bị công dạng “Man in the middle” Tuy nhiên, thuật toán dùng phổ biến thƣơng mại điện tử Ví dụ thuật tốn Diffie Hellman: Giả sử hai bạn Nam Mai muốn trao đổi khóa kênh truyền thơng cơng cộng: ̶ Họ chia sẻ số nguyên tố lớn p, phần tử sinh a ̶ Nam chọn khóa cá nhân giá trị XN, thoả: < XN < p ̶ Mai chọn khóa cá nhân giá trị XM, thoả: 1< XM < p ̶ Họ tính khóa cơng khai tƣơng ứng: ̶ Nam tính: YN = mod p ̶ Mai tính : YM = mod p ̶ Họ trao đổi khóa cơng khai cho (YN, YM) ̶ Sau họ tính khóa chung: ̶ Nam tính: KMN = = mod p ̶ Mai tính : KMN = = mod p KMN dùng nhƣ khóa phiên mật mã đối xứng để bảo mật thông tin trao đổi Nam Mai Ví dụ: Nam Mai chọn số nguyên tố p = 97, phần tử sinh a = 120 ̶ Nam Mai chọn khóa cá nhân là: XN = 36, XM = 58 ̶ Họ tính khóa cơng khai tƣơng ứng: ̶ Nam tính: YN = mod p = 536 mod 97 = 50 ̶ Mai tính : YM = mod p = 558 mod 97 = 44 ̶ Họ trao đổi khóa cơng khai cho (50 & 44) ̶ Sau họ tính khóa phiên chung: ̶ Nam tính: KMN = ̶ Mai tính : KMN = mod p = 4436 mod 97 = 75 mod p = 5058 mod 97 = 75 Giả sử Dũng ngƣời thám mã lấy đƣợc p, a, YN, YM Để tìm khóa KMN, Dũng cần tính: XN = loga(YN) mod p = log550 mod 97 = 36 (khó); đó, thuật tốn an tồn 9.3 CÂU HỎI VÀ BÀI TẬP Hãy thể phép tính quy trình trao đổi khóa cơng khai Diffie-Hellman với giá trị cụ thể sau: ̶ Số nguyên tố p = 29 ̶ Cơ số a = Các sinh viên chia thành đơi: ̶ Tự chọn khóa cá nhân ̶ Tính khóa cơng khai tƣơng ứng ̶ Trao đổi khóa cơng khai với ̶ Tính khóa phiên (session key) ̶ So sánh khóa phiên tính đƣợc với 121 TÀI LIỆU THAM KHẢO [1] William Stallings, Cryptography and Network Security: Principles and Practice, Fifth Edition, Prentice Hall, 2011 [2] Alfred J Menezes, Paul C Van Oorschot, and Scott A Vanstone, Handbook of Applied Cryptography, CRC Press, 1996 www.cacr.math.uwaterloo.ca/hac [3] B Schneier, Applied Cryptography, Protocols, Algorithms and Source Code in C John Wiley and Sons, 1995 [4] William Stallings, Lawrie Brown, Computer Security: Principles and Practice, Pearson Prentice Hall, 2008 [5] Understanding Cryptography, http://www.springer.com/computer/security+and+cryptology/book/97 8-3-642-04100-6 [6] Data Encryption Standard (DES), FIPS PUB 46-3, http://csrc.nist.gov/publications/fips/fips46-3/fips46-3.pdf [7] Advanced Encryption Standard (AES), FIPS PUB 197, http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf [8] Secure Hash Algorithm, FIPS PUB 180-2 http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf [9] Digital Signature Standard: FIPS PUB 186-2 http://csrc.nist.gov/publications/fips/archive/fips186-2/fips186-2.pdf 122 GIÁO TRÌNH BẢO MẬT THƠNG TIN TS Đặng Trường Sơn NHÀ XUẤT BẢN ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH Khu phố 6, Phường Linh Trung, Quận Thủ Đức, TPHCM Số Công trường Quốc tế, Quận 3, TP HCM ĐT: 38 239 172 - 38 239 170 Fax: 38 239 172 E-mail: vnuhp@vnuhcm.edu.vn  Chịu trách nhiệm xuất TS HUỲNH BÁ LÂN Tổ chức thảo chịu trách nhiệm tác quyền TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM Biên tập PHẠM ANH TÚ Sửa in PHẠM THỊ BÌNH Thiết kế bìa TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM GT.01.KTh(V) ĐHQG.HCM-12 155-2012/CXB/558-08/ĐHQGTPHCM KTh.GT.579 – 12 (T) In 300 khổ 16 x 24cm, Cơng ty TNHH In Bao bì Hưng Phú Số đăng ký kế hoạch xuất bản: 155-2012/CXB/558-08/ĐHQGTPHCM Quyết định xuất số: 191/QĐ-ĐHQGTPHCM cấp ngày 27/12/2012 Nhà xuất ĐHQGTPHCM In xong nộp lưu chiểu Quí I, 2013 ISBN: 978-604-73-1282-5 786047 312825 ... hỗ trợ Giáo trình tập trung nhấn mạnh đến cơng cụ quan trọng bảo mật mật mã Nội dung xuyên suốt giáo trình kỹ thuật mật mã ứng dụng chúng bảo mật thông tin Sau học xong môn Bảo mật thông tin, sinh... CHƢƠNG 1: NHẬP MÔN BẢO MẬT THÔNG TIN 11 1.1 KHÁI NIỆM BẢO MẬT THÔNG TIN 11 1.2 CÁC THÀNH PHẦN CỦA BẢO MẬT THÔNG TIN 12 1.3 KHOA HỌC MẬT MÃ 17 1.4 HỆ THỐNG MẬT MÃ ... khóa phiên bí mật xác thực 119 10 Chương NHẬP MÔN BẢO MẬT THÔNG TIN Chương giới thiệu vấn đề liên quan tới khái niệm bảo mật thông tin, thành phần, chế, mơ hình nguy bảo mật thông tin Đồng thời

Ngày đăng: 08/06/2022, 22:05

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

Tài liệu liên quan