Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 105 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
105
Dung lượng
2,4 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN ĐỨC DŨNG NGHIÊN CỨU CÁC GIẢI PHÁP ĐẢM BẢO AN NINH AN TỒN CHO MẠNG KHƠNG DÂY Ngành: Công nghệ thông tin Chuyên ngành: Truyền liệu Mạng máy tính Mã số: 60.48.15 LUẬN VĂN THẠC SĨ NGƢỜI HƢỚNG DẪN KHOA HỌC TS Hồ Văn Hƣơng Hà Nội - 2009 MỤC LỤC Mục lục Trang Danh mục chữ viết tắt Danh mục bảng Danh mục hình vẽ MỞ ĐẦU CHƢƠNG 1: TỔNG QUAN VỀ MẠNG KHÔNG DÂY 10 1.1 TỔNG QUAN VỀ MẠNG KHÔNG DÂY VÀ CÁC CÔNG NGHỆ ỨNG DỤNG TRONG MẠNG KHÔNG DÂY 10 1.1.1 Sự phát triển mạng không dây 10 1.1.2 Các công nghệ ứng dụng mạng không dây 19 1.1.3 Các kỹ thuật điều chế trải phổ 20 1.2 MƠ HÌNH MẠNG WLAN 23 1.2.1 Giới thiệu .23 1.2.2 Ƣu điểm mạng WLAN .23 1.2.3 Hoạt động mạng WLAN 24 1.2.4 Các mơ hình mạng WLAN 24 1.2.5 Cự ly truyền sóng, tốc độ truyền liệu 25 1.3 CHUẨN IEEE 802.11 CHO MẠNG WLAN 25 1.3.1 Giới thiệu .25 1.3.2 Nhóm lớp vật lý PHY 27 1.3.3 Nhóm lớp liên kết liệu MAC 28 1.3.4 Các kiến trúc chuẩn 802.11 28 1.3.5 Các trình diễn mơ hình Infrastructure 30 1.4 KẾT CHƢƠNG 32 CHƢƠNG 2: MỘT SỐ GIẢI PHÁP ĐẢM BẢO AN NINH AN TỒN CHO MẠNG KHƠNG DÂY 33 2.1 THỰC TRẠNG MẤT AN NINH AN TOÀN CỦA MẠNG KHÔNG DÂY 33 2.1.1 Khái niệm an ninh an tồn thơng tin .33 2.1.2 Đánh giá vấn đề an toàn, bảo mật hệ thống 33 2.1.3 Các nguy an ninh an toàn mạng không dây 35 2.2 CƠ SỞ KHOA HỌC CỦA MẬT MÃ ỨNG DỤNG TRONG VIỆC ĐẢM BẢO AN TỒN VÀ BẢO MẬT MẠNG KHƠNG DÂY 41 2.2.1 Giới thiệu chung 41 2.2.2 Hệ mật mã khóa đối xứng 41 2.2.3 Hệ mật mã khóa cơng khai .42 2.3 NGHIÊN CỨU MỘT SỐ GIẢI PHÁP ĐẢM BẢO AN NINH AN TOÀN CHO MẠNG WLAN 44 2.3.1 Phƣơng pháp bảo mật dựa WEP 44 2.3.2 Phƣơng pháp bảo mật dựa TKIP .53 2.3.3 Phƣơng pháp bảo mật dựa AES-CCMP 61 2.4 KẾT CHƢƠNG 72 CHƢƠNG 3: NGHIÊN CỨU, ĐỀ XUẤT GIẢI PHÁP, PHÁT TRIỂN ỨNG DỤNG ĐẢM BẢO AN NINH AN TỒN CHO MẠNG WLAN NGÀNH CƠNG AN 74 3.1 PHÂN TÍCH YÊU CẦU, ĐỀ XUẤT GIẢI PHÁP 74 3.1.1 Giới thiệu .74 3.1.2 Thực trạng yêu cầu đặt mạng WLAN ngành công an 74 3.1.3 Đề xuất giải pháp đảm bảo an ninh cho mạng WLAN ngành công an .75 3.2 THIẾT KẾ VÀ LẬP TRÌNH ỨNG DỤNG 83 3.2.1 Thiết kế ứng dụng .83 3.2.2 Lập trình ứng dụng .83 3.3 MỘT SỐ TÍNH NĂNG ĐẠT ĐƢỢC CỦA CHƢƠNG TRÌNH 101 3.4 KẾT CHƢƠNG 103 KẾT LUẬN 104 TÀI LIỆU THAM KHẢO 105 DANH MỤC CÁC CHỮ VIẾT TẮT Từ viết tắt Từ gốc Nghĩa tiếng Việt AES Advanced Encryption Standard Chuẩn mã hóa tiên tiến AMPS Advanced Mobile Phone System Hệ thống điện thoại di động tiên tiến AP Access Point Điểm truy cập BS Base Station Trạm sở BSS Basic Service Set Tập dịch vụ CCM Counter Mode - CBC MAC Mode mã hóa CBC CCMP Counter Mode - CBC MAC Protocol Giao thức mã hóa CCM CDMA Code Division Multiple Access Đa truy nhập phân chia theo mã CRC Cyclic Redundancy Check Kiểm tra dƣ thừa vòng DSSS Direct Sequence Spread Spectrum Trải phổ dãy trực tiếp ESS Extended Service Set Tập dịch vụ mở rộng FHSS Frequency Hopping Spread Spectrum Trải phổ nhảy tần GPRS General Packet Radio Service Dịch vụ vơ tuyến gói chung GSM Group Special Mobile Nhóm đặc trách di động HSCSD High Speed Circuit Switched Data Dữ liệu chuyển mạch tốc độ cao IBSS Independent Basic Service Set Tập dịch vụ độc lập ICV Integrity Check Value Giá trị kiểm tra tính tồn vẹn IEEE Institute of Electrical and Electronics Engineers Viện Công nghệ điện điện tử IETF Internet Engineering Task Force Hiệp hội kỹ sƣ tham gia phát triển internet IMTS Improved Mobile Telephone System Hệ thống điện thoại di động cải tiến MAC Message Authentication Code (cryptographic community use) Mã chứng thực gói tin MIC Message Integrity Code Mã tồn vẹn gói tin MPDU MAC Protocol Data Unit Đơn vị liệu giao thức MAC MSC Mobile Switching Center Trung tâm chuyển mạch di động MSDU MAC Service Data Unit Đơn vị liệu dịch vụ MAC MTS Mobile Telephone System Hệ thống điện thoại di động NMT Nordic Mobile Telephony Hệ thống điện thoại di động Bắc Âu OFDM Orthogonal Frequency Division Multiplexing Ghép kênh phân chia theo tần số trực giao PAN Personal Area Network Mạng vùng cá nhân PBX Private Brach Exchange Tổng đài nhánh riêng PHS Personal Handy-phone System Hệ thống điện thoại cầm tay cá nhân PSTN Packet Switched Telephone Network Mạng điện thoại chuyển mạch gói RF Radio Frequency Tần số sóng vơ tuyến SMS Short Message Service Dịch vụ nhắn tin ngắn STA Wireless Station Thiết bị có hỗ trợ mạng không dây TACS Total Access Communication System Hệ thống truyền thơng truy cập hồn tồn TDMA Time Division Multiple Access Đa truy nhập phân chia theo thời gian TKIP Temporal Key Integrity Protocol Giao thức tích hợp khóa tạm thời WEP Wired Equivalent Privacy Bảo mật tƣơng đƣơng mạng hữu tuyến WLAN Wireless Local Area Network Mạng cục không dây WPA Wi-Fi Protected Access Truy cập mạng Wifi an toàn DANH MỤC CÁC BẢNG Bảng 2.1: Những điểm yếu WEP Bảng 2.2: Cách khắc phục điểm yếu WEP Bảng 3.1: Các mode WPA WPA2 DANH MỤC CÁC HÌNH VẼ Hình 1.1: Hoạt động DSSS Hình 1.2: Mơ hình nhảy tần CABED Hình 1.3: Phƣơng thức điều chế OFDM Hình 1.4: Mơ hình mạng Ad-hoc (hay mạng ngang hàng) Hình 1.5: Mơ hình Infrastructure Mode Hình 1.6: Linksys Wireless Router Hình 1.7: Compaq 802.11b PCI card Hình 1.8: Chuẩn 802.11 mơ hình OSI Hình 1.9: Mơ hình BSS Hình 1.10: Mơ hình ESS Hình 2.1: Phần mềm bắt gói tin Ethereal Hình 2.2: Phần mềm thu thập thơng tin hệ thống mạng khơng dây NetStumbler Hình 2.3: Mơ tả q trình cơng DOS tầng liên kết liệu Hình 2.4: Mơ tả q trình cơng theo kiểu chèn ép Hình 2.5: Mơ tả q trình cơng theo kiểu thu hút Hình 2.6: Mơ hình hệ mật mã khóa đối xứng Hình 2.7: Mơ hình hệ mật mã khóa cơng khai Hình 2.8: Q trình chứng thực diễn WEP Hình 2.9: Định dạng gói tin chứng thực Hình 2.10: Mã hóa chuỗi Hình 2.11: Sự kết hợp IV với khóa Hình 2.12: Thêm ICV Hình 2.13: Thêm IV KeyID Hình 2.14: Tạo so sánh giá trị MAC (hoặc MIC) Hình 2.15: Q trình tạo khóa để mã Hình 2.16: Q trình xử lý bên phát Hình 2.17: Quá trình xử lý bên thu Hình 2.18: Quá trình hoạt động ECB Mode Hình 2.19: Ví dụ Counter Mode Hình 2.20: Q trình xử lý gói tin CCMP Hình 2.21: Trình tự xử lý MPDU Hình 2.22: CCMP Header Hình 2.23: Mã hóa giải mã Hình 2.24: Bên khối mã hóa CCMP Hình 2.25: MPDU sau trình mã (CH=CCMP Header) Hình 2.26: Định dạng khối để đƣa vào CBC-MAC Hình 2.27: Thành phần khối để đƣa vào CBC-MAC Hình 2.28: Kết hợp số đếm Ctr CCMP AES Counter Mode Hình 3.1: Mơ hình tổng thể mạng máy tính BCA Hình 3.2: Kết hợp phƣơng án mã hóa Hình 3.3: Giải pháp đảm bảo an ninh mạng WLAN ngành cơng an Hình 3.4: Mơ hình triển khai mạng WPA (WPA2) Enterprise Mode Hình 3.5: Các Module chƣơng trình Hình 3.6: Thiết kế cửa sổ chƣơng trình Hình 3.7: Thiết kế Form mã hóa Hình 3.8: Thiết kế Form giải mã Hình 3.9: Chọn ngƣời nhận mail danh sách Hình 3.10: Thiết kế Form gửi thƣ MỞ ĐẦU Cuộc sống ngƣời ngày thực bƣớc sang kỷ nguyên mới, kỷ nguyên khoa học cơng nghệ truyền thơng Trong khơng thể khơng kể đến đời phát triển mạng Internet, tác động mạnh mẽ đến đời sống Thơng qua ngƣời tồn giới xích lại gần hơn, đơn giản với click chuột, ta liên lạc với ngƣời cách xa ta đến hàng ngàn dặm Cùng với công nghệ thúc đẩy phát triển mạng Internet mạng khơng dây có chuyển biến mạnh mẽ, có mạng WLAN Các thiết bị mạng kết nối với phƣơng tiện truyền dẫn hữu tuyến mà sóng vơ tuyến Ích lợi mà mạng mang lại khả thiết lập kết nối tới thiết bị không phụ thuộc vào hạ tầng dây dẫn Cũng nhờ vào đặc điểm mạng khơng dây mà chi phí cho việc lắp đặt, trì, bảo dƣỡng hay thay đổi đƣờng dây đƣợc giảm nhiều, đồng thời, tính linh hoạt đƣợc áp dụng cách hiệu quả, đâu phạm vi phủ sóng thiết bị, ta kết nối vào mạng Trong năm gần đây, giới công nghệ thông tin chứng kiến bùng nổ công nghiệp mạng không dây Khả liên lạc không dây gần nhƣ tất yếu thiết bị cầm tay, máy tính xách tay, điện thoại di động thiết bị số khác Với tính ƣu việt vùng phục vụ kết nối linh động, khả triển khai nhanh chóng, giá thành ngày giảm, mạng WLAN trở thành giải pháp cạnh tranh thay mạng Ethernet LAN truyền thống Tuy nhiên, tiện lợi mạng không dây đặt thử thách lớn bảo đảm an ninh an tồn cho mạng khơng dây nhà quản trị mạng Ƣu tiện lợi kết nối khơng dây bị giảm sút khó khăn nảy sinh bảo mật mạng Vấn đề ngày trở nên cấp thiết cần nhận đƣợc quan tâm từ nhiều phía Vì lý với niềm đam mê thực tiện lợi mà mạng không dây mang lại khiến định chọn đề tài: “Nghiên cứu giải pháp đảm bảo an ninh an toàn cho mạng không dây” làm luận văn tốt nghiệp với mong muốn tìm hiểu, nghiên cứu ứng dụng giải pháp để đảm bảo an ninh cho mạng không dây đơn vị Toàn luận văn đƣợc chia làm chƣơng: Chƣơng 1: Tổng quan mạng không dây Trình bày tổng quan loại mạng khơng dây kỹ thuật đƣợc ứng dụng mạng khơng dây, sau tập trung trình bày mạng WLAN chuẩn mạng WLAN nhƣ diễn trình thiết lập kết nối với hệ thống WLAN đơn giản (chƣa có chứng thực mã hóa) Chƣơng 2: Một số giải pháp đảm bảo an ninh an tồn cho mạng khơng dây Trình bày thực trạng an ninh an tồn mạng không dây, kiểu công mạng không dây, giao thức bảo mật mạng không dây, kỹ thuật mật mã ứng dụng để bảo mật mạng không dây số giải pháp cho việc đảm bảo an ninh an toàn cho mạng WLAN Chƣơng 3: Nghiên cứu, đề xuất giải pháp, phát triển ứng dụng đảm bảo an ninh an toàn cho mạng WLAN ngành cơng an Mục đích chƣơng nghiên cứu thực trạng yêu cầu đặt mạng WLAN ngành cơng an từ đề xuất giải pháp, phát triển ứng dụng nhằm đảm bảo an ninh an tồn cho mạng WLAN ngành cơng an phục vụ tốt mặt công tác nghiệp vụ lực lƣợng công an Trong q trình làm luận văn khơng thể tránh khỏi sai sót, mong đóng góp ý kiến thầy cô, đồng nghiệp bạn bè 90 ' -Private Enum CBoolean CFalse = CTrue = End Enum Private m_cxyAutoScroll As Long ' -Private Const SM_CXDRAG = 68 Private Const SM_CYDRAG = 69 ' -Private Const SHGFI_DISPLAYNAME = &H200 Private Type Size cx As Long cy As Long End Type Private FileCollection As Collection Private Sub cmdOK_Click() cTypeEnc = "S" EncOrNo = True Me.EncryptAll 'reset after encrypted cCurEncFile = "" EncOrNo = True End Sub Private Sub Command10_Click() cTypeEnc = "P" EncOrNo = True Me.EncryptAll 'reset after encrypted cCurEncFile = "" EncOrNo = True End Sub Private Sub Command6_Click() Unload Me End Sub Private Sub Command9_Click() MsgBox "OK click" End Sub Private Sub ApplySin(cFileSkin As String) If cFileSkin "" Then 91 Skin1.LoadSkin cFileSkin Skin1.ApplySkin Me.hwnd End If End Sub Private Sub Command8_Click() cTypeEnc = "K" cCancelFolder = True Me.EncryptAll 'reset after encrypted cCurEncFile = "" EncOrNo = True End Sub Private Sub LVEncFiles_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = Then Me.PopupMenu Me.MnuFile End If End Sub Private Sub mnuAddDir_Click() cCurEncFile = GetBrowseFolder("Select the folder for find decrypttion key", Me) cCurFileOnly = Replace(cCurEncFile, FileNameOnly(cCurEncFile), "") ReActiveForm End Sub Private Sub mnuAddFile_Click() On Error Resume Next DiaOpen.CancelError = True DiaOpen.ShowOpen cCurEncFile = DiaOpen.Filename cCurFileOnly = Replace(cCurEncFile, FileNameOnly(cCurEncFile), "") ReActiveForm End Sub Private Sub mnuDelete_Click() If LVEncFiles.ListItems.Count = Then Exit Sub txtTotalsize.Text = Val(txtTotalsize.Text) - FileLen(LVEncFiles.SelectedItem.key) Me.txtTotalsizeNew.Caption = FormatSize(txtTotalsize.Text) LVEncFiles.ListItems.Remove LVEncFiles.SelectedItem.Index txtTotalFile.Caption = Val(txtTotalFile.Caption) - End Sub Private Sub mnuDeleteAll_Click() LVEncFiles.ListItems.Clear 92 txtTotalFile.Caption = txtTotalsize.Text = txtTotalsizeNew.Caption = End Sub Private Sub mnuExit_Click() Unload Me End Sub Private EncryptFolderName As String Private Sub cmdBrow_Click() On Error Resume Next DiaOpen.ShowSave txtEncFileName.Text = Mid(DiaOpen.Filename, 1, Len(DiaOpen.Filename) - 3) & "dvd" End Sub Private Sub cmdExtCancel_Click() SelfExtrac = False Unload Me End Sub Private Sub cmdExtOK_Click() Dim cFileSaveAs As String Dim cFileAdd As String Dim TempCipherAl As String Dim TempComp As Boolean cFileAdd = Me.txtEncFileName.Text cFileSaveAs = Mid(cFileAdd, 1, Len(cFileAdd) - 3) & "exe" TempCipherAl = CipherAlgorithm cTypeEnc = "P" TempComp = CompressOrNo CompressOrNo = False CipherAlgorithm = "TWF" Me.EncryptAll AddToSelfExtract App.Path & "\SelfExtract.dve", cFileAdd, cFileSaveAs SelfExtrac = False Kill cFileAdd CipherAlgorithm = TempCipherAl CompressOrNo = TempComp Unload Me End Sub Private Sub CpBlf1_Progress(Percent As Long) ProgressBar.Value = Percent 93 End Sub Private Sub Cp3Des_Progress(Percent As Long) ProgressBar.Value = Percent End Sub Private Sub CpGost_Progress(Percent As Long) ProgressBar.Value = Percent End Sub Private Sub CpRC6_Progress(Percent As Long) ProgressBar.Value = Percent End Sub Private Sub CpRjd1_Progress(Percent As Long) ProgressBar.Value = Percent End Sub 3.2.2.3 Thiết kế mã nguồn Form giải mã Khi ngƣời dùng cần giải mã, chƣơng trình hỏi ngƣời dùng vào khóa (mật khẩu) tuỳ theo phƣơng thức mã mật khẩu, khóa hay thẻ thơng minh Chƣơng trình tự động nhận dạng mã phƣơng pháp nào, thuật tốn gì, u cầu ngƣời dùng vào thơng tin thích hợp Ví dụ ngƣời dùng mã mật khẩu, chƣơng trình yêu cầu nhập vào mật thích hợp, mã dùng Smart card chƣơng trình tự động tìm khóa thẻ, thẻ khơng thoát Trong trƣờng hợp đƣợc mã khóa ngƣời dùng tạo ra, chƣơng trình hiển thị cửa sổ đọc khóa vào (có tiện ích tìm kiếm khố) Hình 3.8: Thiết kế Form giải mã 94 Trên cửa sổ giải mã phía bên trái chƣơng trình hiển thị tồn cấu trúc thƣ mục mã, ngƣời dùng chọn riêng thƣ mục để giải mã hay xem cấu trúc thƣ mục Phía bên phải danh sách file mã bao gồm thơng tin nhƣ kích thƣớc, tên file, … chọn hay nhiều file để giải mã tùy theo yêu cầu Dƣới phần mã nguồn Module giải mã: Private WithEvents CpBlf As clsBlowfish Private WithEvents CpGost As clsGost Private WithEvents CpDes As cls3DES Private WithEvents CpTwf1 As clsTwofish Private WithEvents CpRjd1 As clsRijndael Private WithEvents CpSkj As clsSkipjack Private WithEvents CpSrp As clsSerpent Private WithEvents CpTea As clsTEA Private WithEvents CpRC6 As clsRC6 Private FilesSeleted As Collection Private FolderSeleted As Collection Private Node1 As ComctlLib.Node Private NodeIdx As Integer Private SLCryptError As Boolean Private Sub cmdNewFolder_Click() diaNewFolder.ShowOpen FolderToDec = diaNewFolder.Filename End Sub Private Sub ReUpdateIcon(LVview As ComctlLib.ListView) Dim I As Integer Dim J As Integer Dim Ext As String Dim sloop As Integer Dim sFlderPos As Integer Dim sFldrName As String Dim nChilds As Integer For I = To LVview.ListItems.Count Ext = UCase(GetExt(LVview.ListItems(I).Text)) Select Case Ext Case "TXT", "INI" LVview.ListItems(I).SmallIcon = "TXT" Case "DOC" LVview.ListItems(I).SmallIcon = "WORD" Case "OCX", "OCA", "DLL", "SYS", "DLL" LVview.ListItems(I).SmallIcon = "OCX" 95 Case "ZIP" LVview.ListItems(I).SmallIcon = "ZIP" Case "EXE" LVview.ListItems(I).SmallIcon = "EXE" Case "HTM", "HTML" LVview.ListItems(I).SmallIcon = "IE" Case "BMP", "JPG", "GIF", "ICO" LVview.ListItems(I).SmallIcon = "BMP" Case "MDB" LVview.ListItems(I).SmallIcon = "ACES" Case "XLS" LVview.ListItems(I).SmallIcon = "XLS" Case "AVI", "MP3", "WAV", "WMV", "MPEG" LVview.ListItems(I).SmallIcon = "MEDIA" Case "PPT" LVview.ListItems(I).SmallIcon = "PPT" Case "HLP", "CHM" LVview.ListItems(I).SmallIcon = "HLP" Case Else LVview.ListItems(I).SmallIcon = "OTHER" End Select Next End Sub Private Sub cboPath_Change() If Right(cboPath.Text, 2) = "\\" Then cboPath.Text = Mid(cboPath.Text, 1, Len(cboPath.Text) - 1) End Sub Private Sub CpBlf_Progress(Percent As Long) Me.ProgressBar.Value = Percent End Sub Private Sub CpDes_Progress(Percent As Long) Me.ProgressBar.Value = Percent End Sub Private Sub CpGost_Progress(Percent As Long) Me.ProgressBar.Value = Percent End Sub Private Sub CpRC6_Progress(Percent As Long) Me.ProgressBar.Value = Percent End Sub Private Sub CpSkj_Progress(Percent As Long) 96 Me.ProgressBar.Value = Percent End Sub Private Sub CpTea_Progress(Percent As Long) Me.ProgressBar.Value = Percent End Sub Private Sub CpTwf1_Progress(Percent As Long) Me.ProgressBar.Value = Percent End Sub Private Sub Form_Activate() ReUpdateIcon Me.LvDecFile Screen.MousePointer = OperateMode = 'frmMain.StatusBar.Panels(1).Text = cEncFileName MakeTree EncOrNo = False Dim nFileS As Integer Dim nToatlS As Long Dim I As Integer For I = To Me.LvDecFile.ListItems.Count nTotals = nTotals + Val(LvDecFile.ListItems(I).Tag) Next Me.StatusBar1.Panels(2).Text = "Tæng céng: " & Me.LvDecFile.ListItems.Count & _ " Files -> " & FormatSize(nTotals) GetFolderStr 'If LVDecFile.ListItems.Count = And cCurFilename "" Then ' MsgBox "Sai mËt khÈu, sai định dạng file", vbCritical, "SLCrypt error" ' Unload Me 'End If End Sub Private Sub Form_Load() ApplySin App.Path & "\Skin\winaqua.skn" 'If ValidLicense = False Then End 'For ADODB Set ConnectDB = New ADODB.Connection ConnectDB.CursorLocation = adUseClient ConnectDB.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" _ & App.Path & "\SLCrypt.mdb;Jet OLEDB:Database Password=E15@SLCrypt54;" GetSMConfig Set FilesSeleted = New Collection Set FolderSeleted = New Collection 97 cboPath.Text = App.Path & "\" & CurCardHolder & "\Thu muc tep ro\" DecRootFolder = FullPathDes 'Init treeview SLCryptError = False Dim Node2 As ComctlLib.Node Set Node1 = tvDir.Nodes.Add(, , "RootFolder", "Root", 4) Set Node2 = tvDir.Nodes.Add(, , "All file", "All Files", 1) 'Check the command line If Len(Command) > Then ListFolderAndFiles Command cEncFileName = Command MakeTree ReUpdateIcon LvDecFile End If End Sub Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) On Error Resume Next If Y > tvDir.Top Then If Y < tvDir.ToolTipText + tvDir.Height Then If X > tvDir.Left Then If X < Me.LvDecFile.Left + LvDecFile.Width Then Me.MousePointer = If Button = Then tvDir.Width = X LvDecFile.Left = X + 100 LvDecFile.Width = Me.Width - tvDir.Width - 400 End If End If End If End If End If End Sub 3.2.2.4 Thiết kế mã nguồn Form gửi thư Chƣơng trình đƣợc thiết kế có module gửi thƣ mật cho thành viên nhóm Ngƣời sử dụng cần chọn tệp cần gửi, nhấn vào Menu hay phím phải chuột, chọn ngƣời cần gửi, chƣơng trình tự động mã hóa với khóa ngƣời gửi gửi 98 Hình 3.9: Chọn người nhận mail danh sách Hình 3.10: Thiết kế Form gửi thư Dƣới phần mã nguồn Module gửi thƣ: Option Explicit Private WithEvents CpBlf1 As clsBlowfish 99 Private WithEvents CpGost As clsGost Private WithEvents CpDes As clsDES Private WithEvents CpTwf1 As clsTwofish Private WithEvents CpSkj As clsSkipjack Private WithEvents CpRC6 As clsRC6 Private WithEvents CpTea As clsTEA Private WithEvents CpRjd1 As clsRijndael Private InetConn As clsInternetCon 'For send Mail Private WithEvents poSendMail As clsSendMail Private MaskSend As Boolean ' Private cEncFileAtt As String Private NumberOfRcp As Integer Private cEncTypeToSend As String * ' misc local vars Dim bAuthLogin As Boolean Dim bPopLogin As Boolean Dim bHtml As Boolean Dim MyEncodeType As ENCODE_METHOD Dim etPriority As MAIL_PRIORITY Dim bReceipt As Boolean Const WM_CUT = &H300 Const WM_COPY = &H301 Const WM_PASTE = &H302 Const WM_CLEAR = &H303 Const WM_UNDO = &H304 Const mUndo = Const mCut = Const MCopy = Const mPaste = Const mDelete = Private SendOrReceive As Boolean Private FontNameIndex%, FontPointsIndex% Private ResetFocusAllowed As Integer, ButtonColor As Long Private MemoBoxBold%, MemoBoxItalic%, MemoBoxUL% Private m_ControlKey As Boolean Private AutoDis As Boolean Dim rsAddessBook As ADODB.Recordset Private Sub CpBlf1_Progress(Percent As Long) 100 Me.ProBar.Value = Percent End Sub Private Sub CpDes_Progress(Percent As Long) Me.ProBar.Value = Percent End Sub Private Sub CpGost_Progress(Percent As Long) Me.ProBar.Value = Percent End Sub Private Sub Form_Load() Dim Clt As Control SendOrReceive = True 'CurSendMailInfo.Email = "" ' -Set poSendMail = New clsSendMail ' -Set InetConn = New clsInternetCon 'Generate session key GenerateSSKey App.CompanyName MaskSend = False EncOrNo = True AutoDis = True If CompressOrNo = True Then cEncTypeToSend = "T" Else cEncTypeToSend = "S" End If Me.StatusBar1.Panels(1).Width = Me.Width / Me.StatusBar1.Panels(2).Width = Me.Width / For Each Clt In Me.Controls If TypeOf Clt Is TextBox Then Clt.Text = "" Next Clt Dim I As Integer For I% = To Screen.FontCount - MemoFontName.AddItem Screen.Fonts(I%) Next If FontNameIndex% > Screen.FontCount - Then FontNameIndex% = End If '* set selected 'MemoFontName.ListIndex = FontNameIndex% 101 MemoFontName.Text = "Arial" txtMsg.SelFontName = MemoFontName.Text For I% = To 72 Step MemoFontPoints.AddItem I% Next '* set selected 'MemoFontPoints.ListIndex = FontPointsIndex% MemoFontPoints.Text = 10 txtMsg.SelFontSize = MemoFontPoints Me.txtSender.Caption = CurUserInfo.Fullname Me.txtEMail.Caption = CurUserInfo.Email etPriority = NORMAL_PRIORITY End Sub Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) LbMouseMove 10 End Sub Private Sub Form_Resize() On Error Resume Next Dim I As Integer I = Me.ScaleMode Me.ScaleMode = Dim Clt As Control For Each Clt In Me.Controls If TypeOf Clt Is TextBox Then Clt.Width = Me.Width - Clt.Left - 150 Next Clt txtMsg.Width = Me.Width - txtMsg.Left - 150 Me.LstAtt.Width = Me.Width - txtMsg.Left - 150 txtMsg.Height = Me.Height - 3600 - Me.StatusBar1.Height - 60 StatusBar1.Panels(1).Width = Me.Width / - 500 StatusBar1.Panels(2).Width = Me.Width - StatusBar1.Panels(1).Width - 500 Me.ScaleMode = I MoveProgressBarIntoPanel ProBar, StatusBar1, Me.Refresh End Sub 3.3 Một số tính đạt đƣợc chƣơng trình Ngồi tính mã hóa, giải mã gửi thƣ mật chƣơng trình cịn có số tính nhƣ: - Hỗ trợ tính nhiều ngƣời dùng: Chƣơng trình cho phép nhiều ngƣời sử dụng máy, đảm bảo an tồn thơng tin cho cá nhân riêng rẽ 102 Khi dùng tài khoản riêng khơng thấy đƣợc thƣ mục ngƣời khác ngƣợc lại Chƣơng trình dùng kỹ thuật giấu thƣ mục (khơng phải mã) để khỏi chƣơng trình thƣ mục giấu khơng vào đƣợc, nhấn chuột vào hệ thống chạy chƣơng trình Control Panel Windows - Ngƣời sử dụng lựa chọn phƣơng thức mã: Mã sử dụng khóa, Mã sử dụng thẻ thơng minh (Smartcard) hay Mã dùng mật (password): Mã sử dụng khóa: Module tạo khóa cho phép ngƣời sử dụng trao đổi khóa với theo thỏa thuận (gửi File, thƣ mục hay gửi thƣ) sử dụng thuật toán mã đối xứng, yêu cầu ngƣời gửi ngƣời nhận có chung giữ bí mật khóa mã Đặc biệt ngƣời dùng lƣu khóa vào ổ đĩa ngồi phổ biến (qua cổng USB) giữ an tồn khóa Dùng mật để mã giải mã có nhiều nhƣợc điểm Nếu dùng mật dễ nhớ (thƣờng hay dùng ngày tháng năm sinh, tên ngƣời thân dễ bị công), ngƣợc lại dùng mật phức tạp ngƣời sử dụng dễ bị qn, lúc khơng thể lấy lại đƣợc số liệu ban đầu Mặt khác, mã hóa việc nhớ nhiều mật dễ gây nên nhầm lẫn Bộ tạo khóa quản lý khóa giúp khắc phục đƣợc vấn đề là: + Khơng cần phải nhớ mật khẩu, thay vào ngƣời dùng cần ghi vào thiết bị lƣu trữ cất (chẳng hạn nhƣ ổ đĩa mềm, ổ cắm ngoài, ) cần sử dụng lấy lại + Bộ tạo khóa tạo chuỗi khóa phức tạp nhiều so với dùng mật khẩu, nâng cao đƣợc độ an toàn liệu Sử dụng tạo khóa đơn giản, ngƣời dùng cần nhấn vào nút "tạo khóa" chƣơng trình tự động tạo chuỗi khóa sử dụng Ngun tắc tạo khóa chƣơng trình dựa hai yếu tố thời điểm (timestamp) tạo khóa nơi ngƣời tạo khóa (phân theo vùng nhƣ đánh địa IP) để đảm bảo khóa đƣợc tạo Sau tạo khóa ngƣời dùng phải nhớ lưu kết lại khơng giải mã đƣợc sau mã xong Để ghi kết nhấn vào nút "ghi" Ngƣời dùng dùng khóa đƣợc tạo sẵn để mã liệu, phải nhấn vào mục "đọc khóa" để xem khóa muốn sử dụng Mã sử dụng thẻ thông minh – Smartcard Khi ngƣời dùng chọn mã sử dụng thẻ thơng minh (nếu khơng có mục đích riêng nhƣ: Mã để mang không dùng thẻ, mã để gửi cho ngƣời khác ngồi nhóm, ) ngƣời sử dụng nên chọn tuỳ chọn Lúc chƣơng trình tự chọn lấy khóa riêng lƣu thẻ thực mã Nếu chọn chế độ mã để gửi cửa sổ hiển thị 103 danh sách thành viên nhóm để ngƣời dùng lựa chọn, lúc có ngƣời dùng ngƣời đƣợc chọn giải mã đƣợc mà thơi Mã dùng mật – password Khi lựa chọn phƣơng thức này, chƣơng trình yêu cầu ngƣời sử dụng vào mật với độ dài tối thiểu ký tự, sau vào xong chọn phím “OK” chƣơng trình tiến hành mã - Quản lý khóa: Chƣơng trình dùng trung tâm quản lý phân phối khóa, khóa tạo đảm bảo nhất, đƣợc quản lý theo ID phân phối cho ngƣời dùng - Sử dụng phƣơng pháp trao đổi khóa mã khóa cơng khai RSA 1024 bit gửi nhận thƣ: Khi trao đổi qua hệ thống thƣ chƣơng trình sử dụng khóa cơng khai RSA Cặp khóa Chung/Riêng ngƣời sử dụng trung tâm tạo khóa cấp phát Khóa riêng ngƣời đƣợc lƣu giữ an tồn thẻ thơng minh (Smart Card), khóa chung đƣợc trung tâm phân phối nhóm Khóa phiên đƣợc tạo mã hóa khóa cơng khai ngƣời nhận (khóa đƣợc cơng khai tồn thể thành viên nhóm) 3.4 Kết chƣơng Chƣơng nêu lên hai vấn đề an ninh hệ thống WLAN là: vấn đề chứng thực (chỉ ngƣời đƣợc phép kết nối đƣợc với hệ thống) vấn đề mã hố (giúp thơng tin trao đổi hệ thống khơng bị đánh cắp) Trong nhấn mạnh việc mã hoá liệu phần quan trọng việc bảo mật Trong chƣơng trình bày thực trạng yêu cầu đặt cần đảm bảo an ninh an tồn mạng WLAN ngành cơng an, phân tích đề xuất giải pháp đảm bảo an ninh mạng WLAN ngành cơng an Có thể coi giải pháp tổng thể áp dụng chuẩn bảo mật mới, bảo mật tất thành phần mạng WLAN Phần tập trung nghiên cứu, phát triển ứng dụng mã hóa đầu cuối cho phép ngƣời dùng trao đổi tin an toàn qua mạng WLAN đồng thời giúp cho ngƣời dùng bảo vệ số liệu lƣu trữ thiết bị lƣu trữ sử dụng thuật tốn mã mạnh thơng dụng hay thuật toán riêng ngƣời dùng cho vào (tùy chọn) góp phần giải yêu cầu nghiệp vụ đặt trao đổi tài liệu qua mạng WLAN ngành công an 104 KẾT LUẬN Các vấn đề đƣợc tìm hiểu luận văn Trong luận văn tìm hiểu vấn đề sau đây: - Trình bày tổng quan phát triển mạng không dây, công nghệ ứng dụng mạng không dây nhƣ kỹ thuật điều chế trải phổ Chúng ta hiểu cách khái quát chế hoạt động mạng WLAN, ƣu điểm nhƣ mơ hình hoạt động mạng WLAN Ngồi ra, tìm hiểu chuẩn 802.11 cho mạng WLAN, nắm đƣợc diễn trình thiết lập kết nối với hệ thống WLAN đơn giản (chƣa có chứng thực mã hóa) - Trình bày thực trạng an ninh an tồn mạng không dây, kiểu công mạng không dây, kỹ thuật mật mã ứng dụng để bảo mật mạng không dây số giải pháp cho việc đảm bảo an ninh an toàn cho mạng không dây mà cụ thể mạng WLAN nhƣ: Phƣơng pháp bảo mật dựa WEP, TKIP, AES-CCMP - Nghiên cứu, đề xuất giải pháp đảm bảo an ninh mạng WLAN ngành công an, từ yêu cầu nghiệp vụ đặt phát triển ứng dụng mã hóa đầu cuối cho phép ngƣời dùng trao đổi tin an toàn qua mạng WLAN đồng thời giúp cho ngƣời dùng bảo vệ số liệu lƣu trữ thiết bị lƣu trữ sử dụng thuật tốn mã mạnh thơng dụng hay thuật toán riêng ngƣời dùng cho vào (tùy chọn) góp phần đảm bảo bảo mật trao đổi tài liệu qua mạng WLAN ngành công an Luận văn đóng góp số kết sau: - Đã trình bày cách có hệ thống phát triển mạng không dây, nguy an ninh an tồn mạng khơng dây, phân tích, đánh giá số giải pháp đảm bảo an ninh an tồn cho mạng WLAN Từ giúp ngƣời sử dụng có nhìn tổng quan, đánh giá đƣợc ƣu nhƣợc điểm phƣơng pháp bảo mật WLAN đƣợc sử dụng - Từ kiến thức tìm hiểu ứng dụng đề xuất giải pháp, phát triển ứng dụng đảm bảo an ninh an toàn cho mạng WLAN ngành cơng an góp phần bảo mật thơng tin trao đổi qua mạng WLAN ngành đáp ứng yêu cầu đặt Hƣớng nghiên cứu - Tiếp tục nghiên cứu sâu vấn đề mã hóa mạng khơng dây - Nghiên cứu vấn đề chứng thực mạng không dây - Nghiên cứu mạng Wireless VLAN