Nhiệm vụ của đề tài Tìm hiểu về chữ ký số, các giải thuật mã hóa khóa công khai và xây dựng ứng dụng trao đổi thông tin có sử dụng chữ ký số giữa hai máy truyền thông trên mạng. Nội dung chủ yếu của đồ án này được trình bày theo 2 phần chính: • PHẦN I – CƠ SỞ LÝ THUYẾT • PHẦN II – THIẾT KẾ, XÂY DỰNG ỨNG DỤNG CHỮ KÝ SỐ TRONG BẢO MẬT TRUYỀN THÔNG
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA CÔNG NGHỆ THÔNG TIN 1 ĐỒ ÁN TỐT NGHIỆP TÊN ĐỀ TÀI : NGHIÊN CỨU VÀ ỨNG DỤNG CHỮ KÝ SỐ TRONG BẢO MẬT TRUYỀN THÔNG SINH VIÊN : NGUYỄN THỊ HUYỀN KHÓA : 2005 - 2010 HÀ NỘI - 12/2009 ĐỒ ÁN TỐT NGHIỆP Nguyễn Thị Huyền – D05 CNTT HVCNBCVT 2 ĐỒ ÁN TỐT NGHIỆP MỤC LỤC MỤC LỤC 3 LỜI MỞ ĐẦU 13 PHẦN I – CƠ SỞ LÝ THUYẾT 16 CHƯƠNG I: VẤN ĐỀ AN TOÀN THÔNG TIN TRÊN MẠNG INTERNET 17 1.1. TỔNG QUAN 17 1.1.1. An toàn mạng (Network Security) 18 1.1.2.An toàn ứng dụng (Application Security) 18 1.1.3. An toàn hệ thống (System Security) 19 1.2. CÁC NGUY CƠ MẤT AN NINH 19 1.3. DỊCH VỤ BẢO MẬT 21 1.4. CÁC GIẢI PHÁP AN NINH MẠNG 21 CHƯƠNG 2: CÁC PHƯƠNG PHÁP MÃ HÓA 23 VÀ GIẢI MÃ THÔNG TIN 23 2.1 GIỚI THIỆU CHUNG 23 2.2 MÃ HÓA VÀ GIẢI MÃ 24 Hình 2.1 Mô hình mã hóa và giải mã 24 2.3 HAI NGUYÊN TẮC CƠ BẢN CỦA MÃ HÓA 25 2.4 MÃ DÒNG VÀ MÃ KHỐI 25 2.4.1 Mô hình mã khối 25 Hình 2.2: Mô hình mã hóa khối (Cipher Block Chaining mode encryption) 25 Hình 2.3: Giải mã dùng mã hóa khối (CBC mode Decryption) 26 2.4.2 Mô hình mã dòng (Cipher Feedback mode) 27 Hình 2.4: Mô hình mã hóa dòng (CFB mode encryption) 27 Hình 2.5: Quá trình giải mã sử dụng mã dòng (CFB mode decryption) 28 2.5 MÃ HÓA ĐỐI XỨNG VÀ MÃ HÓA CÔNG KHAI 28 2.5.1 Mã hóa đối xứng 28 Hình 2.6 : Hệ mã hóa đối xứng 28 2.5.2 Mã hóa sử dụng chuẩn DES 30 Hình 2.7: Giải thuật DES 30 Hình 2.8 Cấu trúc Feistel 31 Hình 2.9: Thuật toán Triple DES 32 2.5.3 Mã hóa khai công khai và các giải thuật mã hóa công khai 32 2.5.3.1 Mã hóa khóa công khai 32 Hình 2.10 : Mô hình hệ mã hóa bất đối xứng 33 2.5.3.2 Giải thuật RSA (Rivest – Shamir - Aldeman) 35 2.5.3.3 Thuật toán trao đổi khóa Diffie - Hellman 37 2.5.4. So sánh mã hóa đối xứng và mã hóa công khai 38 Bảng 2.1: So sánh mã hóa đối xứng và mã hóa khóa công khai 39 2.6 KẾT LUẬN 39 CHƯƠNG 3: CHỮ KÝ ĐIỆN TỬ 40 3.1 GIỚI THIỆU 40 3.2 MỘT SỐ KHÁI NIỆM 40 3.3 CHỮ KÝ ĐIỆN TỬ VÀ VIỆC XÁC THỰC THÔNG TIN 43 3.3.1 Chứng thực bản tin sử dụng mã hóa truyền thống 43 3.3.2 Chứng thực bản tin không cần mã hóa bản tin 43 3.3.2.1 Sử dụng mã chứng thực bản tin MAC 43 Hình 3.1 : Chứng thực bản tin sử dụng MAC 44 Hình 3.2 : Mô hình MAC 44 3.3.2.2 Sử dụng hàm Hash để tạo thẻ chứng thực 45 Nguyễn Thị Huyền – D05 CNTT HVCNBCVT 3 ĐỒ ÁN TỐT NGHIỆP Hình 3.3 : Mô hình hàm Hash 45 Hình 3.4 : Chứng thực bản tin sử dụng mã hóa truyền thống 46 Hình 3.5 : Chứng thực sử dụng mã hóa khóa công khai 46 Hình 3.6 : Chứng thực sử dụng số bí mật 47 3.4 HOẠT ĐỘNG CỦA MỘT HỆ THỐNG CHỮ KÝ SỐ 47 49 Hình 3.7: Chữ ký số bên gửi 49 Hình 3.8 Chữ ký số bên nhận 49 3.4.1 Quá trình tạo chữ ký 49 Hình 3.9: Quá trình ký trong bản tin 49 3.4.2 Quá trình xác minh chữ ký 50 Hình 3.10: Quá trình xác minh một chữ ký số 50 3.4.3 Chứng chỉ số 51 Hình 3.11: Chứng thực thông qua CA 53 Hình 3.12: Chứng chỉ số 53 3.5 PHÂN LOẠI CÁC HỆ THỐNG CHỮ KÝ ĐIỆN TỬ 54 3.5.1 Chữ ký số với phụ lục 54 Bảng 3.1: Các kí hiệu toán học 55 3.5.2 Chữ ký số với khôi phục bản tin 55 3.5.3 Chú ý 56 3.6 GIẢI THUẬT CHỮ KÝ ĐIỆN TỬ DSA 57 3.6.1 Khái quát về DSA 57 Hình 3.13: Giải thuật DSA 58 3.6.2 Các tham số của DSA 58 3.6.3 Thuật toán tạo khóa cho DSA 58 3.6.4 Thuật toán tạo chữ ký và xác minh chữ ký 59 3.6.5 Các đặc điểm của chữ ký số DSA 59 3.7 CÁC GIẢI THUẬT BĂM BẢO MẬT 60 3.7.1 Hàm Hash đơn giản 60 Hình 3.14 : Hàm hash đơn giản sử dụng hàm tính bit XOR 61 3.7.2 Giải thuật MD5 62 3.7.3 Giải thuật RIPEMD – 160 62 3.7.4 Giải thuật SHA 62 Hình 3.15 : Cơ chế hoạt động của SHA-1 63 Hình 3.16 : Cơ chế xử lý khối đơn trong SHA-1 64 Bảng 3.2 : So sánh các giải thuật hash 65 3.8 KẾT LUẬN 65 PHẦN II: THIẾT KẾ - XÂY DỰNG HỆ THỐNG ỨNG DỤNG CHỮ KÝ SỐ TRONG BẢO MẬT TRUYỀN THÔNG 66 CHƯƠNG 4: MỘT SỐ VẤN ĐỀ VỀ KIẾN TRÚC MÃ HÓA 67 CỦA JAVA 67 4.1 JAVA SECURITY API (JSAPI) 67 4.2 JAVA CRYPTOGRAPHY ARCHITECTURE (JCA) 67 4.3 JAVA CRYPTOGRAPHY EXTENSION (JCE) 68 4.4 NHỮNG LỚP KHÁI NIỆM 68 69 Bảng 4.1 Những lớp khái niệm mã hóa 69 4.5 CÁC PHƯƠNG THỨC FACTORY 69 4.6 KIẾN TRÚC NHÀ CUNG CẤP (PROVIDER ARCHITECTURE) 70 4.7 KẾT LUẬN 70 Nguyễn Thị Huyền – D05 CNTT HVCNBCVT 4 ĐỒ ÁN TỐT NGHIỆP CHƯƠNG 5 : THIẾT KẾ, XÂY DỰNG HỆ THỐNG ỨNG DỤNG CHỮ KÝ SỐ TRONG BẢO MẬT TRUYỀN THÔNG 71 KẾT LUẬN VÀ KIẾN NGHỊ 72 TÀI LIỆU THAM KHẢO 73 PHỤ LỤC 74 Nguyễn Thị Huyền – D05 CNTT HVCNBCVT 5 ĐỒ ÁN TỐT NGHIỆP NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Nguyễn Thị Huyền – D05 CNTT HVCNBCVT 6 ĐỒ ÁN TỐT NGHIỆP NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Nguyễn Thị Huyền – D05 CNTT HVCNBCVT 7 ĐỒ ÁN TỐT NGHIỆP NHỮNG CHỮ VIẾT TẮT TRONG ĐỒ ÁN Nguyễn Thị Huyền – D05 CNTT HVCNBCVT 8 ĐỒ ÁN TỐT NGHIỆP DANH MỤC CÁC HÌNH VẼ MỤC LỤC 3 LỜI MỞ ĐẦU 13 PHẦN I – CƠ SỞ LÝ THUYẾT 16 CHƯƠNG I: VẤN ĐỀ AN TOÀN THÔNG TIN TRÊN MẠNG INTERNET 17 CHƯƠNG 2: CÁC PHƯƠNG PHÁP MÃ HÓA 23 VÀ GIẢI MÃ THÔNG TIN 23 Hình 2.1 Mô hình mã hóa và giải mã 24 Hình 2.2: Mô hình mã hóa khối (Cipher Block Chaining mode encryption) 25 Hình 2.3: Giải mã dùng mã hóa khối (CBC mode Decryption) 26 Hình 2.4: Mô hình mã hóa dòng (CFB mode encryption) 27 Hình 2.5: Quá trình giải mã sử dụng mã dòng (CFB mode decryption) 28 Hình 2.6 : Hệ mã hóa đối xứng 28 Hình 2.7: Giải thuật DES 30 Hình 2.8 Cấu trúc Feistel 31 Hình 2.9: Thuật toán Triple DES 32 Hình 2.10 : Mô hình hệ mã hóa bất đối xứng 33 Bảng 2.1: So sánh mã hóa đối xứng và mã hóa khóa công khai 39 CHƯƠNG 3: CHỮ KÝ ĐIỆN TỬ 40 Hình 3.1 : Chứng thực bản tin sử dụng MAC 44 Hình 3.2 : Mô hình MAC 44 Hình 3.3 : Mô hình hàm Hash 45 Hình 3.4 : Chứng thực bản tin sử dụng mã hóa truyền thống 46 Hình 3.5 : Chứng thực sử dụng mã hóa khóa công khai 46 Hình 3.6 : Chứng thực sử dụng số bí mật 47 49 Hình 3.7: Chữ ký số bên gửi 49 Hình 3.8 Chữ ký số bên nhận 49 Hình 3.9: Quá trình ký trong bản tin 49 Hình 3.10: Quá trình xác minh một chữ ký số 50 Hình 3.11: Chứng thực thông qua CA 53 Hình 3.12: Chứng chỉ số 53 Bảng 3.1: Các kí hiệu toán học 55 Hình 3.13: Giải thuật DSA 58 Hình 3.14 : Hàm hash đơn giản sử dụng hàm tính bit XOR 61 Hình 3.15 : Cơ chế hoạt động của SHA-1 63 Hình 3.16 : Cơ chế xử lý khối đơn trong SHA-1 64 Bảng 3.2 : So sánh các giải thuật hash 65 PHẦN II: THIẾT KẾ - XÂY DỰNG HỆ THỐNG ỨNG DỤNG CHỮ KÝ SỐ TRONG BẢO MẬT TRUYỀN THÔNG 66 CHƯƠNG 4: MỘT SỐ VẤN ĐỀ VỀ KIẾN TRÚC MÃ HÓA 67 CỦA JAVA 67 69 Bảng 4.1 Những lớp khái niệm mã hóa 69 CHƯƠNG 5 : THIẾT KẾ, XÂY DỰNG HỆ THỐNG ỨNG DỤNG CHỮ KÝ SỐ TRONG BẢO MẬT TRUYỀN THÔNG 71 KẾT LUẬN VÀ KIẾN NGHỊ 72 TÀI LIỆU THAM KHẢO 73 Nguyễn Thị Huyền – D05 CNTT HVCNBCVT 9 ĐỒ ÁN TỐT NGHIỆP PHỤ LỤC 74 Nguyễn Thị Huyền – D05 CNTT HVCNBCVT 10 [...]... sử dụng trong quá trình xây dựng ứng dụng chữ ký số sẽ được trình bày trong chương 5 o Chương 5: Thiết kế - xây dựng ứng dụng chữ ký số Chương này trình bày tóm tắt quá trình phân tích, thiết kế ứng dụng chữ ký số trong bảo mật truyền thông, những thử nghiệm và đánh giá hệ thống Nhìn chung, toàn bộ đồ án đã đưa ra một cách khái quát về việc nghiên cứu, tìm hiểu hệ thống mạng an toàn và bảo mật Song... xác thực thông tin truyền thông trên mạng Nhiệm vụ của đề tài Tìm hiểu về chữ ký số, các giải thuật mã hóa khóa công khai và xây dựng ứng dụng trao đổi thông tin có sử dụng chữ ký số giữa hai máy truyền thông trên mạng Nội dung chủ yếu của đồ án này được trình bày theo 2 phần chính: • PHẦN I – CƠ SỞ LÝ THUYẾT • PHẦN II – THIẾT KẾ, XÂY DỰNG ỨNG DỤNG CHỮ KÝ SỐ TRONG BẢO MẬT TRUYỀN THÔNG Đồ án bao gồm... Chứng thực bản tin sử dụng mã hóa truyền thống 46 Hình 3.5 : Chứng thực sử dụng mã hóa khóa công khai 46 Hình 3.6 : Chứng thực sử dụng số bí mật 47 49 Hình 3.7: Chữ ký số bên gửi 49 Hình 3.8 Chữ ký số bên nhận .49 Hình 3.9: Quá trình ký trong bản tin 49 Hình 3.10: Quá trình xác minh một chữ ký số 50 Hình 3.11: Chứng thực thông. .. đích Do đó những thông tin nhạy cảm và mang tính riêng tư có thể bị nghe lén hoặc lấy trộm, thay đổi trên đường truyền Việc sử dụng chữ ký số là giải pháp có hiệu quả để giúp người sử dụng tránh được các nguy cơ nói trên Khi sử dụng chữ ký số, người sử dụng có thể mã hóa dữ liệu để giải quyết vấn đề nghe trộm, nghe lén thông tin và sử dụng chữ ký để giải quyết vấn đề mạo danh, giả mạo và từ chối dịch... công chứng, bầu cử vv có thể thực hiện hoàn toàn thông qua mạng, việc này không chỉ tạo ra sự tiện lợi cho các bên tham gia truyền thông mà còn làm tiết kiệm đáng kể chi phí đi lại và các thủ tục hành chính Mục đích của đề tài Nghiên cứu, tìm hiểu mã hóa khóa công khai và chữ ký số để thấy được tầm quan trọng của chữ ký số trong các giao dịch thương mại điện tử Vấn đề đảm bảo an toàn và xác thực thông. .. 2.5 MÃ HÓA ĐỐI XỨNG VÀ MÃ HÓA CÔNG KHAI 2.5.1 Mã hóa đối xứng Mã hóa đối xứng hay còn gọi là mã hóa khóa bí mật Hai bên tham gia truyền thông sử dụng chung một khóa, gọi là khóa bí mật để thực hiện mã hóa và giải mã bản tin truyền cho nhau Gọi là đối xứng vì ở đây sử dụng chung một khóa cho cả việc mã hóa và giải mã Mô hình hệ mã hóa đối xứng Hình 2.6 : Hệ mã hóa đối xứng Mức độ bảo mật của phương pháp... hảo là giải pháp đảm bảo an toàn cho dữ liệu truyền trên mạng thông qua các thành phần: Bảo vệ vật lý, mật mã hóa, kiểm soát truy nhập, chứng thực và xác thực thông tin Trong các chương tiếp theo, chương 2 sẽ trình bày cụ thể về các giải pháp mã hóa và giải mã; chương 3 sẽ trình bày về vấn đề xác thực và chứng thực thông tin truyền trên mạng sử dụng chữ ký số Nguyễn Thị Huyền – D05 CNTT 22 HVCNBCVT ĐỒ... THIẾT KẾ - XÂY DỰNG HỆ THỐNG ỨNG DỤNG CHỮ KÝ SỐ TRONG BẢO MẬT TRUYỀN THÔNG 66 CHƯƠNG 4: MỘT SỐ VẤN ĐỀ VỀ KIẾN TRÚC MÃ HÓA 67 CỦA JAVA 67 69 Bảng 4.1 Những lớp khái niệm mã hóa 69 CHƯƠNG 5 : THIẾT KẾ, XÂY DỰNG HỆ THỐNG ỨNG DỤNG CHỮ KÝ SỐ TRONG BẢO MẬT TRUYỀN THÔNG 71 KẾT LUẬN VÀ KIẾN NGHỊ 72 TÀI LIỆU THAM KHẢO ... gia truyền thông đều được xác thực Đảm bảo độ tin cậy của dữ liệu (Data Confidentiality): bảo vệ dữ liệu khỏi những tấn công thụ động ( những tấn công mà bên bị tấn công không biêt) Toàn vẹn dữ liệu(Data Intergrity): Đảm bảo dữ liệu truyền đi trên đường truyền không có sự sửa đổi, thay thế hoặc tái sử dụng Tính bí mật (Privacy): khả năng đảm bảo thông tin giữa người gửi và người nhận được bảo mật. .. sử dụng để xây dựng các ứng dụng bảo mật như DES, RSA Nguyễn Thị Huyền – D05 CNTT 14 HVCNBCVT ĐỒ ÁN TỐT NGHIỆP o Chương 3: Xác thực thông tin dùng chữ ký số Chương này trình bày các vấn đề về xác thực thông tin và các giao thức xác thực thông tin o Chương 4: Một số vấn đề vè kiến trúc mã hóa của JAVA Giới thiệu khái quát về kiến trúc mã hóa của JAVA với mục đích làm rõ thêm những vấn đề sẽ được sử dụng . chính: • An toàn mạng (Network Security) • An toàn ứng dụng (Application Security) • An toàn hệ thống (System Security) 1.1.1. An toàn mạng (Network Security) Quan tâm đến việc đảm bảo an toàn. 16 CHƯƠNG I: VẤN ĐỀ AN TOÀN THÔNG TIN TRÊN MẠNG INTERNET 17 1.1. TỔNG QUAN 17 1.1.1. An toàn mạng (Network Security) 18 1.1.2 .An toàn ứng dụng (Application Security) 18 1.1.3. An toàn hệ thống. trong phạm vi của mình. An toàn hệ thống khác với an toàn dữ liệu. Nếu như an toàn dữ liệu đảm bảo bất cứ lúc nào, ở đâu và bằng cách nào dữ liệu được lưu trữ an toàn thì an toàn hệ thống là nhằm