1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề tài tìm hiểu về cơ chế hoạt động của dịch vụ dns và các nguy cơ tấn công của các dịch vụ này trong môi trường mạng, cách thức phòng trống, giảm thiểu rủi do

22 4 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 1,08 MB

Nội dung

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN - - BÁO CÁO THỰC TẬP CƠ SỞ Tên đề tài: Tìm hiểu chế hoạt động dịch vụ DNS nguy công dịch vụ mơi trường mạng, cách thức phịng trống, giảm thiểu rủi Giáo viên: Ths Nguyễn Anh Chun Sinh viên: Hồng Thanh Tú Lớp: An tồn thơng tin - K18A Mã sinh viên: DTC1954802020015 Thái Nguyên, tháng 02 năm 2022 MỤC LỤC PHẦN MỞ ĐẦU Lời cảm ơn Lý chọn đề tài Đối tượng nghiên cứu Mục tiêu nghiên cứu đề tài Nội dung Kết dự kiến đạt Phương tiện nghiên cứu CHƯƠNG I TỔNG QUAN VỀ DỊCH VỤ DNS 1.1 Tổng quan DNS 1.2 Cơ chế hoạt động dịch vụ DNS 1.3 Các phương pháp mã hoá 1.4 Mơ hình truyền tin mật mã học luật Kirchoff 1.5 Hệ mã hoá đối xứng – cổ điển CHƯƠNG 2: TÌM HIỂU VỀ VẤN ĐỀ BẢO MẬT VÀ CÁC PHƯƠNG PHÁP PHÒNG CHỐNG VÀ BẢO MẬT CỦA DNS 2.1 Khái niệm 2.2 Ưu điểm 2.3 Mô tả 2.4 Ứng dụng 2.5 Ví dụ 2.6 Q trình Mã hố – Giải mã 2.7 Quá trình Phá mã - Tấn công 2.8 Giải pháp bảo vệ hệ mã Affine PHẦN KẾT LUẬN TÀI LIỆU TÀI KHẢO HẾT LỜI MỞ ĐẦU I Lời cảm ơn Để hoàn thành bào cáo này, em xin tỏ lòng biết ơn sâu sắc đến người thân, bạn bè ln động viên , góp ý cho em trình làm báo cáo Và em xin gửi lời cảm ơn chân thành tri ân sâu sắc Thầy Ths Nguyễn Anh Chuyên, người hướng dẫn, đọc kỹ cho nhiều lời nhận xét góp ý quý báu cho báo cáo em Trong học phần khơng có lời hướng dẫn, dạy bảo Thầy em nghĩ thu hoạch em khó hồn thiện Một lần nữa, em xin chân thành cảm ơn thầy Bài báo cáo thực tập thực khoảng thời gian gần tháng bước em nên hạn chế nhiều bỡ ngỡ Do vậy, không tránh khỏi thiếu sót điều chắn, em mong nhận ý kiến đóng góp quý báu quý Thầy Cô bạn học lớp để kiến thức em lĩnh vực hoàn thiện Trong trình làm báo cáo thực tập, khó tránh khỏi sai sót, mong Thầy, Cơ bỏ qua Đồng thời trình độ lý luận kinh nghiệm thực tiễn hạn chế nên báo cáo khơng thể tránh khỏi thiếu sót, em mong nhận ý kiến đóng góp Thầy, Cô để em học thêm nhiều kinh nghiệm hoàn thành tốt báo cáo hay luận văn tốt nghiệp tới Em xin chân thành cảm ơn! Thái Nguyên, tháng năm 2022 Sinh viên Hoàng Thanh Tú II Lý chọn đề tài Đã từ lâu người phải quan tâm tới viêcŽ làm để đảm bảo an toàn bí mâ Žt cho tài liêu, Ž văn quan trọng, đă Žc biê Žt lĩnh vực quân sự, ngoại giao Ngày nay, với xuất hiênŽ máy tính, tài liê Žu văn giấy tờ thông tin quan trọng số hóa xử lý máy tính, truyền mô Žt môi trường mà mă Žc định khơng an tồn Mật mã học ngành khoa học mã hóa liệu nhằm bảo mật thơng tin Mã hóa liệu q trình mà liệu dạng văn gốc chuyển thành văn mật mã để làm khơng thể đọc Ngày nay, để đảm bảo an toàn bí mật thơng tin quan trọng, nhạy cảm, vấn đề mã hóa liệu ngày trở nên cấp thiết nhiều người quan tâm Có nhiều phương pháp mã hóa liệu đưa Vậy làm để đánh giá phương pháp mã hóa tốt? Có thể chia phương pháp mã hóa liệu thành hai hệ mật mã bản: Hệ mật mã cổ điển với hệ mật mã hệ mã Caesar, Affine, thay thế, Vigenere… hệ mật mã đại với hệ mã đối xứng (DES - Data Encryption Standard) hệ mã bất đối xứng (RSA – Rivest, Shamir, Adleman) Với hệ mật mã ta có phương pháp thám mã tương ứng Việc tìm hiểu, nghiên cứu hai hệ mã cần thiết song việc chọn đề tài thực tập sở nên em tập trung tìm hiểu, nghiên cứu phương pháp thám mã hệ mậtmã cổ điển Tuy hệ mật mã cổ điển đến khơng cịn sử dụng nhiều hệ mật mã tảng cho phát triển mật mã đại Việc nghiên cứu thám mã hệ mật mã cổ điển có ý nghĩa quan trọng hỗ trợ việc nghiên cứu thám mã hệ thống mã đại việc nghiên cứu chúng cần thiết III Đối tượng nghiên cứu Tìm hiểu hệ mã Affine phương thức công hệ mã Affine IV Mục tiêu nghiên cứu đề tài - Hiểu hệ mã hố Affine, quy trình mã hố giải mã điểm yếu hệ mã - Nâng cao kỹ lập trình - Mơ hệ mã hố Affine V Nội dung - Ngun lý hoạt động hệ mã hoá - Các bước mã hoá giải mã - Điểm yếu cách thức công dựa nguyên lý hệ mã Affine VI Kết dự kiến đạt - Mã nguồn chương trình mã hố, giải mã cơng hệ mã VII Phương tiện nghiên cứu - Nghiên cứu giáo trình, tài liệu, báo lĩnh vực mã hóa, bảo mật Internet, báo tạp chí ngồi nước - Bộ cơng cụ lập trình C, C++, C# java CHƯƠNG I TỔNG QUAN VỀ HỆ MÃ CỔ ĐIỂN VÀ MÃ HOÁ DỮ LIỆU I Tổng quan hệ mã cổ điển Khái niệm Trong mật mã học, mật mã học cổ điển dạng mật mã học sử dụng lịch sử phát triển loài người ngày trở nên lạc hậu phương thức mã hóa đơn giản kẻ cơng dễ dàng bẻ khóa thơng qua nhiều phương thức cơng vét cạn (ví dụ dùng máy tính thử hết trường hợp) hay dựa công thống kê (dựa tần suất xuất chữ cái) Nói chung, mật mã học cổ điển hoạt động sở bảng chữ (chẳng hạn ký tự từ "A" tới "Z" tiếng Anh), chúng thực tay hay số máy móc khí đơn giản Ngược lại, mơ hình mã hóa đại sử dụng máy tính hay cơng nghệ số hóa khác, hoạt động mã hóa dựa việc thay bit hay byte Các phương thức mã hóa cổ điển thông thường dễ bị tổn thương (phá mã) cơng văn mã hóa, đơi chí kẻ cơng khơng cần biết chi tiết cụ thể hệ thống mã hóa, cách sử dụng cơng cụ phân tích tần suất Đôi người ta cho phương thức mã hóa cách thức mã hóa cỗ máy Enigma thuộc phương thức mã hóa cổ điển cách thức mã hóa sử dụng thiết bị công nghệ đại vào thời điểm (trong thời kỳ Thế chiến II) Các phương thức mã hóa cổ điển chủ yếu dựa mật mã hóa hốn vị mật mã hóa thay Trong mật mã hóa thay thế, ký tự (hoặc nhóm ký tự) thay cách có quy luật tồn thơng điệp ký tự khác (hoặc nhóm ký tự), chẳng hạn câu I am Mr Enigma from thay câu This is morning star, sau ký tự cịn lại bảng chữ thay theo quy luật xác định trước Trong phương thức mật mã hóa hốn vị ký tự giữ không đổi, trật tự chúng tin lại thay đổi theo quy luật Có thuật toán phức tạp để thực việc mật mã hóa cách tổ hợp hai phương thức để tạo sản phẩm mã hóa; phương thức mã hóa khối đại DES hay AES thực việc lặp lặp lại số bước thay hốn vị II Khái niệm Mã hóa liệu: Mong muốn trao đổi thông tin cách bí mật địi hỏi người xuất sớm lịch sử Vì lịch sử việc trao đổi thông tin mật phong phú Ví dụ Người A muốn gửi cho người B văn Tiếng Việt ( gọi “bản rõ”), muốn bảo mật A phải lập mã cho “bản rõ” gọi “ mã” gửi mã cho B A B có khố mật mã chung, vừa để A lập “bản mã”, vừa để B giải “bản mã” thành “bản rõ” Một người khác khơng có khố có lấy “ mã” từ kênh truyền tin biến thành “ rõ” để hiểu nội dung thông báo mà A muốn gửi cho B Các hệ mật mã cổ điển thực việc bảo mật dùng khố chung cho việc lập mã giải mã, rõ mã thường dùng sở chữ tự nhiên, cụ thể ta dùng 26 chữ bảnh chữ Tiếng Anh  Mã hóa liệu chuyển liệu từ dạng sang dạng khác sang dạng code mà có người có quyền truy cập vào khóa giải mã có mật đọc Bằng cách sử dụng thuật tốn lồng vào nhau, thường dựa khóa (key) để mã hóa liệu Cụ thể : Để bảo đảm An tồn thơng tin (ATTT) lưu trữ máy tính (giữ gìn thơng tin cố định) hay bảo đảm An tồn thơng tin đường truyền tin (trên mạng máy tính), người ta phải “Che Giấu” thơng tin “Che” thơng tin (dữ liệu) hay “Mã hóa ” thơng tin thay đổi hình dạng thơng tin gốc (Giấu ý nghĩa nghĩa TT gốc), người khác “khó” nhận “Giấu” thơng tin (dữ liệu) cất giấu thông tin tin khác, người khác “khó” nhận (Giấu diện TT gốc) Trong chương bàn “Mã hóa ” thơng tin a) Hệ mã hóa: Việc mã hoá phải theo quy tắc định, quy tắc gọi Hệ mã hóa Hệ mã hóa định nghĩa năm (P, C, K, E, D), đó: P tập hữu hạn rõ C tập hữu hạn mã K tập hữu hạn khố E tập hàm lập mã D tập hàm giải mã Với khóa lập mã ke  K, có hàm lập mã eke  E, eke: P C, Với khóa giải mã kd  K, có hàm giải mã dkd  D, dkd: C P, cho dkd (eke (x)) = x,  x  P Ơ x gọi rõ, eke (x) gọi mã b) Mã hóa Giải mã: Người gửi G   eke (T)   Người nhận N (có khóa lập mã ke) (có khóa giải mã kd)  Tin tặc trộm mã eke (T) Người gửi G muốn gửi tin T cho người nhận N Để bảo đảm bí mật, G mã hố tin khóa lập mã ke, nhận mã eke (T), sau gửi cho N Tin tặc trộm mã eke (T), “khó” hiểu tin gốc T khơng có khố giải mã kd Người N nhận mã, họ dùng khoá giải mã kd, để giải mã eke (T), nhận tin gốc T = dkd (eke (T)) III Phân loại hệ mã hóa Có nhiều mã hố tùy theo cách phân loại, sau xin giới thiệu số cách Cách 1: Phân loại mã hoá theo đối xứng khoá Hệ mã hóa khóa đối xứng (Mã hố khố riêng, bí mật) Hệ mã hóa khóa phi đối xứng (Khóa cơng khai) Hiện có loại mã hóa chính: mã hóa khóa đối xứng mã hóa khố cơng khai Hệ mã hóa khóa đối xứng có khóa lập mã khóa giải mã “đối xứng nhau”, theo nghĩa biết khóa “dễ” tính khóa Vì phải giữ bí mật khóa Hệ mã hóa khóa cơng khai có khóa lập mã khác khóa giải mã (ke  kd), biết khóa “khó” tính khóa Vì cần bí mật khóa giải mã, cịn cơng khai khóa lập mã Cách 2: Phân loại mã hoá theo đặc trưng xử lý rõ Mã hố khối, Mã hố dịng Cách 3: Phân loại mã hoá theo ứng dụng đặc trưng Mã hoá đồng cấu, Mã hoá xác suất IV Các phương pháp mã hố Có phương pháp cho việc mã hoá giải mã  Sử dụng khoá đối xứng  Sử dụng khoá bất đối xứng  Sử dụng hàm băm chiều 10 V Mơ hình truyền tin mật mã học luật Kirchoff Mơ hình truyền tin mật mã học luật Kirchoff VI HỆ MÃ HÓA ĐỐI XỨNG - CỔ ĐIỂN a) Khái niệm Hệ mã hóa đối xứng dùng từ sớm, nên gọi Hệ mã hóa đối xứng - cổ điển (gọi ngắn gọn Hệ mã hóa đối xứng cổ điển) Bản mã hay rõ dãy ký tự Latin Lập mã: thực theo bước sau: 1/ Nhập rõ ký tự: RÕ_CHỮ 2/ Chuyển RÕ_CHỮ ==> RÕ_SỐ 3/ Chuyển RÕ_SỐ ==> MÃ_SỐ 4/ Chuyển MÃ_SỐ ==> MÃ_CHỮ Giải mã: thực theo bước sau: 1/ Nhập mã ký tự: MÃ_CHỮ 2/ Chuyển MÃ_CHỮ ==> MÃ_SỐ 3/ Chuyển MÃ_SỐ ==> RÕ_SỐ 4/ Chuyển RÕ_SỐ RÕ_CHỮ 11 ==> Để chuyển từ CHỮ sang SỐ hay ngược lại từ SỐ trở CHỮ, người ta theo qui ước đó, ví dụ chữ thay số theo modul 26 sau: AB C DE F GHI J K L MN O P Q R S T U V WX Y Z 1 1 1 1 1 2 2 2 Bảng chữ Để thực mã hóa hay giải mã với “số”, người ta dùng phép toán số học theo modulo 26 Các hệ mã hóa cổ điển Mã hóa cổ điển gồm nhiều hệ, ví dụ: Hệ mã hóa dịch chuyển: Khóa có “chìa” (Thể giá trị) Hệ mã Affine: Khóa có “chìa” (Thể giá trị) Hệ mã hóa thay thế: Khóa có 26 “chìa” (Thể 16 giá trị) Hệ mã hóa VIGENERE: Khóa có m “chìa” (Thể m giá trị) Hệ mã hóa HILL: Khóa có ma trận “chìa” (chùm chìa khóa) 12 CHƯƠNG 2: TÌM HIỂU VỀ VẤN ĐỀ BẢO MẬT CỦA HỆ MẬT MÃ CỔ ĐIỂN AFFINE I Khái niệm hệ mã Affine Mật mã Affine dạng mật mã thay dùng bảng chữ cái, chữ ánh xạ tới số sau mã hóa qua hàm số toán học đơn giản Một phép dịch Caesar mật mã Afin, chữ mã hóa với hàm (x+b) mod (26), với b bước dịch II Ưu điểm Là trường hợp riêng thay Tính tốn đơn giản Số lượng khố khơng lớn III Mơ tả Cho P = C = Zn K = { (a, b) € Zn Zn gcd (a, n) = 1} Với mã K = ( a,b ) € K  Định nghĩa: ek ( x ) = (ax + b) mod n dk( x ) = (a-1) (y-b) mod n Với x, y € Zn IV Ứng dụng Mật mã học có lịch sử lâu dài đầy màu sắc Nói chung, dạng sớm cách viết bí mật (ngày gọi chung mật mã hóa cổ điển) cần có bút giấy Hai phạm trù mật mã cổ điển mật mã hốn vị, người ta xếp lại trật tự chữ thơng điệp, mật mã thay thế, người ta thay có hệ thống chữ hay nhóm chữ chữ hay nhóm chữ khác Văn mật mã hóa mật mã cổ điển có xu hướng lộ thông tin thống kê định văn thường Bằng cách sử dụng thông tin này, mật mã cổ điển dễ bị dị (ví dụ phân tích tần suất) Mật mã cổ điển cịn phổ biến tới ngày nay, chủ yếu thơng qua việc giải đố chữ Ví dụ trị chơi: V Ví dụ 13 Dạng 1: Mã hoá x= C N T T a=5 b = 10 Giải mã: Tìm x? y = ax + b ( mod 26) ax = y – b ( mod 26) x = (a-1) (y-b) ( mod 26) Bài giải A B C D E F G H I J K L M N O P Q R S T U V WX Y Z 1 1 1 1 1 2 2 2 Bảng chữ Dựa vào bảng chữ ta tìm Rõ chữ toán sau:  Rõ chữ: C  Rõ số: N T T 13 19 19 Với a = 5, b =10 ta có hàm lập mã: y = ek ( x ) = 5x + 10 (Vì UCLN (5, 26) = ) x = 2, y = 20 x = 13, y = 23 x = 19, y =  Mã số:  Rõ mã: 20 U 23 X B B Dạng 2: Giải mã 14 Hãy trình bày trình giải mã : “ AJBIROBARZBAF” Chuyển kí tự thành số 0-9-1-8-17-14-1-0-17-25-1-0-5 Ta có a-1 modul 26 5-1 = 21 Áp dụng công thức giải mã ta được: dk(0) = 5-1 (0-17) mod 26 = (-357)mod 26 = -357 + 14*26 = 7H dk(9) = 5-1 (9-17) mod 26 = ( -168) mod 26= -168 + 7*26 = 14 O dk(1) = 5-1 (1-17) mod 26 = (-336) mod 26= -336 + 13*26= C dk(8) = 5-1 (8-17) mod 26 = (-189)mod 26= -189 + 8*26 = 19 T dk(17) = 5-1 (17-17) mod 26 =  A dk(14) = 5-1 (14-17) mod 26 = (-63)mod 26 = -63 + 3*26 = 15  P dk(1) = 5-1 (1-17) mod 26 = (-336) mod 26= -336 + 13*26= C dk(0) = 5-1 (0-17) mod 26 = (-357)mod 26 = -357 + 14*26 = 7H dk(17) = 5-1 (17-17) mod 26 =  A dk(25) = 5-1 (25-17) mod 26 = 168 mod 26 = 12 M dk(1) = 5-1 (1-17) mod 26 = (-336) mod 26= -336 + 13*26= C dk(0) = 5-1 (0-17) mod 26 = (-357)mod 26 = -357 + 14*26 = 7H dk(5) = 5-1 (5-17) mod 26 = (-252) mod 26 = -252 + 10*26 = I Vậy xâu giải mã là: HOCTAPCHAMCHI Ví dụ tổng quát Sơ đồ: Đặt P = C = Z26 Bản mã y rõ x  Z26 Tập khóa K = {(a, b), với a, b Z26 , UCLN(a, 26) = 1} 15 Với khóa k = (a, b) K, ta định nghĩa: Phép Mã hóa y = ek (x) = (a x + b) mod 26 Phép Giải mã x = dk (y) = a -1 ( y - b) mod 26 * Bản rõ chữ: CHIEUNAYOVUONHOA * Chọn khóa k = (a, b) = (3, 6) * Bản rõ số: 14 x = 20 13 24 14 21 20 14 13 Mã hóa theo cơng thức y = ek (x) = (a x + b) mod 26 = (3 x + 6) mod 26 * Bản mã số: 22 * Bản mã chữ: y = 12 18 14 19 22 17 14 22 19 MBESOTGAWROWTBWG Giải mã theo công thức x = dk (y) = a -1 (y – b) mod 26 = -1 (y – 6) mod 26 = * (y – 6) mod 26 Độ an toàn Độ an tồn Hệ mã hóa Affine: Rất thấp + Điều kiện UCLN(a, 26) = để bảo đảm a có phần tử nghịch đảo a –1 mod 26, tức thuật tốn giải mã dK ln thực + Số lượng a € Z26 nguyên tố với 26 (26) = 12 , 1, 3, 5, ,9, 11, 15, 17, 19, 21, 23, 25 Các số nghịch đảo theo (mod 26) tương ứng: 1, 9, 21, 15, 3, 19, 7, 23, 11, 5, 17, 25 + Số lượng b € Z26 26 + Số khố (a, b) 12 * 26 = 312 16 Rất !  Nhận xét: - Như việc dị tìm khóa mật dễ dàng - Mã affine mã an tồn 17 VI Q TRÌNH MÃ HỐ - GIẢI MÃ Chương trình code Java thể trình mã hoá giải mã toán hệ mã Affine Với đề bài: x= C N T T a=5 b = 10 Giải mã: Tìm x? y = ax + b ( mod 26) ax = y – b ( mod 26) x = (a-1) (y-b) ( mod 26) Ta có chương trình Java: 18 Demo chương trình Java giải tốn VII PHÁ MÃ – TẤN CƠNG HỆ MÃ AFFINE a) Điểm yếu: - Mật mã affine giới hạn vài nghìn khóa Điều có nghĩa dễ bị cơng khó chống lại cơng.tầm thường với - Độ an tồn khơng cao Vì giới hạn tính tốn phạm vi bảng chữ cái, sử dụng tin cần mã, ví dụ Z26 dùng chữ tiếng Anh b) Các cách công hệ mã Affine Cách : Dùng vét cạn Ý tưởng : Dùng vịng lặp để liệt kê khóa; Hàm giải mã để lấy đc kết khóa tương ứng public void vetcan_affine(string chuoi) 19 10 11 12 { int[] bangmakhoaa ={1,3,5,7,9,11,15,17,19,21,23,25}; for (int i = 0; i < bangmakhoaa.Length; i++) {0 for (int j = 0; j < 26; j++) { string chuoimahoa = ""; for (int kt = 0; kt Lập hệ phương trình đồng dư ẩn ==> Tính khóa a,b tương ứng VIII Giải pháp bảo vệ hệ mã Affine khỏi công: - Sử dụng nhiều khố - Bản rõ nén lại để người đọc khó nhận ngơn ngữ sử dụng KẾT LUẬN:  Hệ mã hóa cổ điển Mã hóa khóa đối xứng: dễ hiểu, dễ thực thi, có độ an tồn khơng cao Vì giới hạn tính toán phạm vi bảng chữ cái, sử dụng tin cần mã, ví dụ Z26 dùng chữ tiếng Anh Với hệ mã hóa cổ điển, biết khoá lập mã hay thuật toán lập mã, “dễ” xác định rõ, “dễ” tìm khố giải mã 20 21 TÀI LIỆU THAM KHẢO [1] Trang Web : https://www.wikipedia.org/Wiki-pedia [2] Al Sweigart ; Hacking Secret Ciphers with Python [3] Shafi Goldwasser Mihir Bellare ; Lecture Notes on Cryptography [4] Ths Trịnh Đức; Giáo trình Mật mã học Ứng dụng HẾT 22

Ngày đăng: 20/09/2023, 15:43

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w