Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 56 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
56
Dung lượng
759,38 KB
Nội dung
TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI CG KHOA CÔNG NGHỆ THÔNG TIN DƢƠNG THỊ LỰU TÌM HIỂU MỘT SỐ GIAO THỨC THỎA THUẬN KHÓA VÀ CÀI ĐẶT CHƢƠNG TRÌNH MINH HỌA KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC Chuyên ngành: Sƣ phạm Tin học Ngƣời hƣớng dẫn khoa học ThS Đỗ Thị Lan Anh HÀ NỘI, 2017 LỜI CẢM ƠN Em xin chân thành cảm ơn cô giáo ThS Đỗ Thị Lan Anh, giảng viên Khoa Công nghệ thông tin, trƣờng Đại học Sƣ phạm Hà Nội 2, ngƣời trực tiếp hƣớng dẫn em suốt thời gian qua để em hoàn thành khóa luận Em xin gửi lời cảm ơn tới thầy, cô giáo Khoa Công nghệ thông tin, bạn lớp K39 – sƣ phạm tin học tạo điều kiện, động viên khích lệ em suốt trình học tập nghiên cứu Do thời gian nghiên cứu hạn chế nên vấn đề mà em trình bày khóa luận không tránh khỏi thiếu xót Em kính mong nhận đƣợc ý kiến đóng góp từ thầy cô bạn để khóa luận em đƣợc hoàn thiện Em xin trân thành cảm ơn! Hà Nội, ngày tháng năm 2017 Tác giả Dƣơng Thị Lựu LỜI CAM ĐOAN Tôi xin cam đoan khóa luận đƣợc hoàn thành cố gắng, nỗ lực thân, dƣới hƣớng dẫn tận tình cô giáo ThS Đỗ Thị Lan Anh tham khảo số tài liệu đƣợc ghi rõ nguồn Khóa luận hoàn toàn không chép từ tài liệu có sẵn Kết nghiên cứu không trùng lặp với tác giả khác Nếu sai, xin hoàn toàn chịu trách nhiệm! Hà nội, ngày tháng năm 2017 Ngƣời cam đoan Dƣơng Thị Lựu DANH MỤC CHỮ CÁI VIẾT TẮT AKAKC CA CSDL Giao thức trao đổi khóa xác thực kèm xác nhận khóa (Authenticated Key Agreement with Key Confirmation) Cơ quan chứng thực số (Certificate Authority) Cơ sở liệu DES Chuẩn mã hóa liệu (Data Encryption Standard) PKI Cơ sở hạ tầng khóa công khai (Public Key Infrastructure) RSA STS TA Hệ thống mã chứng thực Ron Rivest, Adi Shamir, Leonard Adleman đề xuất Giao thức thỏa thuận khóa trạm tới trạm (Station To Station) Cơ quan đƣợc ủy quyền tin cậy (Trust Authority) TMDT Thƣơng mại điện tử UCLN Ƣớc chung lớn DANH MỤC HÌNH Hình 1.1 Sơ đồ mã hóa với khóa mã khóa giải giống 13 Hình 3.1 Nhập liệu 40 Hình 3.2 Giá trị hai ngƣời dùng gửi cho 41 Hình 3.3 Khóa bí mật chung tính đƣợc 41 MỤC LỤC MỞ ĐẦU CHƢƠNG TỔNG QUAN VỀ AN TOÀN VÀ BẢO MẬT THÔNG TIN 1.1 Một số vấn đề an toàn bảo mật thông tin 1.1.1 Lý cần đảm bảo an toàn bảo mật thông tin 1.1.2 Khái niệm an toàn bảo mật thông tin 1.1.3 Mục tiêu an toàn bảo mật thông tin 1.1.4 Một số vấn đề rủi ro an toàn thông tin 1.1.5 Các chiến lƣợc bảo vệ an toàn cho hệ thống 1.2 Vấn đề mã hóa liệu 11 1.2.1 Hệ mã hóa 11 1.2.2 Vai trò hệ mã hóa 14 1.2.3 Những yêu cầu hệ mã hóa 14 1.2.4 Phân loại hệ mã hóa 14 1.2.5 Tiêu chuẩn đánh giá hệ mã hóa 17 1.2.6 Ứng dụng hệ mã hóa 18 CHƢƠNG CÁC GIAO THỨC THỎA THUẬN KHÓA 19 2.1 Giao thức phân phối khóa 19 2.1.1 Giao thức phân phối khóa Blom 20 2.1.2 Giao thức phân phối khóa Diffie-Hellman 25 2.1.3 Giao thức phân phối khóa “tƣơi” Kerboros 26 2.1.4 Sơ đồ chia sẻ bí mật ngƣỡng Shamir 28 2.2 Giao thức thỏa thuận khóa 32 2.2.1 Giao thức thỏa thuận khóa Diffie-Hellman 32 2.2.2 Giao thức thỏa thuận khóa trạm tới trạm (Station to Station – STS) 34 2.2.3 Giao thức Girault trao đổi khóa không chứng 36 CHƢƠNG CÀI ĐẶT CHƢƠNG TRÌNH THỬ NGHIỆM 39 3.1 Phát biểu toán 39 3.2 Yêu cầu toán 39 3.3 Giao diện chƣơng trình 40 3.4 Đánh giá kết chƣơng trình 42 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 43 TÀI LIỆU THAM KHẢO 45 MỞ ĐẦU Lý chọn đề tài Trao đổi thông tin nhu cầu thiết yếu ngƣời, đặc biệt sống đại ngày mà mạng máy tính internet phát triển cách mạnh mẽ giữ vai trò quan trọng lĩnh vực đời sống xã hội, tạo nên xã hội toàn cầu, nơi mà ngƣời tƣơng tác trao đổi thông tin cách nhanh chóng hiệu Khi mạng máy tính internet trở thành phƣơng tiện làm việc hệ thống nhu cầu bảo mật thông tin đƣợc đặt lên hàng đầu, nhu cầu máy an ninh, quốc phòng, quản lý nhà nƣớc, mà trở nên cấp thiết nhiều hoạt động kinh tế xã hội nhƣ tài chính, ngân hàng, thƣơng mại Thậm chí số hoạt động thƣờng ngày ngƣời dân nhƣ thƣ điện tử, toán tín dụng… Do ý nghĩa quan trọng này, năm gần đây, công nghệ mật mã an toàn thông tin có bƣớc tiến vƣợt bậc thu hút quan tâm chuyên gia lĩnh vực khoa học, công nghệ Lịch sử mật mã học khẳng định: Hầu nhƣ giữ bí mật thiết kế thuật toán đƣợc sử dụng rộng rãi Trái lại, việc giữ bí mật khóa dễ nhiều khóa thƣờng đoạn thông tin ngắn ta dễ dàng thay đổi chúng có dấu hiệu bị lộ Vì thế, an ninh hệ thống thƣờng dựa việc giữ bí mật khóa Hiện nay, có số giao thức thỏa thuận khóa đáp ứng nhu cầu trao đổi bí mật khóa, đảm bảo an toàn bảo mật thông tin truyền Với lí trên, em chọn đề tài “Tìm hiểu số giao thức thỏa thuận khóa cài đặt chƣơng trình minh họa” cho khóa luận Mục đích nghiên cứu Nghiên cứu hệ mã hóa, số giao thức thỏa thuận khóa, phân phối khóa Nhiệm vụ nghiên cứu - Nghiên cứu phân tích giải pháp an toàn khóa việc phân phối, thỏa thuận khóa - Cài đặt chƣơng trình minh họa cho giao thức thỏa thuận khóa Đối tƣợng phạm vi nghiên cứu - Một số vấn đề an toàn bảo mật thông tin - Giao thức thỏa thuận khóa Ý nghĩa khoa học thực tiễn đề tài Phần nghiên cứu lý thuyết cung cấp cách nhìn tổng quan vấn đề an toàn khóa bảo mật thông tin Tìm hiểu giao thức phân phối khóa, giao thức thỏa thuận khóa, giúp phân tích lựa chọn giải pháp tiến hành cài đặt, thử nghiệm giao thức Phƣơng pháp nghiên cứu Phƣơng pháp nghiên cứu lý thuyết: Thu thập tài liệu, tài liệu liên quan đến giao thức, mô hình phân phối, thỏa thuận khóa Tổng hợp cách có hệ thống tài liệu thu đƣợc Phƣơng pháp nghiên cứu thực nghiệm: Cài đặt minh học giao thức thỏa thuận khóa Cấu trúc khóa luận Ngoài phần mở đầu, kết luận, tài liệu tham khảo, phụ lục luận văn bao gồm chƣơng Chƣơng Tổng quan an toàn bảo mật thông tin Chƣơng Các giao thức thỏa thuận khóa Chƣơng Cài đặt chƣơng trình thử nghiệm CHƢƠNG TỔNG QUAN VỀ AN TOÀN VÀ BẢO MẬT THÔNG TIN 1.1 Một số vấn đề an toàn bảo mật thông tin 1.1.1 Lý cần đảm bảo an toàn bảo mật thông tin Thông tin tài sản vô quý giá phủ, tổ chức, doanh nghiệp hay cá nhân Chính vậy, việc trao đổi giữ bí mật thông tin vấn đề quan trọng Ngày nay, xuất internet mạng máy tính giúp cho việc trao đổi thông tin trở nên nhanh gọn dễ dàng Tuy nhiên xuất làm phát sinh nhiều vấn đề mới, thông tin quan trọng nằm kho liệu hay đƣờng truyền bị đánh cắp hay giả mạo Điều ảnh hƣởng tới cá nhân, tổ chức, công ty hay quốc gia Hơn nữa, số vụ công internet ngày nhiều có quy mô lớn hơn, tình trạng tội phạm công nghệ cao xảy nhức nhối khó kiểm soát mà hậu để lại ảnh hƣởng trực tiếp đến kinh tế tâm lý xã hội Ví dụ nhƣ gần nhƣ vụ công tin tặc chiều 29 tháng năm 2016 nhằm vào hệ thống thông tin sân bay Việt Nam Các hình sân bay bị chèn hình ảnh nội dung xúc phạm Việt Nam Philippin, xuyên tạc nội dung biển Đông, đồng thời khoảng 411.000 liệu thông tin hành khách máy bay bị hacker thu thập phát tán 100 chuyến bay bị ảnh hƣởng Nhƣ vậy, vấn đề bảo mật an toàn thông tin trở nên hữu, tác động đến vấn đề trị, an ninh quốc gia Chính vậy, vấn đề trở thành yêu cầu chung hoạt động kinh tế xã hội giao tiếp ngƣời, vấn đề cấp bách cần đƣợc coi trọng quan tâm đặc biệt 1.1.2 Khái niệm an toàn bảo mật thông tin An toàn bảo mật thông tin việc đảm bảo an toàn cho thông tin gửi nhƣ thông tin nhận, giúp xác nhận thông tin nhận đảm bảo không bị công hay thay đổi thông tin truyền Mỗi ngƣời sử dụng có sơ đồ chữ ký với thuật toán xác minh Trung tâm có sơ đồ chữ ký với thuật toán xác minh công khai Ngƣời sử dụng v có dấu xác nhận: ( chọn số ngẫu nhiên ) ) , bí mật ( Tính , bí mật ( gửi đến V chọn số ngẫu nhiên Tính: , , đến gửi tính dùng , để xác minh u tính xác minh nhờ gửi đến để kiểm thử dùng , để kiểm thử dùng Nếu tất bƣớc đƣợc thực phép kiểm thử cho kết đắn giao thức đƣợc kết thúc, chung Do việc dùng thuật toán kiểm thử nên biết giá trị có đƣợc khóa biết giá trị , loại trừ khả ngƣời khác đánh tráo giá trị đƣờng Mức an toàn: Giao thức bảo vệ trƣớc công kẻ xâm nhập cuộc: - Giống nhƣ giao thức phân phối khóa Difffie – Hellman, kẻ công chặn bắt thay Sau từ 35 chặn bắt , muốn thay - phải thay Điều có nghĩa khó tính Đáng tiếc thuật toán kí - Tƣơng tự, thay thuật toán kí Giao thức STS không đƣa khẳng định khóa Tức bƣớc 2, đƣợc gửi tới bƣớc 3, đƣợc gửi tới , nhƣng chƣa đảm bảo thật an toàn Có thể bảo đảm an toàn cách: Mã hóa khóa : ( ) Mã hóa khóa : ( ) 2.2.3 Giao thức Girault trao đổi khóa không chứng Trong giao thức này, ngƣời sử dụng không cần dùng chứng mà thay khóa công khai tự chứng thực đƣợc cấp trƣớc TA Phƣơng pháp sử dụng kết hợp đặc tính toán RSA logarit rời rạc Giả sử tích hai số nguyên tố lớn số nguyên tố lớn Nhóm nhân , với tích của , Cấp cao phần tử , tức Nhóm tuần hoàn sinh rời rạc theo số Các số với UCLN( Giả sử , đẳng cấu bội chung bé phần tử cấp đƣợc ký hiệu G, toán tính logarit G đƣợc giả thiết khó công khai, TA biết , ) Mỗi ngƣời dùng công khai tự xác thực , giữ bí mật có danh tính giao thức dƣới đây: sinh ngẫu nhiên gửi , tính cho TA 36 chọn số mũ công khai TA cung cấp cho khóa TA xác định gửi Từ công thức xác định từ giá công khai cho ta thấy tính , Input: + Tích + Khóa công khai tự xác thực + Thông tin định danh + Số mũ , , công khai + Khóa bí mật + Khóa bí mật Output: Khóa chung Method: sinh ngẫu nhiên gửi lấy gửi , tính cho ngẫu nhiên tính , cho Khi đó: tính khóa chung tính đƣợc Cả hai giá trị Mức an toàn: Hãy xem khả khóa tự xác thực bảo vệ giao thức trƣớc công Vì TA không ký giá trị , , nên ngƣời khác kiểm thử đƣợc tính xác giá trị cách trực tiếp Nếu kẻ công giả mạo thông tin (tức giá trị giá trị đƣợc sinh trình truyền tin với TA) giả mạo giá trị thành , nhƣng toán logarit rời rạc 37 khó giải đƣợc tính đƣợc , mà , tính đƣợc khóa Tấn công thụ động xảy Tình tƣơng tự với việc làm cho kẻ công chủ động không tính giá trị khóa chung, nhƣng xác định đƣợc giá trị mà , có Do đó, sơ đồ cung cấp tính xác thực khóa ẩn Ở đây, đặt câu hỏi TA lại yêu cầu TA tính đƣợc phải tin thực biết mà cần sử dụng gửi giá trị Lý TA trƣớc TA tính cho Chúng ta phân tích kỹ để thấy đƣợc cần thiết điều Nếu kẻ công chọn giá trị lấy đó, tính sau gửi TA tính khóa công khai cho Ta thấy cho TA hay 38 CHƢƠNG CÀI ĐẶT CHƢƠNG TRÌNH THỬ NGHIỆM 3.1 Phát biểu toán Thiết lập khóa chung chia sẻ bí mật hai ngƣời dùng thuật toán Diffie – Hellman biết , 3.2 Yêu cầu toán Mục đích: Xây dựng chƣơng trình minh họa giao thức thỏa thuận khóa Diffie – Hellman Yêu cầu cấu hình hệ thống: - Phần cứng: RAM tốc độ Gb trở lên - Phần mềm: Hệ điều hành Windows Môi trƣờng thử nghiệm: Microsoft.NET Framework 4.5; Chƣơng trình lập trình Microsoft Visual Studio 2013 39 3.3 Giao diện chƣơng trình a) Form nhập liệu Hình 3.1 Nhập liệu 40 b) Form tính giá trị ngƣời dùng gửi cho giá trị Hình 3.2 Giá trị hai ngƣời dùng gửi cho c) Form tính khóa bí mật chung Hình 3.3 Khóa bí mật chung tính đƣợc 41 gửi cho 3.4 Đánh giá kết chƣơng trình Ƣu điểm: - Chƣơng trình mô hình hóa đƣợc giao thức thỏa thuận khóa Diffie Hellman thực tìm khóa bí mật chung - Chƣơng trình truyền đạt nội dung thuật toán - Chƣơng trình dễ hiểu, giao diện thân thiện, sử dụng ngôn ngữ lập trình tiên tiến Hạn chế: - Chƣơng trình dừng lại mức tìm khóa bí mật chung, chƣa mô tả đƣợc trình mã hóa giải mã - Chƣơng trình hạn chế số ngƣời sử dụng (chỉ dành cho hai ngƣời) - Chƣơng trình chƣa đƣợc thử nghiệm đƣờng truyền mạng 42 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Kết đạt đƣợc Nhu cầu bảo mật thông tin đƣợc đặt lên hàng đầu trở thành vấn đề nóng đặc biệt hầu hết hoạt động trao đổi thông tin ngƣời đƣợc thực thông qua mạng truyền thông công cộng nhƣ internet Nắm bắt đƣợc tình hình trên, em chọn đề tài “Tìm hiểu số giao thức thỏa thuận khóa cài đặt chƣơng trình minh họa” nghiên cứu, tìm hiểu nội dung sau: Tìm hiểu số vấn đề an toàn bảo mật thông tin: Tìm hiểu nội dung an toàn bảo mật thông tin; Vấn đề mã hóa liệu, hệ mã hóa liệu ứng dụng Nghiên cứu, tìm hiểu số giao thức phân phối khóa: Giao thức phân phối khóa Blom, giao thức phân phối khóa Diffie – Hellman, giao thức phân phối khóa “tƣơi” Kerboros, sơ đồ chia sẻ bí mật ngƣỡng Shamir; Một số giao thức thỏa thuận khóa: Giao thức thỏa thuận Diffie – Hellman; Giao thức thỏa thuận khóa trạm tới trạm; Giao thức Girault trao đổi khóa không chứng Thực thử nghiệm chƣơng trình - Đƣa chƣơng trình tính toán khóa ngƣời dùng sử dụng giao thức thỏa thuận khóa Diffie – Hellman - Chạy thử chƣơng trình thành công Hƣớng phát triển luận văn - Nghiên cứu thêm thủ tục giao thức đƣa vào thực tế nhằm làm tăng thêm độ an toàn tin cậy cho hệ mật - Phát triển chƣơng trình nhiều ngƣời sử dụng - Nghiên cứu phát triển ứng dụng giao thức thỏa thuận khóa, phân phối khóa 43 44 TÀI LIỆU THAM KHẢO [1] Phan Đình Diệu Lý thuyết mật mã An toàn thông tin, Nhà xuất Đại học Quốc Gia Hà Nội, 2004 [2] Phạm Huy Điển – Hà Huy Khoái Mã hóa thông tin – Cơ sở Toán học & ứng dụng, Nhà xuất Đại học Quốc gia Hà Nội, 2003 [3] Hà Thị Thanh, Nguyễn Văn Tảo, Nguyễn Lan Oanh Giáo trình An toàn thông tin, Đại học Công nghệ Thông tin Truyền thông, Đại học Thái Nguyên, 2008 [4] Đỗ Xuân Trƣờng Thỏa thuận khóa an toàn bảo mật thông tin, luận văn thạc sĩ khoa học máy tính, Đại học Thái Nguyên, 2015 [5] Trần Minh Văn Bài giảng An toàn bảo mật thông tin, Đại học Nha Trang, 2005 [6] Phạm Văn Việt – Trƣơng Lập Vĩ Ngôn ngữ lập trình C# [7] A.J Menezes, P.C Van Oorschot, S.A Vanstone Handbook of Applied Cryptography, CRC Press, 1997 [8] William Stallings – Prentice Hall Cryptography and Network Security Principles and Practices, 4th Edition, 2005 45 PHỤ LỤC Phụ lục A: Mã nguồn chƣơng trình Form1 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace chƣơng_trình_thử_nghiệm { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void thoat_Click(object sender, EventArgs e) { this.Close(); } private void thulai_Click(object sender, EventArgs e) { nhap_P.ResetText(); nhap_alpha.ResetText(); 46 nhap_aU.ResetText(); nhap_aV.ResetText(); tinh_bV.ResetText(); tinh_bU.ResetText(); } int x, n, m, u; public static int mod(int x, int n, int m) { int p; p = 1; for (int i = 1; i