Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 78 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
78
Dung lượng
1,89 MB
Nội dung
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN THÀNH CHUNG CHỮ KÝ SỐ VÀ ỨNG DỤNG BẢO MẬT TRANG THÔNG TIN ĐIỆN TỬ LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Nguyên - 2013 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN THÀNH CHUNG CHỮ KÝ SỐ VÀ ỨNG DỤNG BẢO MẬT TRANG THÔNG TIN ĐIỆN TỬ Chuyên ngành : Khoa học máy tính Mã số : 60.48.01 LUẬN VĂN THẠC SĨ KHOA HỌC NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS ĐOÀN VĂN BAN Thái Nguyên - 2013 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn LỜI CAM ĐOAN Tôi cam đoan luận văn này là do bản thân tự nghiên cứu và thực hiện theo sự hướng dẫn khoa học của PGS.TS Đoàn Văn Ban. Tôi hoàn toàn chịu trách nhiệm về tính pháp lý quá trình nghiên cứu khoa học của luận văn này. Thái Nguyên, ngày tháng 8 năm 2013 Ngƣời Cam Đoan Nguyễn Thành Chung Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 4 LỜI CẢM ƠN Trước tiên tôi bầy tỏ lời cảm ơn chân thành đến các Thầy, Cô giáo đã giảng dạy, hướng dẫn và giúp đỡ tôi trong thời gian học tập và nghiên cứu hoàn thành luận văn này. Xin được bầy tỏ lòng biết ơn sâu sắc tới Thầy giáo PGS.TS Đoàn Văn Ban đã tận tình hướng dẫn, giúp đỡ và đóng góp cho tôi nhiều ý kiến quí báu để hoàn thành luận văn này. Xin chân thành cảm ơn các Thầy, Cô giáo Trường Đại học Công nghệ thông tin & truyền thông Thái Nguyên và Viện Công nghệ thông tin đã giảng dạy, giúp đỡ và tạo điều kiện thuận lợi cho tôi trong thời gian học tập tại Trường. Tôi xin gửi lời cảm ơn đến các bạn đồng nghiệp và các bạn học viên lớp Cao học K10A khóa 2011 – 2013 đã giúp đỡ và tạo điều kiện thuận lợi cho tôi trong quá trình học tập và làm luận văn. Cuối cùng, xin chân thành cảm ơn gia đình và bạn bè đã động viên, quan tâm, giúp đỡ tôi hoàn thành khóa học và luận văn. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 5 MỞ ĐẦU 1. Lý do chọn đề tài Trong sự phát triển không ngừng của ngành Công nghệ thông tin kéo theo là rất nhiều ứng dụng của nó vào đời sống của con người, tạo cho chúng ta sự thoái mái trong việc giao tiếp, trao đổi thông tin, tất cả những sự việc đều được cập nhật một cách nhanh chóng trên các phương tiện truyền thông. Mọi thông tin của cá nhân, tập thể, doanh nghiệp, hay thậm chí của các bộ, ban ngành các cấp đều có thể được đưa lên mạng Internet. Làm thế nào để có thể khẳng định những thông tin đó là của ai? Để giải quyết vấn đề này không thể sử dụng con dấu hay chữ ký thông thường điều này dẫn đến sự ra đời của chữ ký số. Mặt khác sự bùng nổ phương thức truyền thông tin thông qua Internet và các phương tiện truyền thông khác đã đưa chúng ta đến việc cần phải đối mặt với việc bảo mật những thông tin cá nhân, thông tin riêng tư, các thông tin cá nhân riêng tư có thể bị thay đổi khi đưa lên Internet. Vấn đề an toàn, an ninh mạng không mới nhưng càng ngày càng trở nên quan trọng cùng với sự phát triển theo chiều rộng và chiều sâu của xã hội thông tin. Ví dụ đơn giản như gần đây rất nhiều trang web, các hệ thống mạng ở Việt nam bị hacker tấn công gây hậu quả đặc biệt nghiêm trọng. Việc xây dựng một số thuật toán tối ưu hóa nhằm tăng hiệu quả của chương trình bảo mật thông tin và ứng dụng vào chữ ký số là cơ sở nội dung trong đề tài luận văn này. 2. Đối tƣợng và phạm vi nghiên cứu Đối tƣợng nghiên cứu: Nghiên cứu các giải pháp mã hóa để bảo mật thông tin và những phương pháp, kỹ thuật tạo chữ kí số trên các tài liệu, văn bản điện tử để xác thực nguồn gốc tài liệu hay văn bản của người gửi. Các hệ mật mã khóa công khai, trong đó hệ mật mã RSA được sử dụng làm đối tượng nghiên cứu chính của đề tài nhằm phát hiện các phép xử lý toán học cần tối ưu. Từ các kết quả thu được bước đầu đề tài đưa ra một cách xây dựng thử nghiệm vào chữ ký số áp dụng được các kết quả tối ưu hóa. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 6 Luận văn sẽ tập trung nghiên cứu và làm rõ hơn về ý tưởng, cơ sở toán học, thuật toán và độ phức tạp của mã hóa nói chung và của mã hóa công khai nói riêng. Phạm vi nghiên cứu: Đề tài thực hiện tối ưu hóa với một số phép tính toán với số nguyên lớn. Ứng dụng thử nghiệm trong một hệ mã nhằm so sánh hiệu năng xử lý của hệ mã trước và sau khi tối ưu. Nghiên cứu các tài liệu về mã hóa, mật mã của các tác giả trong và ngoài nước, các bài báo, thông tin trên Internet, Nghiên cứu ngôn ngữ lập trình hướng đối tượng Visual basic 6, Visual C # 2008 để viết một ứng dụng nhỏ về chữ ký số. 3. Những nội dung chính nghiên cứu chính. Luận văn sẽ được chia thành 3 chương, phần kết quả và hướng phát triển. CHƢƠNG 1: CƠ SỞ TOÁN HỌC CỦA HỆ MẬT MÃ 1.1 Cơ sở toán học 1.2 Hệ mã hóa 1.3 Một số hệ mã hóa khóa công khai 1.4 Kết luận chương CHƢƠNG 2: CHỮ KÝ SỐ 2.1 Giới thiệu 2.2 Các ứng dụng của chữ ký số 2.3 Hàm băm 2.4 Thuật toán chữ ký số 2.5 Chứng thực khóa công khai 2.6 Kết luận chương CHƢƠNG 3: BẢO MẬT TRANG THÔNG TIN ĐIỆN TỬ 3.1 Giới thiệu trang thông tin điện tử 3.2 Bảo mật, an toàn thông tin 3.3 Bảo đảm hệ thống khỏi sự xâm nhập phá hoại từ bên ngoài 3.4 Giao thức bảo mật ứng dụng chữ ký số cho các văn bản pháp quy trên trang thông tin Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 7 3.5 Cài đặt thực nghiệm và đánh giá 3.6 Kết luận chương 4. Các kí hiệu dùng trong luận văn P Là tập hữu hạn các văn bản có thể. A Là tập hữu hạn các chữ ký có thể. K Là tập hữu hạn các khoá có thể. S Là tập các thuật toán ký. V Là tập các thuật toán kiểm thử. C Là tập hữu hạn các bản mã có thể; E Là tập hợp các hàm mã hóa có thể; D Là tập các hàm giải mã có thể; e k Thuật toán mã hoá d k Thuật toán giải mã gcd Ước chung lớn nhất lcm Bội chung nhỏ nhất Sig k Thuật toán ký Ver k Thuật toán kiểm tra chữ ký Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 8 CHƢƠNG 1: CƠ SỞ TOÁN HỌC CỦA HỆ MẬT MÃ Trong chương này tôi xin trình bày một số cơ sở toán học, các khái niệm hệ mã hóa dữ liệu, phân loại hệ mã hóa các ưu nhược điểm của hệ mã hóa, một số hệ mã hóa khóa công khai, để xác định tính toàn vẹn an toàn dữ liệu là cơ sở hình thành và xây dựng các thuật toán mã hóa. 1.1 Cơ sở toán học 1.1.1 Ƣớc chung lớn nhất, bội chung nhỏ nhất Số nguyên d được gọi là ước chung của các số nguyên a 1 , a 2 , …, a n , nếu nó là ước của tất cả các số đó. Một ước chung d > 0 của các số nguyên a 1 , a 2 , …, a n , trong đó mọi ước chung của a 1 , a 2 , …, a n đều là ước của d, thì d được gọi là ước chung lớn nhất (UCLN) của a 1 , a 2 , …, a n . Ký hiệu d = gcd (a 1 , a 2 , …, a n ) hay d = UCLN(a 1 , a 2 , …, a n ). Nếu gcd (a 1 , a 2 , …, a n ) = 1, thì các số a 1 , a 2 , …, a n được gọi là nguyên tố cùng nhau. Số nguyên m được gọi là bội chung của các số nguyên a 1 , a 2 , …, a n , nếu nó là bội của tất cả các số đó. Một bội chung m > 0 của các số nguyên a 1 , a 2 , …, a n , trong đó mọi bội chung của a 1 , a 2 , …, a n đều là bội của m, thì m được gọi là bội chung nhỏ nhất (BCNN) của a 1 , a 2 , …, a n . Ký hiệu m = lcm (a 1 , a 2 , …, a n ) hay m = BCNN (a 1 , a 2 , …, a n ). Ví dụ: Cho a =20, b =25, gcd (20, 25) = 5, lcm (20, 25) = 100. Hai số 20 và 13 là số nguyên tố cùng nhau, vì gcd (20, 13) = 1 Thuật toán Euclide tìm ước chung lớn nhất INPUT: Hai số nguyên không âm a và b, với a = b. OUTPUT: Ước số chung lớn nhất của a và b. 1. Trong khi còn b > 0, thực hiện: đặt r ← a mod b, a ←b , b ← r. 2. Cho ra kết quả (a). Ví dụ: Tìm gcd (528, 234) bằng thuật toán Euclide Ta có bảng mô phỏng kết quả sau: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 9 a b r 528 234 234 60 60 60 54 54 54 6 6 €6 0 0 Kết luận gcd (528, 234) = 6. Ta biết rằng nếu gcd (a,b) = d, thì phương trình bất định: a*x + b*y = d có nghiệm nguyên (x,y), và một nghiệm nguyên (x,y) như vậy có thể tìm được bởi thuật toán Euclide mở rộng như sau: Thuật toán Euclide mở rộng: INPUT: Hai số nguyên không âm a và b với a = b. OUTPUT: d = gcd (a,b) và hai số x,y sao cho a*x + b*y = d. 1. Nếu b = 0 thì đặt d ← a , x ←1, y ← 0, và cho ra (d, x, y). 2. Đặt x 2 = 1, x 1 = 0 , y 2 = 0 , y 1 = 1. 3. Trong khi còn b > 0, thực hiện: 3.1. q←a div b, r ← a mod b , x ← x 2 - q*x 1 , y ← y 2 - q*y 1 . 3.2. a ←b, b ←r , x 2 ← x 1 , x 1 ← x , y 2 ← y 1 và y 1 ←y. 4. Đặt d ← a, x←x 2 , y← y 2 , và cho ra kết quả (d, x, y). Ví dụ: Dùng thuật toán Euclide mở rộng tính gcd (528, 234) Ta có bảng mô phỏng sau: a b q r x y x 1 y 2 y 1 y 2 528 234 0 1 1 0 234 60 2 60 1 -2 1 0 -2 1 60 54 3 54 -3 7 -3 1 7 -2 54 6 1 6 4 -9 4 -3 -9 7 6 0 9 0 -39 88 -39 4 88 -9 Ta có thể kiểm chứng lại rằng sau mỗi lần thực hiện chu trình gồm hai lệnh 3.1 và 3.2, các giá trị x, y, r thu được luôn thoả mãn 532*x + 234*y = r. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 10 Khi kết thúc các vòng lặp (ứng với giá trị b = 0), thực hiện tiếp lệnh 4 ta được kết quả d = 6, x = 4 và y = -9, cặp số (4, -9) thoả mãn: 528*4 + 234*(-9) = 6. 1.1.2 Số nguyên tố Số nguyên tố là số tự nhiên lớn hơn 1 và chỉ có hai ước là 1 và chính nó. Số nguyên tố có vai trò và ý nghĩa to lớn trong số học và lý thuyết mật mã. Bài toán kiểm tra tính nguyên tố của một số nguyên dương n và phân tích số n thành thừa số nguyên tố là các bài toán rất được quan tâm. “Phƣơng pháp kiểm tra tính nguyên tố” Phương pháp „cổ điển‟ và phương pháp „xác suất‟. 1.1.3 Quan hệ đồng dƣ [3,4] Cho các số nguyên a, b, m (n > 0). Ta nói rằng a và b “đồng dư” với nhau theo modulo m, nếu chia a và b cho m nhận được cùng một số dư (hoặc a – b chia hết cho m). Ký hiệu: a ≡ b (mod m). Ví dụ: 23 ≡ 11 (mod 4) vì chia 23 và 11 cho 4, được cùng số dư là 3. Phƣơng trình đồng dƣ tuyến tính Phương trình đồng dư tuyến tính có dạng: a*x = b (mod m ) (1) Trong đó a, b, n là các số nguyên, m > 0, x là ẩn số. Phương trình (1) có nghiệm khi và chỉ khi d = gcd (a,m ) / b, và khi đó nó có đúng d nghiệm theo modulo m. Bây giờ ta xét hệ thống các phương trình đồng dư tuyến tính. nn max max max mod mod mod 22 11 Ta ký hiệu: m = m 1 *m 2 * *m k , M i = m / m i . Ta có định lý sau đây: Định lý Số dƣ Trung Hoa Định lý số dư Trung Hoa là tên gọi do người phương Tây đặt cho định lý này. Người Trung Hoa gọi nó là bài toán Hàn Tín điểm binh. Sử ký Tư Mã Thiên viết rằng khi Hàn Tín điểm quân số, ông cho quân lính xếp hàng 3, hàng 5, hàng 7 rồi báo cáo số dư. Từ đó ông tính chính xác quân số đến từng người. [...]... chữ ký số, chữ ký điện tử, dấu điện tử, chữ ký sinh trắc học; cách phân loại chữ ký số, quy trình tạo và kiểm tra chữ ký số, các ưu điểm của chữ ký số và thuật toán chữ ký số cùng một số sơ đồ chữ ký hiện đang được sử dụng phổ biến hiện nay và một số ứng dụng của chữ kí số cũng được giới thiệu trong chương này 2.1 Giới thiệu Một trong những ứng dụng của kỹ thuật mã hoá khóa công khai là chữ ký số Chữ. .. chữ ký và kiểm tra chữ ký Chữ ký số là một dạng chữ ký điện tử (Electronic Signature) là dạng thông tin đi kèm dữ liệu (văn bản, hình ảnh, video, ) nhằm mục đích xác định người chủ của dữ liệu đó Chữ ký số chỉ là một tập con của chữ ký điện tử, là một dạng chữ ký điện tử dựa trên công nghệ mã hoá Để sử dụng chữ ký số thì người dùng phải có một cặp khoá gồm khoá công khai (public key) và khoá bí mật (private... tử) Electronic Signature Chữ ký điện tử Digital Signature E-SIGN Chữ ký số Dấu điện tử 2.1.2.1 Digital Signatures (Chữ ký số) Chữ ký số là một dạng chữ ký điện tử, độ an toàn cao và được sử dụng rộng rãi, được phát triển dựa trên lý thuyết mật mã và thuật toán mã hóa bất đối xứng Thuật toán mã hóa dựa vào cặp khóa bí mật (Private Key) và khóa công khai (Public Key) Được sử dụng thông qua nhà cung cấp... dụng trong chữ ký số sẽ được giới thiệu chi tiết tại phần tiếp theo 2.1.1 Khái niệm Chữ ký số là mô hình sử dụng các kỹ thuật mật mã để gắn với mỗi người sử dụng một cặp khóa công khai - bí mật và qua đó có thể ký các văn bản điện tử cũng như trao đổi các thông tin mật Khóa công khai thường được phân phối thông qua chứng thực khóa công khai Quá trình sử dụng chữ ký số bao gồm 2 quá trình: tạo chữ ký. .. đồ Hình 2.2 Quy trình kiểm tra chữ ký số Chữ ký số (digital signature) là một dạng chữ ký điện tử (là tập con của chữ ký điện tử) được tạo ra bằng sự biến đổi một thông điệp dữ liệu sử dụng hệ thống mật mã công khai, theo đó người có thông điệp dữ liệu ban đầu và khóa công khai của người ký có thể xác định được 2.1.3.2 Chữ ký điện tử (electronic signature) [13] Là thông tin đi kèm theo dữ liệu (văn bản,... Khoá bí mật Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 22 dùng để tạo chữ ký số, khoá công khai dùng để thẩm định chữ ký số hay xác thực người tạo ra chữ ký số đó 2.1.2 Phân loại chữ ký số Hai nhom chí nh cua Electronic Signature (Chữ ký điện tử) đã đươc phat ́ ̉ ̣ ́ triên dưa trên 2 công nghệ cơ ban: Digital Signatures (Chữ ký số) và E-SIGN (Dấu ̉ ̣ ̉ điện tử) Electronic... dẫn: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 20 một cặp khoá có thể cùng sử dụng cho cả hai mục đích đó là mã hoá (ví dụ sử dụng khi truyền một khoá đối xứng) và chữ ký số Trong chương 1 đã trình bày những vấn đề mang tính cơ sở khoa học, nền tảng cho việc sử dụng chữ ký số vào việc bảo mật và xác thực thông tin Khái niệm chữ ký số, cách phân loại, thuật toán chữ ký. .. hỏi công nghệ cao và tốn kém đồng thời cũng có những lỗ hổng trong bảo mật (sao chép vân tay, ) 2.1.3 Cách tạo chữ ký 2.1.3.1 Chữ ký số (digital signature) [5] Là mô hình sử dụng các kỹ thuật mật mã để gắn với mỗi người sử dụng một cặp khóa công khai - bí mật và qua đó có thể ký các văn bản điện tử cũng như trao đổi các thông tin mật Khóa công khai thường được phân phối thông qua chứng thực khóa công... ký số một số sơ đồ chữ ký hiện đang được sử dụng phổ biến sẽ được trình bày trong nội dung của chương 2 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 21 CHƢƠNG 2: CHỮ KÝ SỐ Các cơ sở toán học, các hệ mã hóa khóa bí mật, khóa công khai, một số hệ mã hóa khóa công khai đã trình bày trong chương 1 là nền tảng cho việc sử dụng chữ ký số vào việc bảo mật và xác thực thông tin. .. văn bản Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 27 Hình 2.4 Sơ đồ mô tả quá trình nhận các tệp văn bản 2.2 Các ứng dụng của chữ ký số 2.2.1 Ứng dụng trong giao dịch điện tử Chữ ký số sử dụng trong các giao dịch để mua bán hàng trực tuyến, đầu tư chứng khoán trực tuyến, chuyển tiền ngân hàng, thanh toán trực tuyến Ngoài ra, Bộ tài chính cũng áp dụng chữ ký số vào kê . 3: BẢO MẬT TRANG THÔNG TIN ĐIỆN TỬ 3.1 Giới thiệu trang thông tin điện tử 3.2 Bảo mật, an toàn thông tin 3.3 Bảo đảm hệ thống khỏi sự xâm nhập phá hoại từ bên ngoài 3.4 Giao thức bảo mật. ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN THÀNH CHUNG CHỮ KÝ SỐ VÀ ỨNG DỤNG BẢO MẬT TRANG THÔNG TIN ĐIỆN TỬ Chuyên ngành : Khoa học máy tính Mã số : 60.48.01 . đối xứng) và chữ ký số. Trong chương 1 đã trình bày những vấn đề mang tính cơ sở khoa học, nền tảng cho việc sử dụng chữ ký số vào việc bảo mật và xác thực thông tin. Khái niệm chữ ký số, cách