Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 94 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
94
Dung lượng
26 MB
Nội dung
ĐẠÍ HỌC QUỐC GIA HÀ NỘI KHOA CƠNG NGHỆ Nguyễn Thị Mưòi Phương NGHIÊN CỨU LƯỢC ĐỐ C H Ữ KÝ SÓ C H Ố N G CH Ó I BỎ VÀ VIỆC ÁP DỤN G ĐẺ QUẢN LÝ HÀNH C H ÍN H TR ÊN MẠNG CỦA TR Ư Ờ N G ĐẠI DÂN LẬP PH Ư Ơ N G ĐƠNG * HỌC • * Chun ngành: Cơng nghệ thông tin Mã số: 1.01.1 LUẬN VĂN THẠC s ĩ NGƯỜI HƯỚNG DẦN KHOA nọc TS NGUYỄN NGỌC CƯƠNG Hà Nội - Năm 2003 •' >!v / l Ị ị '1 \t - IXll 30 M Ụ C LỤ C Trang Trang phụ bìa Lời cam đoan Mục lục MỞ ĐẦU Chương - MẶT MẢ KHỐ CƠNG KH 1.1 Lịch sử phát triển 1.1.1 Giới thiệu 1.1.2 Định nehĩa hệ mật 1.2 Một vài hộ mật dơn giản Mã dịch chuyển 1.2 Mã thay 1.2 Mã Affine ] 2.4 Mã Vigenere Mã hốn vị 1.3 Mật mã khố cơng khai 10 11 1.3.1 Cơ sờ mật mã khoá công khai 12 1.3.2 M ột số hệ m ật điển hình 13 Chương 2: CHỮ KÝ SỐ 17 2.1 Giới thiệu 17 2.2 Định nghĩa lược đồ chừ ký số 18 2.3 Một số lược đồ chữ ký số 18 2.3.1 Lược đồ chữ ký RSA 19 2.3.2 Lược đồ chữ ký Elgamal 20 3.3 Chuẩn chừ ký số 24 Chương 3: HÀM HASH 28 3.1 Chữ kỷ hàm Hash 28 3.1.1 Đặt vấn đề 28 3.1.2 Định nghĩa hàm HASH 28 3.2 Một số hàm HASH sử dụng chữ ký số 30 3.2.1 Các hàm HASH đơn giản 30 3.2.2 Kỹ thuật khối xích 31 3.2.3 Hàm HASH MD4 31 3.3.4 Hàm IIASH MD5 36 Chương 4: LƯỢC Đ ỏ XÁC THỰC NHẬN DẠNG 48 4.1 Giới thiệu 48 4.2 Một số giao thức điển hình 49 4.2.1 Giao thức “yêu cầu trả lời” 49 4.2.2 Lược đồ nhận dạng Schnorr 50 4.2.3 Lược đồ nhận dạng OKA M O TO 55 4.3 Chuyển lược đồ nhận dạng thành sơ đồ chữ ký Chương 5: CI l ữ KÝ CHỐNG CHỐI BỎ 59 60 5.1 Giới thiệu 60 5.2 Sơ đồ chữ ký chống chổi bỏ 61 5.2.1 Thuậl toán ký 61 5.2.2 Thuật toán xác minh 61 5.2.3 Giao thức từ chối 61 Chương ÁP DỰNG CHỮ KÝ CHỐNG CHÓI BỎ VÀO QUẢN LÝ HÀNH CHÍNH CỦA TRƯỜNG ĐHDL PHƯƠNG ĐƠNG 67 6.1 Đặt vấn đề 67 6.2 Giải vấn đề 67 Chương 7: C1IƯƠNG TRÌNH 72 7.1 Giải thích chương trình 72 7.2 Các phép tốn hỗ trợ 73 7.3 Listing chương trình 76 KÉT LUẬN 89 TẢI LIỆU T H A M K H Ả O 90 MỞ ĐÀU Cùng với phát triển mạnh mõ công nghệ thông tin giao lưu thông tin ngày trở nên phổ biến mạng truyền thông, thi vấn đề đảm bảo an tồn thơng tin trở thành yêu cầu chung hoạt động kinh tế, xã hội giao tiếp người Đổ thục u cầu bảo mật thơng tin cách hay dùng mã hố thơng tin trước gửi di Vì vậv mật mã nghiên cứu sử dụng từ lâu lịch sử loài nuười Tuv nhiên vài ba chục năm gần đây, nghiên cứu cơng khai tìm lĩnh vực ứng dụng đời sổng công cộng với phát triển kỹ thuật tính tốn viễn thơng đại Và từ đó, ngành khoa học phát triển mạnh mẽ đạt nhiều kết lý thuyết sâu sắc tạo sở cho việc phát triển giải pháp bảo mật an tồn thơng tin lĩnh vực hoạt độna cùa người thời đại mà công nghệ thông tin dược ứng dụng rộng rãi Các hệ thống mật mã chia làm hai [oại: mật mã bí mật mật mã khố cơng khai Trong hệ thống mật mã bí mật, hai người muốn truyền tin bí mật cho phải thoả thuận khố mật mã chung K, K vừa khoá để lập mã vừa khoá để giải mã Và khoả K phải giữ kín cỏ hai người biết Đồ tài dựa Irên sở hệ thống mật mã khố cơng khai, dây, quan niệm bí mật gắn với độ phức tạp tính tốn: ta xem giải pháp bí mật, để biết bí mật thi cần phải thực q trình tính tốn phức tạp, phức tạp đến mức mà ta coi “không thể được” thực tế Với quan niệm đó, người ta cải tiến tạo nhiều giải pháp mật mã Ihực cơng cụ tính tốn đại Mật mã khố cơng khai cống hiến lý thuyết mật mã đại, vả có nhiều ứng dụng mà hệ (.hống mật mã cổ điển khơng thể có Mật mã khố cơng khai dựa ý tường: tách riêng khố làm hai phần tương ứng với hai trình lập mã giải mã Bí mật dành cho người nhận tin, nên phần khố giải mã phải giữ bí mật cho người nhận tin, cịn phần khố dành cho việc lập mã để gửi đến người A cơng khai để người dùng để gửi thơng tin mật cho A Ý tưởng thực nhờ vào hàm cửa sập phía Tính ưu việt hệ thống mật mã thể chỗ: hệ truyền tin bảo mật khơng phải trao đổi khố bí mật trước với cả, người chi giữ bí mật riêng mà truyền tin bảo mật với người khác Điều quan trọng việc truyền tin phát triển mạng rộng với số người sử dụng gần không hạn chế Mật mã khố cơng khai khơng chi có tác dụng bào mật, mà cịn có nhiều ứng dụng khác, ứng dụng xác thực, chữ ký số Trong cách giao thiệp truyền thống, chữ ký viết tay người gửi văn khơng có tẩy, xoả đù xác nhận người gửi ai, người gửi có trách nhiệm văn tồn vẹn văn bản, chối bỏ trách nhiệm chữ ký Nhưng truyền tin điện tử, văn đãy bít, nên để đảm bảo hiệu lực truyền thống người ta phải dùng chữ ký số Chữ ký số có nhiệm vụ giống chữ ký tay nghĩa dùng để thực chức xác nhận người gửi văn Nỏ phải vừa mang dấu vết không chối cãi người gửi, vừa phải gắn bó với lừng bit vãn mà thay đổi dù chì bit văn chữ ký khơng chấp nhận May thay, yêu cầu thực phương pháp mật mã khố cơng khai Nói chung sơ đồ chữ ký số khơng cần đối thoại Tuy nhiên, số trường hợp de tăng thêm trách nhiệm việc xác nhận, người ta dùng giao thức có tính chất đối thoại (hay chất vấn) qua vài lần hỏi đáp để thức xác nhận tính đắn (hoặc khơne đắn) chữ ký, tính tồn vẹn văn bản, hay để buộc chấp nhận (không thể thối thác, chối bỏ) chữ ký cùa Trên sở đó, đề tài tốt nghiệp tơi tìm hiểu lược đồ chữ ký số chống chối bỏ việc áp dụng quản lý hành mạng cùa trường Đại học Phương Đông CHƯƠNG I: MẶT MẢ KHỐ CƠNG KHAI 1.1 Lịch sử phát triển / / ì Giới thiệu Theo nhà nghiên cíai lịch sử mật mã Hồng đế Caesar người dầu tiên sử dụng mật mã quân Tronẹ năm 1949, hài báo cùa Claude Shannon lần công bố với tiêu đề “lý thuyểt thông tin hệ thống mật” (Communication Theory of Secret Systems) The Be]] Systems Technical Journal Bài báo đặt móng khoa học cho mật mã, có ảnh hưởng lớn đến việc nghiên cứu khoa học cùa mật mã Ý tưởng hệ mật khoá cơng khai DiíTie vả Hellman đưa vào 1976, cịn việc thực hố hệ mật khố cơng khai thỉ Rivest, Shamir Adleman đưa vào năm 1977 Họ tạo nên hệ mật RSA tiếng Ke từ có nhiều hệ mật cơng bổ dược phân tích, cơng Mục tiêu mật mã giúp hai người (Bob Alice) thường xuyên liên lạc với qua kênh khơng an tồn mà cho đối phương (Oscar) khơng thể hiểu họ nói gi Kênh ỉà đường dây điện thoại mạng máy tính Thơng tin Alice muốn gửỉ cho Bob, mà gọi “thơng báo rõ“, văn tiếng Anh, liệu số, bấtkỳ tài liệu có cấu trúc tuv ý Alice mã thơng báo cách sử dụng khố đãđược xác định trước kcnh Oscar thu trộm mã kênh song hiểu thông báo rõ gỉ, với Bob, người biết khoá mà Alice giải mã thu dược thơng báo rõ 1.1.2 Định nghĩa hệ Một hệ mật thành phần (P, c , K, E, D) thoả mãn điều kiện sau: P: tập hữu hạn bân rõ C: ] tập hữu hạn mã K: (khơng gian khố): tập hữu hạn khố vàgửi kết -4- Đối với k € K có quy tắc mã ek e E quv tắc giải dk D tương ứng, dó: Mỗi ek: p —> c dk: C —> p hàm thoả mãn: d k ( e k( x ) ) = X với m ọi X € p Tính chất quan trọng tính chất Nội dung rõ X mã hoá bàng ek bàn mã giải mã dk ta phải thu rõ ban đẩu X Alice Bob áp dune thủ tục sau để dùng hệ mật khoá riêng Đầu tiên họ chọn khoá ngẫu nhiên k E K Điều thực họ chồ không bị theo dõi Oscar, họ có kênh an tồn trường hợp khơng mộl chỗ Sau Alice muốn gửi cho Bob thông báo kênh k h ô n g a n t o n , g i ả s t h ô n g b o ấ y l m ộ t c h u ỗ i : X = X] x x n ( v i s ố n g u y ê n n >1, rõ ký hiệu Xj e p, < i < n) Alice mã Xị bàng quy tăc eii với khoá xác định trước k Nghĩa là, Alice tính: y, = e k(Xị), < i < n , v k ế t q u ả l m ộ t c h u i : y = y j y y „ s ẽ đượcg i t r ê n kênh Khi Bob nhận y, y2 yn , giải hàm dk vàthu thông báo gốc X| X2 xn Ta hình dung hệ thống liên lạc sau: Rõ ràng trường hợp này, hàm ek phải hàm đơn ánh (ánh xạ - I ) không việc giải mã không thực cách tường minh Ví dụ nểu: y = =0; i-“ ) { printf {IT%4d",mm[i] ) ;} //tinh xi=anpha mu g mod p nhiphan (ddan, dđĩr=0;i ){ print f ( , v b [i ]); > printf(M\n Hay váo ten tep chua khoa bi mat:"); scanf (ff^s",ortentep) ; pf l=ray fopen (tentepr"rbIT); // doc_fileipf1 ;&ddaa,aa) ; //Thay goi ham doc file bâng việt truc tiep unsigned int ddpp; int: j; unsigned char tam,pp[300]; i-u ; w h i l e {Ifeof(pf1)){ if {!f read {&tam, 1, ,pf '1} ) break; ppj iI=tam; i++ ; » ddpp=i;ddaa=ddpp;j=dda a -1; - - pr in t f ("\nKHOA BI MAT\n " ); for {i~0 ; i.; ddmm=16; ml= (char *)x; mitt[15 ]=m [3 ];mm [14 ]=ml [2 ];mm [13 j =ml [1 ];mm [12 ]=ml [0 ]; mm [i1 ]=ml [7 ];ITCH[10 ]=ml [6 ] ;mm [9 ]=mi [5 ];mm [8 ]=ml IA ); mm [7 ] ~rrvl [11] ;ram [6 ]=ml [10] ;rnm [5]=ml [9 ];mni [4 ]-ml (3 ] ; m m [3]-m l [ ] t14];mra[1]= m l [13];mm[0]*ml[12] ; for {i=ddmm-1;i>=0;Í— } printf("%4d",m m [i ]); //tinh xl-anpha mu g mod p nhiphan {ddari, dđiĩim, ddpl i ,•an,mm, pi 1, Scddvb, vb) ; printf("\nVAN BAN GOC thuoc G\n"}; for (i=ddvb-l;i>=0;i ){ - - pr.inI f (■*%4d ", vfo [i ]) ; print f ÍM\n Hay vao ten tep chua kh’Oâ bi m a u :"} ; scanf ("'ỉs", Ẵtentep) ; pf=fopenÍcentep,"rb"Ỵ; un s1 ghed in t ddpp; int j; un sign ed char tain,p p [30 0] ; i=0; w h i l e {!feof{pf)){ if f Ifreac! ( , 2/pf ) ) break; p p (i ]=tam; i++; Ị ddpp=i;ddaa=ddpp;j =ddaa-l ; printf("\nKHOA 31 MAT\nH); for {1 *0 ;Kdd p p ; i++) { aa [j ]=pp [i] ; printf {M%4cT ,aai j] ) ; j-~; } //Ket t hue doc tep fclose(pf); print* {rr\n Hay du a vao t e n tep chua chu ky:"); ycarif Ểrtentep.) ; pf=fopen (tentep, "rb,f); // doc_file(pf/&ddss,ss}; // fclose(pf); //Thay goi ham doc file banc Viet true tiep 1= ; w hile{1feof(pf}){ if {!fread{&tam,1,2,pf)} break; pp[i.]=tam; i++ ; /I ddpp ~ i ;dd s s=ddpp ;j=dd S'S-1 ; p rintf(n\nCHU KY\nM ); for (1= 0; i