Tải bản đầy đủ (.docx) (17 trang)

BÀI TẬP NHÓM MÔN AN TOÀN MẠNG MÁY TÍNH

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.29 MB, 17 trang )


z


ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG

BÀI TẬP NHÓM MÔN AN TOÀN MẠNG MÁY TÍNH



BÀI TẬP 2 – SECURITY MAIL
Giảng viên hướng dẫn

:

Nguyễn Duy

Sinh viên thực hiện

:

Nguyễn Thanh Tâm

MSSV : 12520909

Đặng Thái Hòa

MSSV : 12520596


MỤC LỤC
1.
2.

Giới thiệu về PGP
Cách thức hoạt động của giao thức PGP
a. Bảo mật


Xác thực
Bảo mật và xác thực
Nén
Các chùm khóa PGP
Quản lý khóa PGP
Demo
b.
c.
d.
e.
f.

3.

1. Giới thiệu về PGP
PGP là gì?

PGP (Pretty Good Privacy): là một phần mềm máy tính dùng để mật mã hóa dữ liệu. Phiên
bản PGP đầu tiên do Phil Zimmermann công bố vào năm 1991. Kể từ đó, phần mềm này đã co nhiều
cải tiến, và hiện nay, tập đoàn PGP cung cấp nhiều phần mềm dựa trên nền tảng này
Với mục tiêu ban đầu là phục vụ cho mã hóa thư điện tử, PGP hiện nayđã trở thành một giải

pháp mã hóa cho các công ty lớn, chính phủ cũng như các cá nhân


Các phần mềm dựa trên PGP được dùng để mã hóa và bảo vệ thông tin lưu trữ trên máy tính
xách tay, máy tính để bàn, máy chủ và trong quá trình trao đổi thông qua email, IM hoặc chuyển file.
Giao thức hoạt động của hệ thống này có ảnh hưởng lớn và trở thành một trong hai tiêu chuẩn mã hóa
(tiêu chuẩn còn lại là S/MIME).
2. Cách thức hoạt động của giao thức PGP

PGP sử dụng kết hợp mật mã hóa khóa công khai và thuật toán khóa đối xứng.
a. Bảo mật
-

Đầu tiên người sử dụng phải có một cặp khóa: Khóa công khai và khóa bí mật. người nhận gửi
khóa công khai cho người gửi.

-

Người gửi tạo tin nhắn và một số ngẫu nhiên 128 bit làm khóa phiên. Người gửi mã hóa tin nhắn sử
dụng DES, CAST/IDEA hoặc 3DES với khóa phiên đó.

-

Người gửi sử dụng RSA với khóa công khai của người nhận để mã hóa khóa phiên, tin nhắn mã
hóa và khóa phiên được gửi cho người nhận.

Người nhận sử dụng RSA và khóa bí mật để giải mã, khôi phục khóa phiên và sử dụng khóa phiên để giải
mã tin nhắn.
b. Xác thực
-


Đầu tiên, người gửi tạo tin nhắn,sử dụng SHA-1 để sinh băm 160 bit của tin nhắn.

-

Người gửi sử dụng RSA với khóa bí mật của mình để ký trên băm và gửi cho người nhận.

-

Người nhận sử dụng RSA với khóa công khai của người gửi để giải mã và khôi phục băm. Người
nhận kiểm tra tin nhắn nhận được với băm của nó và so sánh với băm đã được giải mã.

Nếu hai giá trị này giống nhau thì có thể khẳng định là văn bản chưa bị thay đổi kể từ khi gửi và người
gửi đúng là người sở hữu khóa bí mật tương ứng.
c. Bảo mật và xác thực

Người gửi tạo chữ ký và đính vào tin nhắn, sau đó mã hóa cả mẫu tin và chữ ký rồi gửi cho người
nhận.
d. Nén

Mặc định PGP sẽ nén tin nhắn sau khi ký nhưng trước khi mã hóa, PGP sử dụng thuật toán nén Zip
để nén tin nhắn
e. Các chùm khóa PGP

Mỗi người sử dụng PGP sẽ có một cặp chùm khóa:
+Chùm khóa công khai chứa mọi khóa công khai của những người sử dụng PGP khác mà người đó
biết và được đánh số bằng định danh khóa (ID key)
+Chùm khóa riêng chứa các cặp khóa công khai/khóa bí mật của người đó được đánh số bởi định
danh khóa và mã của khóa lấy từ giai đoạn duyệt hàm băm.
f.


