Một số phương pháp kiểm soát truy cập hệ thống thông tin và ứng dụng trường đại học quốc gia hà nộiMột số phương pháp kiểm soát truy cập hệ thống thông tin và ứng dụng trường đại học quốc gia hà nộiMột số phương pháp kiểm soát truy cập hệ thống thông tin và ứng dụng trường đại học quốc gia hà nội
TRƯỜNG ĐẠI HỌC QUỐC GIA TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TRỊNH VĂN THÀNH LUẬN VĂN MỘT SỐ PHƯƠNG PHÁP KIỂM SỐT TRUY CẬP HỆ THỐNG THƠNG TIN VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ: CÔNG NGHỆ THÔNG TIN HÀ NỘI, năm 2014 TRƯỜNG ĐẠI HỌC QUỐC GIA TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TRỊNH VĂN THÀNH LUẬN VĂN MỘT SỐ PHƯƠNG PHÁP KIỂM SỐT TRUY CẬP HỆ THỐNG THƠNG TIN VÀ ỨNG DỤNG NGÀNH: CÔNG NGHỆ THÔNG TIN CHUYÊN NGÀNH: HỆ THỐNG THÔNG TIN MÃ SỐ: 60480104 LUẬN VĂN THẠC SĨ: CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS TS TRỊNH NHẬT TIẾN HÀ NỘI, năm 2014 I LỜI CẢM ƠN Luân văn tốt nghiệp khóa học sau đại học hồn thành trường Đại học Cơng nghiệp – Đại học Quốc gia Hà Nội Có luận văn tốt nghiệp này, tác giả xin bày tỏ lòng biết ơn chân thành sâu sắc tới trường Đại học Cơng nghệ, khoa Cơng nghệ thơng tin, phịng đào tạo nhà trường, đặc biệt PGS TS Trịnh Nhật Tiến trực tiếp hướng, dẫn dìu dắt, giúp đỡ tác giả với dẫn khoa học quý giá suốt trình nghiên cứu, triển khai, hồn thành đề tài “MỘT SỐ PHƯƠNG PHÁP KIỂM SỐT TRUY CẬP HỆ THỐNG THÔNG TIN VÀ ỨNG DỤNG” Xin chân thành cảm ơn quý thầy cô – nhà khoa học trực tiếp giảng dạy, truyền đạt kiến thức khoa học chuyên ngành Hệ thống thông tin cho thân tác giả năm tháng qua Xin gửi tới Sở giáo dục đào tạo Thái Bình, Hội đồng giáo trường THPT Nguyễn Trãi tỉnh Thái Bình tạo điều kiện giúp tơi hồn thành khóa học Xin ghi nhận cơng sức đóng góp q báu nhiệt tình bạn học viên lớp K19HTTT đóng góp ý kiến giúp tác giả triển khai đề tài Có thể khẳng định thành công luận văn thuộc công lao tập thể, nhà trường, quan xã hội Một lần tác giả xin lòng cảm ơn sâu sắc tới gia đình, người thân bạn bè tạo điều kiện, động viên khuyên khích tác giả hồn thành khóa học hồn thành luận văn Mặc dù có nhiều cố gắng để hoàn thành tốt luận văn song lần đầu tiếp cận với công tác nghiên cứu khoa học nên khơng tránh khỏi thiếu sót định Tác giả xin tiếp thu góp ý quý báu quý thầy cô bạn đồng nghiệp để luận văn hoàn Xin chân thành cảm ơn! Hà Nội, ngày 25 tháng 11 năm 2014 Học viên Trịnh Văn Thành II LỜI CAM ĐOAN Tôi xin cam đoan cơng trình nghiên cứu riêng tơi Các kết viết chung với tác giả khác đồng ý tác giả trước đưa vào luận văn Các kết nêu luận văn trung thực chưa cơng bố cơng trình khác Tác giả Trịnh văn Thành III MỤC LỤC LỜI CẢM ƠN I LỜI CAM ĐOAN II MỤC LỤC III BẢNG CHỮ VIẾT TẮT, TỪ CHUYÊN MÔN BẰNG TIẾNG ANH V DANH MỤC HÌNH ẢNH VI DANH MỤC BẢNG VIII LỜI NÓI ĐẦU Chương 1: KHÁI NIỆM CƠ SỞ 1.1 KHÁI NIỆM CƠ SỞ VỀ TOÁN HỌC 1.1.1 Khái niệm số đồng dư 1.1.2 Khái niệm độ phức tạp tính tốn 1.1.3 Số nguyên tố 1.1.4 Mã hóa DES 1.1.5 Chữ ký số RSA 14 1.2 KHÁI NIỆM CƠ SỞ VỀ AN TỒN THƠNG TIN 15 1.2.1 Khái niệm: 15 1.2.2 Các chiến lược bảo đảm an tồn thơng tin 15 1.2.3 Các giải pháp bảo đảm an tồn thơng tin 16 1.2.4 Các hình thức công thông tin trao đổi qua môi trường mạng 17 Chương 2: CÁC PHƯƠNG PHÁP KIỂM SOÁT TRUY NHẬP 18 2.1 KIỂM SOÁT TRUY NHẬP TRỰC TIẾP 18 2.1.1 Kiểm soát truy cập cấp quyền truy cập 18 2.1.2 Kiểm soát truy cập trực tiếp chế xác thực 19 2.1.3 Kiểm soát truy cập mã hóa, giấu thơng tin 20 2.2 KIỂM SOÁT TRUY NHẬP TỰ ĐỘNG 21 2.2.1 Tường lửa 21 2.2.2 Mạng riêng ảo 25 2.2.3 Hệ thống phát ngăn chặn truy cập trái phép IDS/IPS 30 Chương 3: ỨNG DỤNG KIỂM SỐT TRUY NHẬP HỆ THỐNG THƠNG TIN 35 3.1 KIỂM SOÁT TRUY NHẬP TRỰC TIẾP 36 3.1.1 Chương trình tạo mật mức an toàn 36 3.1.2 Chứng thực thông tin tài khoản qua thư điện tử 37 3.1.3 Kiểm soát truy cập trực tiếp xác thực người dùng chữ ký số 38 Chương trình xác thực người đăng nhập chữ ký số: 38 3.1.4 Kiểm soát truy nhập trực tiếp phân quyền truy cập 39 3.2 HỆ THỐNG KIỂM SOÁT TRUY CẬP TỰ ĐỘNG 40 3.2.1 Hệ thống mạng riêng ảo 40 IV 3.2.2 Kiểm soát truy cập tự động tường lửa 44 3.2.3 Kiểm soát truy cập hệ thống phát xâm trái phép IDS 47 KẾT LUẬN 51 1/ Kết luận 51 2/ Kết đạt 51 PHỤ LỤC 53 Phụ lục 1: Các bảng Si 54 Phụ lục 2: Modul tạo mật đạt mức an toàn: 56 Phụ lục 3: Modul ký số xác thực chữ ký 57 TÀI LIỆU THAM KHẢO 53 V BẢNG CHỮ VIẾT TẮT, TỪ CHUYÊN MÔN BẰNG TIẾNG ANH Chữ viết tắt Nghĩa tiếng Anh Nghĩa tiếng Việt IPS Intrusion Prevention System Hệ thống ngăn chặn xâm nhập IDS Intrusion Detection System Hệ thống phát xâm nhập CNTT Công nghệ thông tin ISS Internet Security Systems Hệ thống bảo mật mạng DMZ Demilitarized Zone Vùng phi quân ISP Internet Service Provider Nhà cung cấp dịch vụ Internet ISO Internation Standard Organization Tổ chức tiêu chuẩn quốc tế LAN Local Area Network Mạng cục TCP Transmission Control Protocol Giao thức kiểm sốt truyền tin VI DANH MỤC HÌNH ẢNH Hình 1.1 Sơ đồ mã hóa DES Hình 1.2 Sơ đồ tạo khóa cho mã hóa DES 10 Hình 1.3 Sơ đồ tính hàm f(Ri-1,ki) 12 Hình 1.4 Sơ đồ mã hóa RSA 14 Hình 2.1 Mơ hình phân công chức tướng ứng người truy cập đối tượng truy cập 19 Hình 2.2 Kiểm soát truy cập tường lửa 21 Hình 2.3 Mơ hình minh họa nguyên tắc hoạt động cổng ứng dụng 24 Hình 2.4 Mơ hình minh họa nguyên tắc hoạt động cổng vòng 24 Hình 2.5 Mơ hình mạng riêng ảo 25 Hình 2.6 Các cấp độ đóng gói phần header 28 Hình 2.7 Mơ hình phát xâm nhập phần mềm IDS (snort) 31 Hình 3.1 Sơ đồ áp dụng kết hợp phương pháp kiểm soát truy cập HTTT 36 Hình 3.2 Thơng tin tài khoản gửi thư điện tử người dùng tạo 37 Hình 3.3 Giao diện đăng nhập hệ thống người dùng 37 Hình 3.4 Giao diện khơi phục quyên mật người dùng 37 Hình 3.5 Thơng tin tài khoản người dùng gửi qua thư điện tử 38 Hình 3.6 Xác thực người truy cập tài khoản chữ ký số 38 Hình 3.7 Phân quyền truy cập vào hệ thống quản lý trường học 39 Hình 3.8 Kết nối từ VPN client tới VPN server 43 Hình 3.9 IP mà VPN Server cấp cho VPN Client kết nối 43 Hình 3.10: Trạng thái tường lửa máy tính 44 Hình 3.11 Trạng thái bật lường lửa 44 Hình 3.12 Trạng thái bật tường lửa 45 Hình 3.13 Kết cổng 8080 mở 45 Hình 3.14 Thơng báo lỗi kết nối cổng 8080 khơng mở 46 Hình 3.15 Cấu trúc tập luật Snort 47 Hình 3.16 Cấu trúc phần Header luật Snort 47 VII Hình 3.17 Cảnh báo hiển thị file log 50 Hình 3.18 Cảnh báo xảy Ping kích thước lớn 50 VIII DANH MỤC BẢNG Bảng 3.1 Thông số cấu hình cho mạng riêng ảo Client – to – Site 41 Bảng 3.2 Những nội dung cần thay đổi tệp snort.conf 49 44 Máy chủ VPN có cài đặt chương trình quản lý chứa liệu dùng chung văn bản, tài liệu nhà trường Khi kết nối VPN thiết lập thành công, người truy cập kết nối từ máy client vừa thiết lập sử dụng tài nguyên chia sẻ phân quyền 3.2.2 Kiểm soát truy cập tự động tường lửa 3.2.2.1 Cấu hình Firewall hệ điều hành Windows server 2008 Máy chủ mở số cổng cần thiết để kết nối với moạng bên thiết lập số công để chạy ứng dụng quản lý chia sẻ tài nguyên Dưới cách cấu hình tưởng lửa cho máy chủ [12]: Bước 1: Bật giao diện quản lí FireWall Hình 3.10: Trạng thái tường lửa máy tính Tại Hộp thoại Windows Firewall: Chọn Change settings Khơng tích vào vị trí “Block all incoming connections“ Nó block toàn kết nối đến Internet Kể remote (Có thể sử dụng trường hợp bạn muốn ngắt kết nối toàn phát bị hack.) Hình 3.11 Trạng thái bật lường lửa Bước 2: Cấu hình cổng (port) truy cập qua mạng: Chọn tab Exception Chọn Add Port 45 Dịch vụ Remote Desktop phép kết nối Internet Cần thiết để Connection đến Rule tích phép áp dụng Chọn tên tên số cổng Cách mở port FireWall Bước 3: Cho phần mềm kết nối Internet Nếu không nắm rõ cổng kết nối phần mềm Chọn Add Program sau chọn chương trình phép kết nối Bước 4: Ghi lại lịch sử kết nối: Chọn tab Advanced sau chọn Settings hộp thoại Security Logging Hình 3.12 Trạng thái bật tường lửa Hệ thống sé ghi lại log kết nối thành công Trong trường hợp bạn muốn biết IP kết nối thành công đến đâu hệ thống mình? Và vào thời điểm nào? Ngồi Firewall chặn cho phép nhiều địa IP kết nối tới máy Hình 3.13 Kết cổng 8080 mở 46 Hình 3.14 Thơng báo lỗi kết nối cổng 8080 không mở 3.2.2.2 Cho phép chặn danh sách địa IP Ví dụ: chặn địa IP bất kỳ: 207.111.0.0 - 207.111.0.15 Bước 1: Khởi động điều khiển tường lửa - Nhấn tổ hợp phím: Windows+R mở hộp thoại Run box - Gõ từ WF.msc → Enter Bước 2: Chọn Inbound Rules Windows Firewall + Tiếp theo, bạn chọn New Rule (Bên Inbound Rules) + Tại cửa sổ tiếp theo, bạn chọn Custom → Next + Tại hình tiếp theo, bạn nhấn Next + Các bạn tiếp tục chọn Next Bước 3: + Tại cửa sổ tiếp theo, bạn chọn These IP addresses, click vào Add + Tại cửa sổ mới, bạn nhập dãy địa IP: 207.111.0.0/15 + Sau chọn OK, dãy IP hiển thị ô These IP addresses, bạn chọn Next + Màn hình tiếp theo, bạn chọn block the connection, chọn Next / Next Bước 4: + Tại cửa sổ, bạn đặt tên cho thiết lập vừa cài đặt xong → Chọn Finish + Sau nhấn Finish, bạn thấy thiết lập vừa cột bên trái giao diện Để chỉnh sửa xóa bỏ thiết lập vừa rồi, bạn cần di chuyển trỏ tới vùng (rule thiết lập) lựa chọn chức Delete, Copy, Cut, Properties 47 3.2.3 Kiểm soát truy cập hệ thống phát xâm trái phép IDS 3.2.3.1 Giới thiệu Snort phần mềm IDS mã nguồn mở có khả phát xảy xập nhập trái phép tập luật người quản trị cấu hình Các packet trước gửi đến máy tính đích Snort kiểm tra, thẩm định Snort phát nhiều loại xâm nhập như: buffer overflows, stealth port scans, CGI attacks, SMB probes, OS fingerprinting attempts… Snort sử dụng luật lưu trữ file text, chỉnh sửa người quản trị Các luật nhóm thành kiểu Các luật thuộc loại lưu file khác File cấu hình Snort snort.conf Snort đọc luật vào lúc khởi tạo xây dựng cấu trúc liệu để cung cấp luật để bắt giữ liệu [16] Hình 3.15 Cấu trúc tập luật Snort Diễn giải: Tất Luật Snort logic gồm phần: Phần header phần Option • Phần Header chứa thơng tin hành động mà luật thực phát có xâm nhập nằm gói tin chứa tiêu chuẩn để áp dụng luật với gói tin • Phần Option chứa thông điệp cảnh báo thông tin phần gói tin dùng để tạo nên cảnh báo Phần Option chứa tiêu chuẩn phụ thêm để đối sánh luật với gói tin Một luật phát hay nhiều hoạt động thăm dị hay cơng Các luật thơng minh có khả áp dụng cho nhiều dấu hiệu xâm nhập Dưới cấu trúc chung phần Header luật Snort: Hình 3.16 Cấu trúc phần Header luật Snort 48 3.2.3.2 Các bước chuẩn bị cài đặt Một số yêu cầu trước cài đặt: + Phần mềm Snort: Hệ thống phát xâm nhập + Phần mêm Wincap: Hệ thống cho phép bắt gói tin phân tích mạng + Snort_rules: Tập luật mẫu Tiến hành triển khai hệ thống Win ảo với VMware Workstation, mơ hình gồm có máy Máy Server 2003 cài đặt hệ thống Snort máy Client (hệ điều hành tùy ý) – có vai trị cơng máy Server, card mạng VMware máy chế chộ VNet4, địa IP cấp phát sau: Máy Server: IP: 10.0.0.2/ Subnet Mask: 255.0.0.0/ Default getway: 10.0.0.1 Máy Client: IP: 10.0.0.3/ Subnet Mask: 255.0.0.0/ Default getway: 10.0.0.1 3.2.3.3 Cài đặt cấu hình 1/ Cài đặt phần mềm: WinPcap v4.1.2 WinPcap v4.1.2 thực Next → Next → I Agree → Install → Finish 2/ Cài đặt phần mềm: IDS - Snort Nháy đúp chuột vào file Snort_2_9_5_Installer để cài đặt Lần lượt thực I Agree → Next → Next → Next → Close → OK Giải nén file snortrules-snapshot-CURRENT.tar copy tất nội dung vào thư mục cài đặt Snort: C:\Snort, chọn Yes to All để thay tệp cũ Truy cập vào thư mục C:\Snort\etc\ mở file snort.conf Wordpad 49 Bảng 3.2 Những nội dung cần thay đổi tệp snort.conf Cụm từ cần thay Thay cụm từ Var HOME_NET any Var HOME_NET 192.168.1.1/24 Var EXTERNAL_NET any Var EXTERNAL_NET !$HOME_NET Var RULE_PATH /rules Var RULE_PATH C:\snort\rules Var SO_RULE_PATH /rules # Var SO_RULE_PATH /rules Var PREPROC_RULE_PATH /rules Var PREPROC_RULE_PATH C:\snort\rules Var WHITE_LIST_PATH /rules Var WHITE_LIST_PATH C:\snort\rules Var BLACK_LIST_PATH /rules Var BLACK _LIST_PATH C:\snort\rules #config logdir: dynamicpreprocessor config logdir: c:\Snort\log directory dynamicpreprocessor directory /usr/local/lib/snort_dynamicpreprocessor C::\Snort\lib\snort_dynamicpreprocess / or dynamicengine dynamicengine /usr/local/lib/snort_dynamicengine/libsf C:\Snort\lib\snort_dynamicengine\sf_e _engine.so ngine.dll preprocessor normalize_ip4 # preprocessor normalize_ip4 preprocessor normalize_tcp: ips ecn # preprocessor normalize_tcp: ips ecn stream stream preprocessor normalize_icmp4 # preprocessor normalize_icmp4 preprocessor normalize_ip6 # preprocessor normalize_ip6 preprocessor normalize_icmp6 # preprocessor normalize_icmp6 preprocessor bo # preprocessor bo 50 3/ Tạo tập luật Tạo tệp C:\snort\rules\test.rules có nội dung sau [15]: alert tcp any any -> 10.0.0.0/24 any (msg:”Co nguoi dang truy cap trai phep vao he thong”;SID:1597538) alert icmp any any -> 10.0.0.0/24 any (msg:”Co nguoi dang ping trai phep vao he thong”;SID:8521468) Cấu hình cho hệ thống phát truy cập trái phép lệnh snort –i1 –l c:\snort\log -c c:\Snort\etc\snort.conf -A full 3.2.3.4 Kết 1/ Tiến hành thủ truy cập Tại máy Client truy cập vào máy Server ping, http, ftp Hình 3.17 Cảnh báo hiển thị file log 2/ Một số tập luật cảnh báo khác + Tạo luật để cảnh báo Ping với kích thước lớn: alert icmp $HOME_NET any -> any any (msg: “Co cuoc tan cong DOS – Ping voi kich thuoc lon”; dsize: >50; sid: 2;) Tại máy Client ta tiến hành ping với kích thước lớn lệnh ping -l 1000 -f 10.0.0.2 –t Kết sau: Hình 3.18 Cảnh báo xảy Ping kích thước lớn + Tạo luật để biết máy mạng truy cập vào website bất kỳ: alert tcp any any -> any any (content: “địa website”; msg: “Ban moi truy cap vào website ”; sid: 100000; rev: 1;) 51 KẾT LUẬN 1/ Kết luận Vấn đề kiểm sốt truy cập hệ thống thơng tin quan trọng việc trao đổi thông tin qua mạng tồn cầu Nó giúp đảm bảo trao đổi thơng tin an tồn tin cậy Hệ thống kiểm soát truy cập giúp cho nhà quản trị mạng kiểm sốt tài liệu chia sẻ, kiểm soát người dùng truy cập vào hệ thống, ngồi cịn phát ngăn chặn truy cập trái phép Với công nghệ VPN, liệu chia sẻ kiểm sốt chặt chẽ hơn, tạo “hành lang” an toàn cho q trình vận chuyển thơng tin qua lại máy tính có kết nối mạng tồn cầu Trong giới hạn cho phép, luận văn trình bày phương pháp kiểm sốt truy cập hệ thơng thơng tin: + Kiểm soát truy cập trực tiếp + Kiểm soát truy cập tự động: Tường lửa, Hệ thống phát ngăn chặn truy cập trái phép, hệ thống mạng riêng ảo Với phương pháp có điểm mạnh yếu riêng, khơng phương pháp hồn hảo nhất, để đạt hiệu cao vấn đề kiểm sốt truy cập cần có kết hợp phương pháp với Nhằm tận dụng tối đa ưu điểm phương pháp phương pháp hỗ trợ cho điểm yếu 2/ Kết đạt Luận văn có hai kết chính: a/ Nghiên cứu tài liệu để trình bày vấn đề + Kiểm soát truy cập trực tiếp: Dùng mật khẩu, định danh, xác thực + Kiểm soát truy cập tự động: Tường lửa, mạng riêng ảo, Phát chặn truy cập bất hợp pháp b/ Thử nghiệm kết hợp phương pháp kiểm soát truy cập trường THPT Nguyễn Trãi – Thái Bình: - Cài đặt chương trình sử dụng mức độ an tồn 52 - Cài đặt chương trình xác thực người dùng chữ ký số - Cài đặt chương trình phát – cảnh báo truy cập trái phép - Cấu hình tường lửa để kiểm sốt truy cập mạng cơng cộng mạng nội - Cấu hình mạng riêng ảo loại mạng riêng ảo Client to Site để người dùng kết nối vào mạng nội từ xa 53 TÀI LIỆU THAM KHẢO [1] Phan Đình Diệu (2004), Lý thuyết mật mã an tồn thơng tin - NXB ĐHQG Hà Nội [2] Trịnh Nhật Tiến (2008), Giáo trình an tồn liệu - NXB ĐHQG Hà Nội Một số trang web [3] http://antoanthongtin.vn – Ban yếu phủ [4] http://www.dinte.vn – Cục công nghệ thông tin [5] http://www.pcworld.com.vn – Thế giới vi tính Tài liệu tiếng anh: [6] VPN SECURITY (2008) - The Government of the Hong Kong Special Administrative Region [7] Inline Intrusion Prevention (2012) - White Paper [8] Inline Intrusion Prevention (2002) – Bullet by Dinsh Sequeira [9] Using IPS and IDS together for Defense in Depth – (2004) - Ted Holland Một số trang web nước ngoài: [10].http://msdn.microsoft.com/ - Website of coropan Miscrosoft [11] http://technet.microsoft.com/ - Website of coropan Miscrosoft [12].http://www.windowsecurity.com/ - Website security of Miscrosoft [13].https://www.academia.edu/ - Website education [15] https://labs.snort.org/snort/2956/snort.conf – Home page of Snort [16] https://www.snort.org/documents - Document page of Snort [17] http://support.microsoft.com/ Website support online of Microsoft 54 PHỤ LỤC Phụ lục 1: Các bảng Si 55 56 Phụ lục 2: Modul tạo mật đạt mức an toàn: Public Function RandomString(ByVal size As Integer) As String Dim numberStr As String() = "0,1,2,3,4,5,6,7,8,9".Split(",") Dim CharStr As String() = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,u,v,r,s,t,x,y,z,w,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P ,Q,U,V,R,S,T,X,Y,Z,W".Split(",") Dim specailStr As String() = "_,-,@,.,!,#,$,%,^,&,*,,:".Split(",") Dim num, chr, spec As Integer num = chr = spec = Dim rand As New Random() While (num + chr + spec size) Or (chr * num * spec = 0) rand = New Random() num = rand.Next(1, numberStr.Length) If num >= size Then Continue While chr = rand.Next(1, size - num) spec = size - (num + chr) If spec < Then spec = End While 'Get random number Dim passArray(0 To size - 1) As String Dim i As Integer For i = To passArray.Length - passArray(i) = "" Next Dim r As Integer = -1 For i = To num rand = New Random() r = rand.Next(0, numberStr.Length - 1) While r < Or ExistInArray(numberStr(r), passArray) r = rand.Next(0, numberStr.Length - 1) 'Lay ky tu so ngau nhien tren mang so End While 'Chen vao mang ky tu mat khau Dim n As Integer = RandomNumberInArray(passArray) passArray(n) = numberStr(r) Next 'Return num.ToString() & "-" & chr.ToString() & "-" & spec.ToString() Dim result As String = "" ' 'Get random char For i = To chr rand = New Random() r = rand.Next(0, CharStr.Length - 1) While r < Or ExistInArray(CharStr(r), passArray) r = rand.Next(0, CharStr.Length - 1) End While Dim n As Integer = RandomNumberInArray(passArray) passArray(n) = CharStr(r) Next 'Get random special char For i = To spec rand = New Random() r = rand.Next(0, specailStr.Length - 1) While r < Or ExistInArray(specailStr(r), passArray) r = rand.Next(0, specailStr.Length - 1) End While Dim n As Integer = RandomNumberInArray(passArray) 57 passArray(n) = specailStr(r) Next For i = To passArray.Length - result &= passArray(i) Next Return result End Function Phụ lục 3: Modul ký số xác thực chữ ký1 Modul ký số : public string SignDigital(string plantextfile, string Privatekeyfile) { //Ma hoa bam MD5 RSACryptoServiceProvider RSA = new RSACryptoServiceProvider(); string RSA_Privatekey; MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); byte[] md5mess = md5.ComputeHash(Encoding.UTF8.GetBytes(plantextfile)); string aftermd5 = BitConverter.ToString(md5mess); // Doc khoa private StreamReader sr2 = new StreamReader(Privatekeyfile); RSA_Privatekey = sr2.ReadToEnd(); sr2.Close(); // Cat de lay duoc khoa public cua RSA string tempSign = RSA_Privatekey.Substring(0, RSA_Privatekey.IndexOf("") + 14); RSA_Privatekey = RSA_Privatekey.Replace(tempSign, ""); // Lay dai khoa int dodaikhoarsa = Convert.ToInt32(tempSign.Replace("", "").Replace("", "")); // Đưa khóa cơng khai vào RSA.FromXmlString(RSA_Privatekey); // Ma hoa int keysize = dodaikhoarsa / 8; byte[] encr = Encoding.UTF8.GetBytes(aftermd5); int maxlength = keysize - 42; int dataLength = encr.Length; int khoi = dataLength / maxlength; StringBuilder sb = new StringBuilder(); for (int i = 0; i maxlength) ? maxlength : dataLength - maxlength * i]; Buffer.BlockCopy(encr, maxlength * i, template, 0, template.Length); byte[] damahoabyte = RSA.Encrypt(template, false); Array.Reverse(damahoabyte); sb.Append(Convert.ToBase64String(damahoabyte)); } tempSign = sb.ToString(); //Chữ ký thu return tempSign; } Modul xác thực chữ ký số Modul có sử dụng thư viện dựng sẵn: System.Security.Cryptography 58 public bool VerifyDigitalSign(string plantext, string DigitalSign, string publickey) { RSACryptoServiceProvider RSA = new RSACryptoServiceProvider(); public string RSApubkey; string template = ""; //Ma hoa bam MD5 MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); byte[] mess = md5.ComputeHash(Encoding.UTF8.GetBytes(plantext)); string HashMd5 = BitConverter.ToString(mess); string RSApublickey = publickey;// sr3.ReadToEnd(); string tam = RSApublickey.Substring(0, RSApublickey.IndexOf("") + 14); RSApublickey = RSApublickey.Replace(tam, ""); RSA.FromXmlString(RSApublickey); int lengthKeyRSA = Convert.ToInt32(tam.Replace("", "").Replace("", "")); // Ký lên rõ try { int BlockSize = ((lengthKeyRSA / 8) % != 0) ? (((lengthKeyRSA / 8) / 3) * 4) + : ((lengthKeyRSA / 8) / 3) * 4; tam = DigitalSign; int khoi = tam.Length / BlockSize; ArrayList ar = new ArrayList(); for (int i = 0; i < khoi; i++) { byte[] dagiaimabyte = Convert.FromBase64String(tam.Substring(BlockSize * i, BlockSize)); Array.Reverse(dagiaimabyte); ar.AddRange(RSA.Decrypt(dagiaimabyte, false)); } template = Encoding.UTF8.GetString(ar.ToArray(Type.GetType("System.Byte")) as byte[]); } catch { return false; } if (HashMd5 == template) { return true;//Chữ ký hợp lệ } else { return false; //Chữ ký không hợp lệ } } ... phương pháp kiểm sốt truy cập hệ thống thơng tin CHương 3: ỨNG DỤNG CÁC PHƯƠNG PHÁP KIỂM SỐT TRUY CẬP Trình bày ứng dụng phương pháp kiểm soát truy cập vào việc kiểm soát truy cập hệ thống thơng tin. .. thơng tin truy? ??n tải qua mạng Kiểm sốt truy cập hệ thống thông tin biện pháp cấn thiết để bảo vệ thông tin hệ thống thông tin Hiện xây dựng hệ thống kiểm sốt truy cập vào hệ thống thơng tin vô... HỌC CÔNG NGHỆ TRỊNH VĂN THÀNH LUẬN VĂN MỘT SỐ PHƯƠNG PHÁP KIỂM SỐT TRUY CẬP HỆ THỐNG THƠNG TIN VÀ ỨNG DỤNG NGÀNH: CÔNG NGHỆ THÔNG TIN CHUYÊN NGÀNH: HỆ THỐNG THÔNG TIN MÃ SỐ: 60480104 LUẬN VĂN THẠC