Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 80 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
80
Dung lượng
5,29 MB
Nội dung
Header Page of 16 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN BÁ THÁI NGHIÊN CỨU LƯỢC ĐỒ CHIA SẺ BÍ MẬT VÀ ỨNG DỤNG CỦA CHÚNG VÀO VIỆC THI TUYỂN SINH ĐẠI HỌC Nghành : Công nghệ Điện tử - Viễn thông Chuyên nghành : Kỹ thuật Điện tử Mã số : 60 52 70 LUẬN VĂN THẠC SỸ NGƯỜI HƯỚNG DẪN KHOA HỌC: TS Hồ Văn Canh Hà Nội - 2011 Footer Page of 16 Header Page of 16 -2- LỜI CAM ĐOAN Tôi xin cam đoan: Luận văn “ Nghiên Cứu Lược Đồ Chia Sẻ Bí Mật Và Ứng Dụng Của Chúng Vào Việc Thi Tuyển Sinh Đại Học” công trình nghiên cứu khoa học độc lập Kết nghiên cứu trình bầy luận văn chưa công bố hình thức Hà nội, ngày 20 tháng 05 năm 2011 Tác giả luận văn Nguyễn Bá Thái Footer Page of 16 Header Page of 16 -3- MỤC LỤC LỜI NÓI ĐẦU CHƯƠNG MẬT MÃ CỔ ĐIỂN 1.1 KHÁI NIỆM VÀ ĐỊNH NGHĨA VỀ MẬT MÃ 1.1.1 Khái niệm: 1.1.2 Định nghĩa 1.2 MỘT SỐ MÃ HÓA ĐƠN GIẢN: 1.2.1 Mã dịch vòng ( shift cipher) 1.2.1.1 Định nghĩa (modulo): 1.2.1.2 Định nghĩa mã dịch vòng: 10 1.2.2 Mã thay (MTT) 12 1.2.3 Mã Affine 14 1.2.3.1 Định lý (đồng dư thức): 14 1.2.3.2 Định nghĩa (hàm Euler): 14 1.2.3.3 Định nghĩa (phần tử nghich đảo phép nhân): 16 1.2.4 Mật mã Hill 19 1.2.4.1 Khái niệm: 19 1.2.4.2 Định nghĩa ( ma trận đơn vị) 20 1.2.4.3 Định nghĩa (Định thức ma trận): 20 1.2.4.4 Định lý (ma trận ngịch đảo): 20 1.2.4.5 Định nghĩa Mật mã Hill 21 1.2.5 Mã chuyển vị (Transposition): 22 CHƯƠNG CHUẨN MÃ DỮ LIỆU (DES) 24 2.1 MÔ TẢ DES (Data Encryption Standard) 24 2.2 Các bước thực hiện: 25 2.2.1 Cách tính biến x0 25 2.2.2 Cách tính LiRi: 26 2.2.1 Các biến hàm f: 26 2.2.2.2 Cách tính hàm f: 30 2.2.3 Xác định mã y: 35 2.3 Giải mã DES 43 2.3.1 Thuật toán 43 2.3.2 Chứng minh thuật toán 43 2.4 Các vấn xung quanh DES 46 2.4.1 Những ý kiến phản hồi 46 2.4.2 DES thực tế 47 2.4.3 Một vài kết luận mã DES 48 CHƯƠNG CÁC SƠ ĐỒ CHIA SẺ BÍ MẬT 49 3.1 Khái niệm chia sẻ bí mật: 49 3.2 Sơ đồ chia sẻ bí mật 50 3.2.1 Khái niệm “Sơ đồ chia sẻ bí mật”: 50 3.2.2 Định nghĩa: 50 3.3 Cấu trúc truy nhập sơ đồ chia sẻ bí mật 55 3.3.1 Định nghĩa sơ đồ chia sẻ bí mật hoàn thiện 55 Footer Page of 16 Header Page of 16 -4- 3.3.2 Định nghĩa tập hợp thức” tối thiểu 56 3.4 Mạch đơn điệu: 56 3.4.1 Định nghĩa( mạch đơn điệu): 56 3.4.2 Chia sẻ Khóa bí mật dựa vào “ mạch đơn điệu” 57 CHƯƠNG ỨNG DỤNG THUẬT TOÁN DES VÀ LƯỢC ĐỒ CHIA SẺ BÍ MẬT VÀO THI TUYỂN SINH 61 4.1 Các ứng dụng: 61 4.2 Quy trình thực giải toán: 61 4.2.1 Sơ đồ: 61 4.2.2 Các bước thực hiện: 62 4.2.3 Mô lược đồ chia sẻ bí mật ngôn ngữ C: 63 4.2.3.1 Chia sẻ khoá bí mật theo giao thức “chia sẻ bí mật” Shamir 63 4.2.3.2 Khôi phục khoá bí mật phương pháp giải hệ phương trình tuyến tính 64 4.2.3.3 Khôi phục khoá bí mật phương pháp dùng công thức nội suy Lagrange 68 4.2.3.4 Chia sẻ khoá bí mật theo phương pháp mạch đơn điệu 69 4.2.3.4 Khôi phục khoá bí mật theo phương pháp mạch đơn điệu 71 4.3 Mã nguồn mở chương trình 72 KẾT LUẬN 79 TÀI LIỆU THAM KHẢO 80 Footer Page of 16 Header Page of 16 -5- LỜI NÓI ĐẦU Ngày nay, mạng máy tính ngày trở nên phổ biến Mỗi quốc gia có mạng riêng với nhiều mạng mang tính phận Trên pham vi toàn cầu, người ta dùng mạng Internet cách thông dụng Nhiều dịch vụ điện tử như: thư điện tử, chuyển tiền, thương mại điện tử, phủ điện tử áp dụng rộng rãi Các ứng dụng mạng máy tính ngày trở nên phổ biến, thuận lợi quan trọng yêu cầu an toàn mạng, an ninh liệu trở nên cấp bách cần thiết Trên giới có nhiều quốc gia, nhiều nhà khoa học nghiên cứu vấn đề bảo mật, đưa nhiều thuật toán với mục đích thông tin truyền không bị lấy cắp bị lấy cắp không sử dụng được.Trong đề tài em đưa thuật toán thuật toán DES (Data encryption standar) thuật toán chuẩn mỹ, mỹ nhiều nước giới sử dụng, thuật toán đưa vào sử dụng nhiều năm giữ tính bảo mật Tuy nhiên với công nghệ phát triển thuật toán DES trở lên không an toàn tuyệt đối nữa, người ta đưa thuật toán 3DES nguyên tắc thuật toán 3DES dựa tảng thuật toán DES số bít mã hóa tăng lên Mã hóa lược đồ chia sẻ bí mật ứng dung nhiều lĩnh vực ví dụ: phát hành thẻ ATM ngân hàng, đấu thầu từ xa, thi tuyển sinh, lĩnh vực quân sự….Trong đề tài em đề cập tới lĩnh vực ứng dụng thi tuyển sinh đại học Vấn đề thi tuyển sinh đại học nước ta trở thành gánh nặng cho nghành Giáo Dục ban nghành khác liên quan Nó làm tổn hại kinh tế công sức không đối ban nghành tham gia tổ chức kỳ thi mà thí sinh dự thi, điều bắt buộc phải tổ chức hàng năm Do để giảm thiểu khâu thi tuyển sinh mà đảm bảo tính công xác điều cần thiết, theo để làm điều ta nên ứng dụng công nghệ thông tin vào việc thi tuyển sinh đại học, ứng dụng ứng dụng LƯỢC ĐỒ CHIA SẺ BÍ MẬT đảm bảo tính bí mật xác mà thi tuyển sinh hai điều quan trọng Phạm vi luận văn đề cập đến vấn đề mật mã, thuật toán DES, lược đồ chia sẻ bí mật ứng dụng chúng thi tuyển sinh Luận văn gồm chương: Footer Page of 16 Header Page of 16 -6- Chương 1: Mật mã cổ điển: chương nói khái niệm định nghĩa số mật mã cổ điển Chương 2: Thuật toán DES: chương nói mã hóa giải mã thuật toán DES, vấn đề xung quanh DES Chương 3: Chia sẻ bí mật: Chương nói khái niệm chia sẻ bí mật, phương thức chia sẻ khôi phục khóa bí mật Chương 4: Ứng dụng thuật toán DES Lược đồ chia sẻ bí mật vào thi tuyển sinh: chương nói phần ứng dụng mô lược đồ chia se bí mật ngôn ngữ C Để hoàn thành luận văn này, trước hết em xin chân thành cảm ơn TS Hồ Văn Canh – người trực tiếp hướng dẫn, cung cấp tài liệu đóng góp nhiều ý kiến cho luận văn Em xin chân thành cảm ơn thầy cô giáo, cán khoa Điện tử , phòng Sau đại học, Trường Đại học công nghệ - ĐHQG Hà nội tận tình giảng dậy, giúp đỡ em suốt khóa học Footer Page of 16 Header Page of 16 -7- CHƯƠNG MẬT MÃ CỔ ĐIỂN 1.1 KHÁI NIỆM VÀ ĐỊNH NGHĨA VỀ MẬT MÃ 1.1.1 Khái niệm: - Chức mật mã tạo khả liên lạc kênh không mật cho hai người sử dụng (tạm gọi A B) cho đối phương (C) hiểu thông tin truyền - Kênh liên lạc đường dây điện thoại mạng máy tính Thông tin mà Al muốn gửi cho B rõ văn tiếng Anh, liệu số tài liệu có cấu trúc tuỳ ý - A mã hoá rõ khóa xác định trước gửi mã kết kênh C có mã thu trộm kênh song xác định nội dung rõ, B (người biết khoá mã) giải mã thu rõ Ta mô tả hình thức hoá nội dung cách dung khái niệm toán học sau: 1.1.2 Định nghĩa Một hệ mật (P,C,K,E,D) thoả mãn điều kiện sau: P tập hữu hạn rõ C tập hữu hạn mã K (không gian khoá) tập hữu hạn khoá Đối với k K có quy tắc mã ek: P C quy tắcv giải mã tương ứng dk D Mỗi ek: P C dk: C P hàm cho: dk(ek (x)) = x với rõ x P Trong đó, cần lưu ý tính chất 4: Nội dung rõ x mã hoá ek mã nhận sau giải mã dk ta phải thu rõ ban đầu x Giả sử ta có rõ cần truyền là: x = x1,x2 , .,xn Footer Page of 16 Header Page of 16 -8- với số nguyên n Ở ký hiệu rõ xi P , i n Mỗi xi mã hoá quy tắc mã ek với khoá K xác định trước Bản mã thu là: y = y1,y2 , .,yn Trong yk=ek(xi) i=1,2,…,n kєK Khi Bob nhận đươc y1,y2 , .,yn giải mã hàm giải mã dk thu rõ gốc x1,x2 , .,xn Hình 1.1 ví dụ kênh liên lạc ` C x A Bộ mã hoá y x Bộ giải mã B k k Kênh an toàn k k Nguồn khoá Hình 1.1 Kênh liên lạc Rõ ràng trường hợp hàm mã hoá phải hàm đơn ánh ( tức ánh xạ 1-1), không việc giải mã không thực cách tường minh Ví dụ y = ek(x1) = ek(x2) x1 x2 , B cách để biết liệu rõ x1 hay x2 Footer Page of 16 Header Page of 16 -9- 1.2 MỘT SỐ MÃ HÓA ĐƠN GIẢN: 1.2.1 Mã dịch vòng ( shift cipher) 1.2.1.1 Định nghĩa (modulo): Định nghĩa đồng dư Giả sử a b số nguyên m số nguyên dương Khi ta viết a b (mod m) a-b chia hết cho m Mệnh đề a b (mod m) gọi " a đồng dư với b theo modulo m" Số nguyên m gọi mudulus Bây ta định nghĩa số học modulo m: Zm coi tập hợp {0,1, .,m-1} có trang bị hai phép toán cộng nhân Việc cộng nhân Zm thực giống cộng nhân số thực trừ điểm kết rút gọn theo modulo m Ví dụ tính 11 13 Z16 Tương tự với số nguyên ta có 11 13 = 143 Để rút gọn 143 theo modulo 16, ta thực phép chia bình thường: 143 = 16 + 15, 143 mod 16 = 15 Z16 Các định nghĩa phép cộng phép nhân Zm thảo mãn hầu hết quy tắc quen thuộc số học Sau ta liệt kê mà không chứng minh tính chất này: Phép cộng đóng, tức với a,b Zm ,a +b Zm Phép cộng giao hoán, tức với a,b Zm a+b = b+a Phép cộng kết hợp, tức với a,b,c Zm (a+b)+c = a+(b+c) phần tử đơn vị phép cộng, có nghĩa với a Zm a+0 = 0+a = a Phép nhân đóng , tức với a,b Zm , ab Zm Phép nhân giao hoán , nghĩa với a,b Zm , ab = ba Phép nhân kết hợp, nghĩa với a,b,c Zm , (ab)c = a(cb) phần tử đơn vị phép nhân, tức với a Zm Footer Page of 16 Header Page 10 of 16 -10- a1 = 1a = a Phần tử nghịch đảo phép cộng phần tử (a Zm ) m-a, nghĩa a+(m-a) = (m-a)+a = với a Zm 10 Phép nhân có tính chất phân phối phép cộng, tức a,b,c Zm , (a+b)c = (ac)+(bc) a(b+c) = (ab) + (ac) Vì phần tử ngược phép cộng tồn Zm nên trừ phần tử Zm Ta định nghĩa a-b Zm a+m-b mod m Một cách tương tự tính số nguyên a-b rút gọn theo modulo m Ví dụ : Để tính 11-18 Z31, ta tính 11+13 mod 31 = 24 Ngược lại, lấy 11-18 -7 sau tính -7 mod 31 = 24 1.2.1.2 Định nghĩa mã dịch vòng: Mã dịch vòng xác định Z26 (do có 26 chữ bảng chữ tiếng Anh) xác định Zm với modulus m tuỳ ý Dễ dàng thấy rằng, mã dịch vọng (MDV) tạo nên hệ mật xác định trên, tức dK (eK(x)) = x với x Z26 Giả sử P = C = K = Z26 với k 25 , định nghĩa: eK(x) = x +k mod 26 dK(x) = y -k mod 26 (x,y Z26) Hình 1.2: Mã dịch vòng Ta sử dụng MDV (với modulo 26) để mã hoá văn tiếng Anh thông thường cách thiết lập tương ứng kí tự thặng dư theo modulo 26 sau: A 0,B 1, , Z 25 Vì phép tương ứng dùng vài ví dụ nên ta ghi lại để tiện dùng sau này: A B C D E F G H I J K L M 10 11 12 R S T U V W X Y Z N O Footer Page 10 of 16 P Q Header Page 66 of 16 { G[i] [j]=A[i] [j]; } } for(j=0;j