Đồ án - Mã hóa thông tin và ứng dụng

8 1.7K 23
Đồ án - Mã hóa thông tin và ứng dụng

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

Thông tin tài liệu

Đồ án - Mã hóa thông tin và ứng dụng

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN CUỐI KỲ MÔN: MÃ HÓA THÔNG TIN ỨNG DỤNG Thực hiện: Nguyễn Trần Vũ – 0612576 Nguyễn Thanh Xuân – 0612587 GVHD: TS. Trần Minh Triết Thông tin nhóm tác giả: STT Họ tên MSSV Email Điện thoại 1 Nguyễn Trần Vũ 0612576 ngtrvu@gmail.com 0909 377 707 2 Nguyễn Thanh Xuân 0612587 alainnguyen000@gmail.com 0953 776 442 Chức năng đã thực hiện được: 1. Nội dung đồ án phần cơ bản: a. Quản lý tài khoản người dùng:  Đăng nhập: người dùng sử dụng email của mình như account nhập đúng passphrase của mình.  Đăng ký mới:  Chương trình cho phép người dùng đăng ký tạo mới một tài khoản. Người dùng phải nhập đầy đủ thông tin cá nhân bao gồm email, họ tên, ngày tháng năm sinh, điện thoại, địa chỉ các thông tin liên quan đến việc hóa, giải mã, ký tên, kiểm tra chữ ký như: chiều dài khóa, passphrase.  Passphrase có thể được chương trình tự động phát sinh dựa trên thuật toán tham khảo tại địa chỉ: http://www.obviex.com/Samples/Password.aspx  Cập nhật tài khoản:  Gồm 2 kiểu cập nhật: • Cập nhật passphrase không khởi tạo lại cặp khóa • Cập nhật passphrase tạo lại cặp khóa  Đăng xuất. b. Mã hóa giải mã:  hóa:  Chương trình cho phép người dùng đăng nhập, chọn các tập tin cần hóa (có thể hóa cùng lúc nhiều file).  Người dùng chọn email người nhận, chọn thuật toán để mã.  Nén nội dung:  Người dùng có thể nén các tập tin cần trước khi tiến hành hóa.  Giải mã:  Người nhận đăng nhập vào hệ thống để giải tập tin gửi cho mình. c. Ký kiểm tra chữ ký:  Ký tên:  Người dùng đăng nhập, chọn chức năng ký tên.  Người dùng chọn các tập tin cần ký (có thể ký nhiều tập tin cùng lúc).  Xác nhận passphrase  Chữ ký được tạo sẽ đi kèm với các file đã ký  Kiểm tra chữ ký:  Người dùng đăng nhập, chọn các file cần kiểm tra.  Chọn chức năng kiểm tra chữ ký (Có thể kiểm tra cùng lúc nhiều file). 2. Chức năng phần nâng cao: a. Giao diện quản lý hệ thống tập tin, thư mục:  Chương trình cho phép người dùng quản lý tập tin, thư mục với giao diện chức năng giống như windows explorer  Chương trình có khả năng truy cập quản lý tập tin, thư mục với đầy đủ các chức năng của context menu trên windows. d. Add-In Word 2007  Chương trình được add-in vào word 2007 với các chức năng: đăng nhập, hóa, giải mã, ký kiểm tra chữ ký toàn bộ nội dung file word người dùng đang soạn thảo. e. Add-In Outlook2007  Chương trình được add-In vào Outlook với các chức năng: đăng nhập, hóa, giải mã, ký tên, kiểm tra chữ ký.  Các file đã hóa file gốc + file chữ ký được attach vào email người gửi. f. Nén tập tin  Chương trình cho phép nén tập tin trước khi hóa. Các tập tin được chọn sẽ được mã hóa nén thành 1 tập tin duy nhất. g. Xử lý trên nhiều tập tin cùng lúc  Chương trình cho phép hóa, ký tên cùng lúc trên nhiều tập tin.  Khi hóa, chương trình sẽ merge tất cả các tập tin nén thành 1 file duy nhất để mã.  Khi ký tên, chương trình sẽ ký lần lượt trên các tập tin đã chọn h. Phim Demo: STT Tên tập tin Mô tả 1 MaHoa.avi Demo các hóa hàng loạt các tập tin, có sử dụng nén thành một tập tin hóa (*.mh). Có cho phép chọn thuật toán đối xứng, chọn các chế độ padding cipher. 2 GiaiMa.avi Demo cách giải một tập tin (*.mh) ra các tập tin ban đầu. 3 CapNhatTaiKhoan.avi Demo cách đổi passphrase. 4 ChuKyDienTu.avi Demo cách ký trên nhiều tập tin cùng lúc, xác nhận chữ ký trên nhiều tập tin cùng lúc. i. Hướng dẫn sử dụng: Các vấn đề giải pháp đã tìm hiểu xây dựng: 1. Giới thiệu tổng quan:  Dữ liệu thông tin người dùng được lưu trữ trong cơ sở dữ liệu Access, thông tin khóa cặp khóa được lưu trữ dưới dạng XML.  Tất cả các hàm xử lý về hóa sẽ được đóng gói thành một DLL sử dụng cho cho chương trình các ứng dụng add-in vào Word Outlook. 2. Quản lý người dùng:  Thông tin người dùng được lưu trữ vào cơ sở dữ liệu access gồm các thông tin các nhân các thông tin bảo mật khóa. Mỗi người dùng được định danh bằng email (ID – Primary Key). Passphrase của người dùng được hash kết hợp với username (là email của người dùng) Salt là một đoạn ngẫu nhiên. Thuật toán Hash sử dụng trong chương trình là MD5. Kết quả hash sẽ được lưu vào cơ sở dự liệu Access.  Với việc thêm Salt là username đoạn ngẩu nhiên nhằm tránh hacker có thể ra một đoạn thông tin điệp có kết quả hash giống với passphrase của người dùng, đồng thời với việc kết hợp username trong việc hash passphrase thì cho dù xem được cơ sở dữ liệu, thay thế các đoạn hash biết trước vẫn ko thể nào xâm phạm một cách bất hợp pháp vào các tài khoản người dùng.  Khi tạo tài khoản mới, hệ thống yêu cầu người dùng cung cấp passphrase độ dài khóa mong muốn (theo bội số của 64). Sử dụng passphrase của người dùng cung cấp (dữ liệu chưa được hash) để hóa private key của người dùng ghi vào tập tin XML chứ thông tin khóa tương ứng với người dùng đó. Thuật toán sử dụng trong việc hóa private key là thuật toán hóa đối xứng DES. Đường dẫn lưu tập tin sẽ được ghi nhận vào cơ sở dữ liệu.  Khi người dùng có yêu cầu thay đổi passphrase, hệ thống sẽ sử dụng passphrase cũ của người dùng để giải private key được lưu trong tập tin XML, sau đó sử dụng passphrase mới hóa private key rồi cập nhật dữ liệu đã trở lại vào tập tin XML.  Khi người dùng có nhu cầu muốn hủy cặp khóa đang sử dụng tạo khóa mới, hệ thống cho phép người dùng thực hiện lại quá trình tạo khóa như khi đi đăng ký tài khoản. Hệ thống sẽ yêu cầu người dùng phải nhập vào passphrase mới (có xác nhận passphrase cũ), sau đó hủy tập tin chứ thông tin khóa tạo lại khóa, cập nhật vào cơ sở dữ liệu. Khi đó tất cả các dữ liệu được hóa hay được ký bằng cặp khóa cũ sẽ không còn tác dụng.  Khi cần sử dụng cặp khóa, hệ thống yêu cầu người dùng cung cấp passphrase sử dụng passphrase đó như secrect key giải cipher data của private key đã được lưu trữ trong tập tin xml. Tương ứng với hóa, giải cũng sử dụng thuật toán đối xứng DES.  Import/Export tài khoản: hệ thống sử dụng thông tin khóa… 3. Mã hóa giải tập tin:  Tập tin hóa chứa các thông tin ở đầu file là: thuật toán hóa, các thông số của thuật toán đã (padding mode, cipher moder, ), ngày tháng, và dữ liệu.  Khi thao tác trên nhiều tập tin, các tập tin được chọn sẽ được nối thành một tập tin duy nhất, sau đó sẽ tiến hành hóa trên tập tin này. Nếu có yêu cầu được nén, tập tin sau khi hóa sẽ được tiến hành nén. 4. Chữ ký điện tử:  Khi có yêu cầu của người dùng tạo chữ ký điện tử lên các tập tin, hệ thống sẽ duyệt qua lần lượt các tập tin. Với mỗi tập tin, sử dụng thuật toán hash MD5 để tạo bản hash của tài liệu. Sau đó, yêu cầu người dùng cung cấp passphrase để giải private key. Với private key, sử dụng thuật toán RSA để ký lên hash của tài liệu. Với mỗi một tập tin, hệ thống sẽ tạo ra một tập tin chữ ký tương ứng (*.sig) cùng cấp thư mục với tập tin được chọn.  Khi tiến hành xác nhận chữ ký, hệ thông cho phép người dùng chọn một số tập tin 5. Các chức năng khác:  Dựa trên C# File Browser, có chỉnh sửa để phụ hợp với với chương trình. Tuy nhiên chi cho phép người dùng click chọn từng tập tin chưa thể double click được.  Add-on Word/Outlook:  Tạo các tập tin cài đặt Các thư viện tham khảo: 1. C# File Browser: Steven Roebert - CodeProject http://www.codeproject.com/KB/miscctrl/FileBrowser.aspx 2. Generate Password: How To: Generate a Random Password (C#/VB.NET) http://www.obviex.com/Samples/Password.aspx 3. Nén tập tin 4. Giao diện Ribon . 3. Mã hóa và giải mã tập tin:  Tập tin mã hóa chứa các thông tin ở đầu file là: thuật toán mã hóa, các thông số mã của thuật toán đã mã (padding mode,. tập tin xml. Tương ứng với mã hóa, giải mã cũng sử dụng thuật toán đối xứng DES.  Import/Export tài khoản: hệ thống sử dụng thông tin khóa… 3. Mã hóa

Ngày đăng: 12/03/2013, 14:06

Từ khóa liên quan

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

Tài liệu liên quan