Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 104 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
104
Dung lượng
30,7 MB
Nội dung
Đ Ạ I H Ọ C Q U Ố C GIA H À N Ộ I KHOA CÔNG NGHÊ N g u y ễ n T h ị P h n g Liên NGIỈIÊN CỨU NHỮNG PHƯƠNG PHÁP TẤN CÔNG GIAO THỨC YÉU s DỤNG HỆ MẬT MÃ KHỐ CƠNG KHAI C hun ngành: CƠNG N G H Ệ THÔNG TIN M ã sổ: 1.01.10 LUẬN VĂN THẠC s ĩ NGƯỜI HƯỚNG DẢN KHOA HỌC: TS NGUYỄN NGỌC CƯƠNG Hà Nội - 2003 *■: :: V'U?/J31 Trang 2.2.5 Giao thức modal chung phương pháp tẩn công 25 2.2.6 Giao thức số mũ công khai nhỏ 31 2.2.7 Giao thức sổ m ũ bí mật n h o 33 2.2.8 Giao thức entropy thấp 36 2.2.9 Giao thức khoủ đổi xứng 38 2.2 ỉ Tóm tắt phản tích 42 CHƯƠNG - VỀ VIỆC LẬP TRÌNH MƠ PHỎNG PHƯƠNG PHÁP TÁN CÔNG GIAO THỨC s DỤNG HỆ MẬT MÃ KHỐ CƠNG * ề ề KHAI RSA CÓ MODUL CHUNG 44 3.1 U CẦU TÍNH TỐN SĨ CỠ LỚN 44 3.2 BIÉƯ DIỄN SÓ CỠ LỚN 45 3.3 CÁC THUẬT TỐN TÍNH TỐN SĨ CỠ LỚN 47 3.3.1 Mội sổ khái niệm 47 3.3.2 So sảnh 48 3.3.3 Phép cộng 49 3.3.4 Phép trừ 50 3.3.5 Phép nhân 50 3.3.6 Phép chia 5ì 3.3.7 Luỹ thừa 52 3.3.8 Ước số chung lớn 53 3.3.9 Phép tỉnh nhân theo moduỉ p 54 3.3.10 Phép tính luỹ thừa theo moduỉ p 54 3.3.1 Ị Tìmphần tử nghịch đảo theo moduì p .55 3.3 ỉ Phép cộng có dấu 56 3.3.13 Phép trừ có dấu 57 3.3 ì Phép nhân có dấu 57 3.4 MỘT SĨ NÉT VỀ LẬP TRÌNH TÍNH TỐN SỐ CỠ LỚN 58 3.5 GIĨI THIỆU CHƯƠNG TRÌNH TÁN CÔNG GIAO THÚC s DỤNG HỆ MẬTMẰ RSA Có MODUL c h u n g 59 3.5 ỉ Bộ cơng cụ tốn h ọ c 59 3.5.2 Trình minh hoạ thuật tốn cơng giao thức sư dụng hệ mật mã RSA cỏ modul chung 60 KÉT LUẬN 64 TÀI LIỆU THAM KHẢO 6 PHỤ LỤC 67 i na, MỞ ĐẦU T rư c đây, m ật mã h ầ u n h quan tâm tron g lĩnh vực quân n g o ại giao T u y nhiên, tro n g thời đại m áy tính điện tử, đặc biệt m ạn g m áy tính trở nên phổ biến, dịch vụ thư tín điện tử, th ng mại điện tử, g iao d ịch tiền tệ., m n g p h át triển, sở liệu k h ổ n g lồ a th ô n g tin riêng tư đư ợ c ỉưu g iữ tro n g nhừng m áv tính kết nối m ạng việc sử d ụ n g m ật m ã để đ ảm bảo an toàn m ạng, báo m ật xác thực liệu đ ợ c phổ b iến rộ n g rãi tro n g x ã hội, T cuối n h ữ n g n ăm 70, nhà lập mã đà phát triển hệ m ật m ã có độ m ật đ ợ c bảo đảm b ằ n g đ ộ ph ứ c tạp tính tốn N h ữ n g th uật tốn m ật m ã yêu cầu khả n ăn g tính tốn phức tạp n g đư ợc thiết kế để c h ố n g lại cô n g c ủ a đối thủ có thời gian giới hạn Ý tư n g ià xây d ự n g n h ữ n g hệ th ố n g cho biết phần khoá lập m ã thuật tốn lập m ã k h ó tìm đư ợc cách giải m ã thư ờn g khó tìm đ ợ c phần khố giải mã P h ần kho lập m ã v phần k h o giải mà khác nhau, phần khố lập m ã c ô n g khai, p h ần k h o giải m ã bí mật Và hệ thố ng đư ợc gọi hệ m ật m ã k h o n g khai, ví dụ n h hệ mật mã R SA , R abin, E lG am al, Khi m ột thuật toán m ật m ã đ ợ c sử dụng để bảo m ật hay xác thự c liệu, nằm tro n g k h u ô n khố m ột giao thức xác định, thích hợp để xử lý d liệu C h ính vậy, từ hệ m ật m ã khoố cơng khai đời có nhiều giao thứ c đư ợ c thiết kế đ ế n â n e cao độ tin cậy xác thực M ục đích g iao Trang thức đàm bao thuật toán mật mà sê thực cung cấp báo mật hay xác thực mà hệ thống yêu cầu C ó nhiều giao thức đ ứ n g v n g đánh giá tôt sau khoáng thời gian dài sử d ụ n g giao thức X.509, Kerberos Tuy nhiên cũ n g có nhiều giao thức n hanh ch ón g bộc lộ nhược điếm bị công mặc d ù thuật toán m ật m ã sử d ụ n g trone, đánh giá tốt Vì việc đánh giá độ an toàn cúa giao thức quan trọng Đ ộ an loàn giao thức k h ô n g phụ thuộc v o th uật toán m ật m ã m phụ thuộc vào việc thiết kể giao thức có m ột số chu yên n gành đời đê nghiên cứu độ an toàn g iao thức chẳng hạn Logic BAN, ch ứ n g minh tri thức không V.V mặt thực tiễn, biết nhiều mạng máy tính người ta sử d ụ n g giao thức để đảm bảo bảo mật xác thực liệu, vi việc thiết kế m ột g iao thức đảm bảo độ an toàn tin cậy vấn đề quan trọng Bên cạnh đó, đổi với người ng việc tìm sơ hở g iao thức cũ n g m ột thành công Vấn đ ề tẩn cô n g m ột giao thức yếu, yếu khơng phải thuậl toán m ã hoá y ếu m n h ữ n g thiểu sót việc thiết kế giao thức, đà nghiên cứu nhiều kết đư ợc công bố giới Đối với m ột đơn vị n g h iên cứu hệ thố ng m ật mã, nhữ ng vấn đề cần thiết, làm sở ch o n h ữ n g nghiên cứu hệ thống m ật mă T việc ph ân tích n h ữ n g th iếu sót thiết kế ,iao thức m ật m ã rút n n g dẫn cần thiết để phát triển eiao thức tốt Vì vậy, người cơng tác đơn vị nghiên cứu hệ thống mật mã xin đăng ký thực đề tài: ’’Nghiên cứu phương pháp công giao thức yếu sử dụng mật mã khố cơng khai" cho luận văn tốt nghiệp thạc sĩ Tran li Mục tiêu đề tài nghiên cứu sở lv thuyết phương pháp công giao thức yếu, xảy dựng chương trình mơ việc tân cơng giao thức sử dụng hệ mật mã khố cơng khai RSA có modul chung (là nhùng cơng hay bố ích) Tuy nhiên để tránh việc hiểu lầm ràng hệ thống mật mâ khoá đổi xứng khơng có điếm yếu sử dụng, luận văn nêu giao thức sử dụng DES thất bại việc xác thực Luận văn gồm phần mở đầu, phần kết luận, ba chương chính, tài liệu tham khao phần phụ lục Trong đó, Chương NGHIÊN cứu HỆ MẬT KHỐ CƠNG KHAI Chương NGHIÊN cửu CÁC PHƯƠNG PHÁP TÁN CÔNG GIAO THỨC YÉU Chương VỀ VIỆC LẬP TRÌNH MƠ PHONG PHƯƠNG PHÁP TÁN CƠNG GIAO THÚC sử' DỤNG HỆ MẬT MẢ KHỐ CƠNG KHAI RSA c ó MODUL CHUNG Phụ lục chương trình mơ phương pháp cơng giao thức sứ dụng hệ mật mã khố cơng khai RSA có modul chunR Cuối cùng, tơi xin chân thành cảm ơn thầy giáo hướng dẫn TS Nguyễn Ngọc Cương, người trực tiếp hướng dẫn viết luận văn thạc sĩ Tôi xin chân thành cảm ơn tất thầv cô khoa Công nghệ thông tin, Viện Công nghệ thông tin trang bị cho nhùng kiến thức đế tơi hồn thành luận văn Xin chân thành cảm ơn bạn bè, đồng nghiệp, người có nhiều ý kiến đóng góp, giúp đờ tơi q trình làm luận văn Và tơi xin bày to lịng biết ơn đến nhừng naười thân gia đình ln dành cho quan tâm động viên Trang CHƯƠNG - HỆ MẬT MẢ KHOÁ CỒNG KHAI T ro n g mơ hình m ật m ã cổ điển, người gửi người nhận cùn g chọn m ột kh ố K bí mật, sau d ù n g K đê tạo thuật toán lập m ã e K thuật toán giái m ã clK C ác hệ m ật thuộc loại gọi hệ m ật khố bí m ật việc đế lộ eK làm cho hệ th o n g m ất an toàn N hư ợc điêm cùa hệ mật yêu cầu phải có th n g tin trước khố K người gửi người nhận qua m ộ t kênh an toàn trư c gửi m ột mã C hính vậy, náy sinh V tư n g xây d ự n g m ột hệ mật m ã cho biết dược phần cơng khai củ a khố K thuật tốn lập m ã ÜK khó giải mã, ih ờng khó tìm đư ợc phần khoá giải m ã K dù thuật toán giải m ã dược biết T cuối nh ữ n g năm 70, nhà lập m ã đà phát triển hệ m ật mã có độ mật đ ợ c bảo đảm b àn g độ phức tạp tính tốn Nhừna, thuật tốn mật mã u cầu khả tính tốn phức tạp công đư ợc thiết kế để chố ng lại g củ a đối thú có thời gian giới hạn T ro n g hệ mật m ã này, phần k h o lập m ã phần khoá giải m ã khác nhau, phần khố lập m ã, thuật tốn lập mã, thuật tốn giải mã n g khai cịn phần khố giải mã bí mật Và hệ th ố n g gọi hệ mật mã k ho côn g khai N ăm 1977, Ron Rivest, Adi S ham ir Len A dlem an[5] đề xuất hệ m ật mã k ho cơng khai đ ầu tiên, hệ mật m R SA tiếng Kẻ từ đà có m ột số hệ m ật mã kh ố công khai công bố, độ mật c h ú n g dựa Tran a tốn tính tốn khác Trong đó, quan trọng hệ mậl sau: - Hệ mật RSA: độ bảo mật dựa độ khócủa việc phân tích thừa số nguyên tổ số nguyên lớn - Hệ mật McEliece: Hệ dựa lý thuyết mã đại số coi an toàn Hệ mật McEliece dựa toán giải mã cho mà tuyến tính (là tốn NP - đầy đủ) - Hệ mật Elgamal: Hệ Elgamal dựa tính khó giải tốn logarit rời rạc trường hữu hạn - Hệ mật Chor - Rivest: Hệ Chor - Rivest thuộc vào hệ mật xếp balô, dựa tính khó giải tốn tổng tập (bài toán toán NP - đầy đủ - thuộc vào lớp lớn bàitoán khơng có thuật giải biết thời gian đa thức) - Hệ mật đường cong Elliptic Trong chương này, đề cập đến hai hệ mật mã khố cơng khai sử dụng nhiều Hệ mật RSA Hệ mật Elgamal Theo cách đặt tên truyền thống, ta đặt Alice, Bob để thành viên muốn truyền thơng cho cịn Oscar hay Marvin đế kẻ công muốn nghe trộm giả mạo q trình truyền thơng Aỉice Bob Trang 1.1 H Ệ M Ậ T M Ã RSA Hệ mật mã RSA sử dụng để cun» cấp báo mật đảm bảo tính xác thực cua dừ liệu số Hiện RSA sư dụng nhiều hệ thong thương mại Các dịch vụ web server web browser sử dụng đê đảm bảo an tồn việc truyền thơng web, sử dụng để đám báo bảo mật xác thực Email, đảm báo an toàn cho phiên truy nhập từ xa phận quan trọng hệ tlìống tốn thẻ tín dụng điện tử Tóm lại, RSA thường sir dụng ứne dụng cần bảo đám an toàn bảo mật liệu số 1.1.1 Mô tả hệ mật RSA Trước tiên, ta nhắc lại định nghĩa hệ mật Một hệ mật (p, c -K £, $) thoả điều kiện sau: p tập hữu hạn bàn rõ c\ằ tập hữu hạn mã .^(khơng gian khố) tập hữu hạn khố Đối với mồi K e J(cò m ột quy tắc mà eK: p~> ỚVà quy tắc giải mà tương ứng dK e 'ĩò Mồi eK: p c dK: c -> p\à hàm mà dis(eK(x)) = Xvới rõ X G p Tra nụ 10 Hệ mật mà RSA[5] sừ dụng tính tốn t r o n g z,„ n tích hai số ngun tố phân biệt p, q (ị)(n) = (p-1 )(q-l ) Mơ tả hình thức hệ mật sau: Cho n = p.q p q số nguyên tố khác Đặt p= c= znvà định nghĩa J(= {(n,p,q,a,b): ab = l(modệ(n))} Với K = (n,p,q,a,b) ta xác định: eK(x) = xbmod n dK(y) = y*1modn ( x , y e z„) Các giá trị n, b c ô n g khai cịn giá trị p, q, a g iữ bí mật Ta kiếm tra xem p hép m ã giải m ã có phải phép tốn nghịch đ ảo hay khơng Vì ab = l(mod G iả s X € zn; a T rư n g hợp (x,n) =1 —> x ^ '1’ m o d n = Khi ta có: ya m o d n = (x b)a m od n = x lệ(n)+l m od n = ((xộ