Quản lý khóa PGP


Trong quá trình mã hóa cũng như kiểm tra chữ ký, một điều vô cùng quan trọng là khóa công khai
được sử dụng thực sự thuộc về người được cho là sở hữu của nó. PGP hỗ trợ cơ chế phân phối khóa công
khai và xác thực khóa đó có thuộc về chủ sở hữu hay không.
Cụ thể PGP cung cấp các chữ ký tin cậy cho người sử dụng để có thể tạo ra các nhà cung cấp CA.
mỗi người sử dụng PGP có một CA của mình, người sử dụng có thể tạo ra các khóa công khai để phân
phối cho người khác và các khóa này được đảm bảo là tin cậy, nhờ vậy người đó có thể ký khóa cho người
khác, đồng thời cũng có thể thu hồi khóa đó nếu biết khóa đó bị mất hoặc vô hiệu .
3. Demo
− 2 máy ảo chạy Windows XP
− 1 máy ảo chạy Windows Server 2003
− Chương trình Mail Client Thunderbird, chương trình quản lý khóa Gnu4win
+ Tải Mail Client Thunderbird tại: />+ Tải Gnu4win tại: />− Chương trình Mail Server MDaemon
+ Tải MDaemon tại: />
Thực hiện:
Sau khi tải về các chương trình trên, ta tiến hành cài đặt Mail Client Thunderbird và Gnu4win trên hai
máy chạy Windows XP.
Cài đặt Mail Server MDaemon trên Windows Server 2003
Tiếp theo, cài đặt add-ons Enigmail cho Thunderbird, ta vào Tools -> Add-ons

Tab Add-ons Manager hiện ra ta tìm từ khóa Enigmail sau đó tải về.


-

Tạo 2 email user1 và user2 bằng MDaemon


Mở Thunderbird từ 2 máy ảo sau đó lần lượt đăng nhập 2 email user1, user2


-

Tạo Public Key


Tại máy user1 ta tạo public key, vào Enigmail → Key management cửa sổ Enigmail Key Management
hiện ra.

Vào Generate → New Key Pair


Tại đây ta nhập mật khẩu vào khung Passphrase, chọn thời hạn cho key tại Key expires, cuối cùng nhấn
Generate key để tạo key, chọn tiếp Generate Certificate sau đó chọn nơi để Save key và nhấn Save

Chương trình sẽ hiện ra khung nhập Passphrase để xác nhận.


Tương tự ta tạo public key ở máy user2.
-

Gửi Public Key

Sau khi tạo public key xong, ta tiến hành dùng 2 email gửi mail đính kèm key cho nhau.
Tại user1, cửa sổ Enigmail Key Management hiện ra thông tin về public key đã tạo. Click phải chuột
vào thông tin key chọn Send Public Key by Email

Sau đó điền thông tin người nhận, chủ đề, nội dung thư và nhấn Send để gửi



Tại user2 ta làm tương tự để gửi public key, đồng thời nhận key từ user1 gửi đến.


-

Import Public Key

Sau khi 2 user trao đổi public key cho nhau ta tiến hành Import key trên cả 2 user.
Từ cửa sổ Enigmail Key Management vào File → Import Keys From File

Chọn key vừa nhận được nhấn Open


Thông báo khi Import thành công

-

Tạo chữ kí điện tử

Kế tiếp ta tạo chữ kí điện tử cho key vừa Import trên 2 user
Tại cửa sổ Enigmail Key Management ta Click phải chuột vào key chọn Sign Key


Chọn I have done very careful checking, sau đó chọn OK

-

Mã hóa


Để mã hóa mail gửi đi bằng public key ta chọn Write để tạo thư, điền thông tin người nhận, chủ đề, nội
dung thư … sau đó ta nhấp vào This message will be encrypted


Cửa sổ hiện lên ta tick dấu vào dòng
Encrypt Message: để mã hóa thư gửi đi
Sign Message: để dùng chữ kí điện tử
Sau đó nhấn OK

Sau đó ta chọn Send để gửi thư đi
Tại user nhận thư để đọc được thư gửi đến thì ta cần phải nhập mã Passphare để giải mã thư


Thư sau khi giải mã thành công sẽ có dòng màu xanh thông báo



×