Tìm hiểu và xây dựng chương trình thực hiện các giải thuật mã hóa trên mạng

16 846 2
Tìm hiểu và xây dựng chương trình thực hiện các giải thuật mã hóa trên mạng

Đ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

Tìm hiểu và xây dựng chương trình thực hiện các giải thuật mã hóa trên mạng

TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN MẠNG TRUYỀN THÔNG  ĐỒ ÁN MÔN HỌC LẬP TRÌNH MẠNG ĐỀ TÀI: Tìm hiểu xây dựng chương trình thực hiện các giải thuật hóa trên mạng Sinh viên thực hiện : Phan Vũ Phương 10T2LT Đặng Thị Mỹ Vân 10T2LT Nhóm : 11B Cán bộ hướng dẫn : TS. Nguyễn Tấn Khôi 2 Đồ án Lập trình mạng Đà Nẵng, năm 2011 Phan Vũ Phương - Đặng Thị Mỹ Vân Tìm hiểu xây dựng chương trình thực hiện các giải thuật hóa trên mạng 3 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Phan Vũ Phương - Đặng Thị Mỹ Vân 4 Đồ án Lập trình mạng NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Phan Vũ Phương - Đặng Thị Mỹ Vân Tìm hiểu xây dựng chương trình thực hiện các giải thuật hóa trên mạng 5 MỤC LỤC TỔNG QUAN VỀ ĐỀ TÀI .7 a. Bối cảnh lý do thực hiện đề tài .7 b. Mục tiêu của đề tài 7 c. Phương pháp triển khai đề tài .7 d. Kết cấu của đồ án 7 Chương 1. CƠ SỞ LÝ THUYẾT .9 1. Giới thiệu .9 b. Các thuộc tính yêu cầu 9 c. Kĩ thuật hoá chung .9 d. Các giải thuật hóa: .11 i. Giải thuật MD5 11 1. Giới thiệu giải thuật MD5 11 2. Thuật toán hóa MD5 12 3. Các phương pháp crack MD5 13 ii. Giải thuật Triple-DES (3DES) .14 a. Giới thiệu giải thuật 3DES 14 2. Thuật toán hóa 3DES .14 3. Thuật toán giải .15 Chương 2. THIẾT KẾ XÂY DỰNG CHƯƠNG TRÌNH 17 1. Mô tả chức năng 17 b. Phân tích các chức năng 17 c. Mô hình hệ thống .17 Chương 3. TRIỂN KHAI ĐÁNH GIÁ KẾT QUẢ 18 1. Môi trường triển khai 18 2. Kết quả các chức năng của chương trình 18 KẾT LUẬN HƯỚNG PHÁT TRIỂN 19 Phan Vũ Phương - Đặng Thị Mỹ Vân 6 Đồ án Lập trình mạng LỜI MỞ ĐẦU Ngày nay, nhu cầu bảo mật thông tin trên mạng là một nhu cầu cấp thiết. Cùng với sự phát triển của Internet, việc xâm nhập bất hợp pháp các thông tin mật, các chương trình dữ liệu quan trọng, phá hoại thông qua Internet cũng gia tăng về số lượng, loại hình kỹ thuật. Do đó, song song với việc phát triển khai thác các dịch vụ trên Internet, vấn đề đảm bảo an ninh trên mạng là một vẫn đề rất quan trọng. Các nội dung thông tin lưu trữ lưu truyền trên mạng luôn là đối tượng để tấn công, do người sử dụng luôn truy nhập từ xa, thông tin xác thực người sử dụng như mật khẩu, bí danh luôn phải truyền đi trên mạng. Những kẻ xâm nhập tìm mọi cách giành được những thông tin này từ xa truy nhập vào hệ thống. Càng truy nhập với tư cách người dùng có quyền điều hành càng cao thì khả năng phá hoại càng lớn. Để tránh những rủi ro có thể xảy ra đảm bảo việc truyền dữ liệu được an toàn hơn, vừa đảm bảo thông tin luôn kết nối, vừa đảm bảo yếu tố bảo mật của thông tin thì phương pháp tốt nhất là hoá thông tin. Báo cáo sau đây trình bày về đề tài: “Tìm hiểu xây dựng chương trình thực hiện các giải thuật hóa trên mạng”. Trong khuôn khổ báo cáo, chúng em thực hiện tìm hiểu về các giải thuật hóa được ứng dụng phổ biến trên Internet hiện nay, xây dựng được một ứng dụng hóa minh họa. Phan Vũ Phương - Đặng Thị Mỹ Vân Tìm hiểu xây dựng chương trình thực hiện các giải thuật hóa trên mạng 7 TỔNG QUAN VỀ ĐỀ TÀI a. Bối cảnh lý do thực hiện đề tài Với sự phát triển của Internet như hiện nay, thông tin trên mạng mang nhiều nguy cơ bị tấn công, xâm nhập bất hợp pháp. Việc bảo mật thông tin trên môi trường Internet là rất cấp thiết. Để vừa đảm bảo thông tin luôn kết nối, vừa đảm bảo yếu tố bảo mật của thông tin thì phương pháp tốt nhất là hoá thông tin. hóa giúp đảm bảo thông tin không thể bị truy cập bởi đối tượng thứ ba, loại trừ việc nghe trộm những thông tin “nhạy cảm” khi nó được truyền qua Internet, dữ liệu phải được hoá để không thể bị đọc được bởi những người khác ngoài người gửi người nhận. Chính sự quan trọng của hóa, nên chúng em chọn đề tài này để tìm hiểu rõ hơn về các giải thuật hóa hiện nay cơ chế của việc hóa thông tin trên mạng. b. Mục tiêu của đề tài Đề tài nhằm tìm hiểu được các giải thuật hóa MD5, 3DES,… Qua đó, xây dựng chương trình ứng dụng lập trình socket cho phép người dùng chọn một phương pháp hóa, gửi nội dung đã hóa qua môi trường mạng đến máy server, tùy phương pháp hóa, máy server tiến hành giải hiển thị lại nội dung đã được hóa ở phía client. c. Phương pháp triển khai đề tài - Tìm hiểu các kỹ thuật hóa, giải thuật hóa MD5, 3DES,… - Lập trình socket Client - Server - Thiết kế lập trình ứng dụng, xây dựng chương trình hóa trong mô hình client – server d. Kết cấu của đồ án Đồ án gồm các phần: Phan Vũ Phương - Đặng Thị Mỹ Vân 8 Đồ án Lập trình mạng 1. Cơ sở lý thuyết về các giải thuật hóa 2. Thiết kế xây dựng chương trình hóa 3. Kết quả thực hiện Phan Vũ Phương - Đặng Thị Mỹ Vân Tìm hiểu xây dựng chương trình thực hiện các giải thuật hóa trên mạng 9 Chương 1. CƠ SỞ LÝ THUYẾT 1. Giới thiệu hoá là một tiến trình biến đổi thông tin, sử dụng các thuật toán nhằm mục đích không cho người khác có thể nắm bắt được nếu thiếu một vốn thông số nhất định (key) để dịch ngược. Đi kèm với hoágiải mã. Có rất nhiều loại thuật toán hoá cho dữ liệu máy tính, chúng được gọi tên theo thuật toán có thể so sánh trực tiếp với nhau, ví dụ hoá 128-bit, Triple- DES, 2048-bit RSA,… hóa với mục đích làm cho dữ liệu không thể đọc được bởi bất cứ ai, ngoại trừ những ai được cho phép đọc. hóa sử dụng thuật toán khóa để biến đổi dữ liệu từ hình thức đơn giản rõ ràng (plain hay cleartext), làm biến dữ liệu sang hình tức mật vô nghĩa (code hay ciphertext). Chỉ ai có thông tin giải thì mới giải được đọc được dữ liệu. b. Các thuộc tính yêu cầu Mật hóa được sử dụng phổ biến để đảm bảo an toàn cho thông tin liên lạc. Các thuộc tính được yêu cầu là: - Bí mật: Chỉ có người nhận đã xác thực có thể lấy ra được nội dung của thông tin chứa đựng trong dạng đã mật hóa của nó. Nói khác đi, nó không thể cho phép thu lượm được bất kỳ thông tin đáng kể nào về nội dung của thông điệp. - Nguyên vẹn: Người nhận cần có khả năng xác định được thông tin có bị thay đổi trong quá trình truyền thông hay không. - Xác thực: Người nhận cần có khả năng xác định người gửi kiểm tra xem người gửi đó có thực sự gửi thông tin đi hay không. c. Kĩ thuật hoá chung Cácthuật hoá đều sử dụng các khoá (key) làm tác nhân thực hiện việc khoá mã, thông thường khoá được thể hiện bằng độ dài của khoá tính theo bit, số Phan Vũ Phương - Đặng Thị Mỹ Vân 10 Đồ án Lập trình mạng bits càng lớn thì tính bảo mật của phép hoá càng cao. Thông thường, để an toàn thì các khoá thường có độ dài 128bits, phương pháp tấn công vét cạn sẽ phải dò là 2128 trường hợp. Có 3 kĩ thuật hoá chính: - Symmetric Encryption (Mã hóa đối xứng): Là phương pháp sử dụng cùng một khóa để bảo mật dữ liệu, khóa này vừa dùng để hoá giải dữ liệu luôn. Vì vậy khóa này phải được chuyển một an toàn giữa hai đối tượng giao tiếp, vì ai có được khóa này thì hoàn toàn có thể giài được thông tin. Khóa có thể được cấu hình trong software hoặc hardware. Thuật toán hóa đối xứng nhìn chung thực hiện nhanh nhưng an toàn chưa cao vì có thể bị lộ khóa. Nên thuật toán này thường dùng cho việc hóa dữ liệu. Ngày nay có 3 thuật toán hóa đối xứng được sử dụng nhiều: DES, 3DES, AES. - Asymmetric Encryption (Mã hóa bất đối xứng): Là phương pháp sử dụng hai khóa: public key private key. Trong đó public key được cho tất cả thiết bị khác, còn private key thì giữ bí mật cho riêng mỗi thiết bị. Hai khóa này là một cặp, vì chỉ có private key mới giải được thông tin do public key hóa. Thuật toán hóa bất đối xứng rất an toàn nhưng xử lý chậm, do đó thuật toán này thường dùng cho chứng nhận số quản lý khóa. Sử dụng 2 thuật toán chính đó là: RSA Diffiel-Hellman(DH), khi thiết lập một IPsec tunnel mới thì các thiết bị Cisco sử dụng hai thuật toán này. RSA dùng để chứng thực thiết bị ở xa, còn DH dùng để trao đổi khóa để phục vụ cho việc hóa. - hóa một chiều (hàm băm): là phương pháp chuỗi hoá không thể bị dịch ngược lại, mỗi chuỗi đã hoá chỉ có thể là ánh xạ của duy nhất một chuỗi chưa hoá nhập vào. Các thuật toán hoá một chiều được dùng nhiều trong quá trình xác thực, lưu mật khẩu, thông tin thẻ tín dụng… Nền tảng của loại này có thể xếp vào cùng loại với hoá đối xứng. Các thuật toán nổi tiếng được sử dụng nhiều nhất là MD-5 (Message-Digest algorithm 5) các thuật toán SHA (SHA-1, SHA-2). Mọi ứng dụng từ các forum Phan Vũ Phương - Đặng Thị Mỹ Vân [...]... với khóa thứ 3, nghĩa là 3DES sử dụng một khóa 168-bit, nên đó an toàn hơn tất nhiên là việc xử lý sẽ chậm hơn DES 2 Thuật toán hóa 3DES 3DES thực ra là hóa cùng 1 thông tin qua 3 lần hóa DES với 3 khóa khác nhau Do đó, chiều dài khóa sẽ lớn hơn an toàn sẽ cao hơn so với DES Phan Vũ Phương - Đặng Thị Mỹ Vân Tìm hiểu xây dựng chương trình thực hiện các giải thuật hóa trên mạng. .. hàm một chiều F, phép cộng module phép xoay trái,… Phan Vũ Phương - Đặng Thị Mỹ Vân Tìm hiểu xây dựng chương trình thực hiện các giải thuật hóa trên mạng 13 3 Các phương pháp crack MD5 MD5 là giải thuật hóa một chiều nên việc giải chỉ có thể dựa vào việc dò tìm từ cơ sở dữ liệu Crack MD5 có các phương pháp sau: • Dictionary: là một kỹ thuật tấn công bằng cách thử nghiệm những trường hợp.. .Tìm hiểu xây dựng chương trình thực hiện các giải thuật hóa trên mạng 11 như IPB, VBB cho đến Yahoo! đều ứng dụng trong việc hoá mật khẩu của users d Các giải thuật hóa: i Giải thuật MD5 1 Giới thiệu giải thuật MD5 MD5 (viết tắt của tiếng Anh Message-Digest algorithm 5, giải thuật phân loại tin nhắn 5) là một hàm băm mật được sử dụng phổ biến với giá... thuật hóa trên mạng 15 Ta có EK(I) DK(I) là tượng trưng cho wá trình hoá vào giải I với khoá là K Mỗi hệ thống hoá hay giải triple Des là 1 hợp các quá trình giả hoá trên Des Quá trình hoá Triple Des, ta hoá I thành O: O = EK3(DK2(EK1(I))) hay I → DES EK1 ->DES DK2 ->DES EK3 -> O 3 Thuật toán giải Quá trình giải Triple Des, ta giải O thành I: I = DK1(EK2(DK3(O)))... ii Giải thuật Triple-DES (3DES) a Giới thiệu giải thuật 3DES Triple Data Encryption Standard (3DES): là DES được bổ sung thêm một số tính năng cao cấp, nó thực hiện hóa dữ liệu thông qua việc xử lý mỗi block 3 lần mỗi lần với một khóa khác nhau.Trước hết nó sẽ dùng một khóa để hóa plain-text thành ciphertext, sau đó lại tiếp tục dùng một khóa khác nữa để hóa ciphertext, tiếp tục hóa. .. được hoá bằng Triple Des có thể được giải bằng Des 1 bản rõ được hoá bằng Des có thể được giải bằng Triple Des Phan Vũ Phương - Đặng Thị Mỹ Vân 16 Đồ án Lập trình mạng Triple Des cũng có các chế độ ECB, CBC, CFB ,OFB Về cơ bản cũng giống Des, chỉ việc thay các hàm hoá của Des thành Triple Des Với khoá K1=K2=K3 thì TECB, TCBC, TCFB TOFB cũng tương ứng với các chế độ ECB, CBC, CFB và. .. thông điệp Thuật toán chính của MD5 hoạt động trên một bộ 128 bit Chia nhỏ nó ra thành 4 từ 32 bit, kí hiệu là A,B,C D Các giá trị này là các hằng số cố định Sau đó thuật toán chính sẽ luân phiên hoạt động trên các khối 512 bit Mỗi khối sẽ phối hợp với một bộ Quá trình xử lý một khối thông điệp bao gồm 4 bước tương tự nhau, gọi là vòng (“round”) Mỗi vòng lại gồm 16 quá trình tương tự nhau dựa trên hàm... dụng MD5 để kiểm tra các gói nó phân phối, trong khi hệ điều hành Windows sử dụng phần mềm của hãng thứ ba 2/ MD5 được dùng để hóa mật khẩu Mục đích của việc hóa này là biến đổi một chuổi mật khẩu thành một đoạn khác, sao cho từ đoạn đó không thể nào lần trở lại mật khẩu Có nghĩa là việc giải là không thể hoặc phải mất một khoãng thời gian vô tận (đủ để làm nản lòng các hacker) Phan Vũ... password luôn thành công, chủ yếu dựa vào sức mạnh tính toán của máy tính: thử mọi trường Phan Vũ Phương - Đặng Thị Mỹ Vân 14 Đồ án Lập trình mạng hợp xảy ra (brute force) bằng cách duyệt qua tất cả các hash password có thể có được tạo nên từ bảng ký tự Hoạt động theo phương thức: tạo ra tất cả các key có thể có so sánh với key input Có rất nhiều công cụ thực hiện crack md5 bằng phương pháp brute... được sử dụng trong việc đảo chiều các hàm băm mật mã, thường được sử dụng rộng rải trong việc crack các mật đã được băm Thường được sử dụng để khôi phục các mật khẩu bằng các ký tự thô (plaintext) với một độ dài nhất định có thể chứa thêm một số các ký tự đặc biệt Đó là một hình thức cân bằng thời gian bộ nhớ, sử dụng CPU ít hơn nhưng chi phí lưu trữ nhiều hơn ngược lại Có nhiều công cụ sử

Ngày đăng: 27/04/2013, 09:13

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan