Có rất nhiều cách thức để bảo vệ thông tin trên đường truyền, nhiềugiải pháp được đề xuất như: sử dụng mật khẩu password, mã hóa dữ liệu, haysteganography giấu sự tồn tại của dữ liệu… Cù
Trang 1ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐÀO TẠO SAU ĐẠI HỌC
BÁO CÁO MÔN HỌC
KỸ THUẬT MẠNG NÂNG CAO
Bảo mật thư điện tử
Giảng viên:
Học viên:
Lớp 16AKTVT
Hà Nội, tháng 1/2018
Trang 3MỤC LỤC
Trang
DANH MỤC HÌNH VẼ 4
MỞ ĐẦU 5
CHƯƠNG 1: GIAO THỨC PGP 7
1.1 Giới thiệu 7
1.1.1.Giới thiệu chung về giao thức PGP 7
1.1.2.Mục đích sử dụng PGP 7
1.1.3 Phương thức hoạt động của PGP 7
1.2 Nội Dung 9
1.2.1.Nhận thực 9
1.2.2.Bảo mật dữ liệu 10
1.2.3.Kết hợp giữa nhận thực và bảo mật dữ liệu 11
1.2.4.Nén dữ liệu 12
1.2.5.Tương thích e-mail 12
1.2.6.Phân đoạn 13
1.2.7.Các dịch vụ của PGP 13
CHƯƠNG 2: GIAO THỨC S/MIME 15
2.1 Tổng quan 15
2.1.1 Giới thiệu 15
2.1.2.Chức năng 16
2.1.3.Các thuật toán mật mã 16
2.1.4 Xử lý chứng chỉ S/MIME 16
2.2 Nguyên lý hoạt động của S/MIME 17
CHƯƠNG 3: GIAO THỨC DKIM 18
Trang 43.1 Tổng quan 18
3.2 Cơ chế hoạt động 18
3.3 Ưu, nhược điểm của DKIM 19
LỜI CẢM ƠN 21
Trang 5DANH MỤC HÌNH VẼ
Hình 1.1 Quá trình nhận thực 10
Hình 1.2 Bảo mật dữ liệu 11
Hình 1.3 Quá trình mã hóa, giải mã 11
Hình 1.4 Mã hoá dữ liệu nhị phân thành khuôn dạng radix-64 12
Hình 1.5 Mã hoá radix-64 13
Hình 1.6 Sơ đồ phát và thu một abnr tin PGP 14
Hình 2.1 Quá trình bảo vệ E-mail bằng S/MIME bên gửi 17
Hình 2.2 Quá trình nhận E-mail bằng S/MIME bên nhận 17
Hình 3.1 Cơ chế hoạt động của DKIM 18
Hình 3.2 Hoạt động của khóa bí mật và khóa công khai của DKIM 19
Hình 3.3 Cách thức DKIM chặn thư rác, thư lừa đảo 20
Trang 6MỞ ĐẦU
Ngày nay, mạng Internet đã trở thành nền tảng chính cho sự trao đổi thông tin trêntoàn cầu Có thể thấy một cách rõ ràng là Internet đã và đang tác động lên nhiều mặtcủa đời sống chúng ta từ việc tìm kiếm thông tin, trao đổi dữ liệu đến việc hoạt độngthương mại, học tập nghiên cứu và làm việc trực tuyến Nhờ Internet mà việc trao đổithông tin cũng ngày càng tiện lợi, nhanh chóng hơn, khái niệm thư điện tử (email) cũng
không còn mấy xa lạ với mọi người Là một dịch vụ phổ biến nhất trên Internet, thư điện tử giúp mọi người sử dụng máy tính kết nối Internet đều có thể trao đổi thông tin với nhau Tóm lại mọi giao dịch, trao đổi đều có thể thông qua thư điện tử.
Tuy nhiên trên môi trường truyền thông này, ngoài mặt tích cực Internet cũng tiềm
ẩn những tiêu cực của nó đối với vấn đề bảo vệ thông tin
Do đó, những yêu cầu được đặt ra đối với việc trao đổi thông tin trên mạng:
Bảo mật tuyệt đối thông tin trong giao dịch
Đảm bảo tính toàn vẹn của thông tin
Chứng thực được tính đúng đắn về pháp lí của thực thể tham gia trao đổi thôngtin
Đảm bảo thực thể không thể phủ nhận hay chối bỏ trách nhiệm của họ về nhữnghoạt động giao dịch trên Internet
Từ thực tế đó cần có phương pháp bảo mật thông tin nhằm cải thiện an toàn trênInternet Việc tìm ra giải pháp bảo mật dữ liệu, cũng như việc chứng nhận quyền sở hữucủa cá nhân là một vấn đề luôn luôn mới Bảo mật phải được nghiên cứu và cải tiến đểtheo kịp sự phát triển không ngừng của cuộc sống
Làm sao để bảo mật dữ liệu?
Làm sao để tin tức truyền đi không bị mất mát hay bị đánh tráo?
Làm sao để người nhận biết được thông tin mà họ nhận được có chính xác hay không? Đã bị thay đổi gì chưa?
Trang 7 Làm sao để biết được thông tin này do ai gửi đến? thuộc quyền sở hữu của ai?
Những câu hỏi được đặt ra là một thách thức rất lớn đối với những người nghiêncứu về bảo mật Có rất nhiều cách thức để bảo vệ thông tin trên đường truyền, nhiềugiải pháp được đề xuất như: sử dụng mật khẩu (password), mã hóa dữ liệu, haysteganography (giấu sự tồn tại của dữ liệu)… Cùng với sự phát triển của các biện phápbảo mật ngày càng phức tạp, thì các hình thức tấn công ngày càng tinh vi hơn Do đóvấn đề là làm sao đưa ra một giải pháp thích hợp và có hiệu quả theo thời gian và sựphát triển mạnh mẽ của khoa học kỹ thuật
Trong khuôn khổ của bản báo cáo này, sẽ trình bày về Các phương pháp
ứng dụng để bảo mật thư điện tử.
CHƯƠNG 1: GIAO THỨC PGP
Trang 81.1. Giới thiệu
1.1.1. Giới thiệu chung về giao thức PGP
PGP là viết tắt của từ Pretty Good Privacy (Bảo mật rất mạnh) Mã hóa PGP
là một phần mềm máy tính dùng để mật mã hóa dữ liệu và xác thực Phiên bảnPGP đầu tiên do Phil Zimmermann được công bố vào năm 1991 Kể từ đó, phầnmềm này đã có nhiều cải tiến và hiện nay tập đoàn PGP cung cấp phần mềm dựatrên nền tảng này
1.1.2. Mục đích sử dụng PGP
Mục đích sử dụng PGP là phục vụ cho việc mã hóa thư điện tử, phần mềm mãnguồn mở 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 ứng dụng của PGP được dùng để mã hóa 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 đổ email hoặc chuyển file, chữ ký số…
1.1.3. Phương thức hoạt động của 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ứngcộng thêm với hệ thống xác lập mối quan hệ giữa khóa công khai và chỉ danhngười dùng (ID) Phiên bản đầu tiên của hệ thống này thường được biết dưới tênmạng lưới tín nhiệm dự trên các mối quan hệ ngang hàng (khác với hệ thống X.509với cấu trúc cây dựa vào nhà cung cấp chứng thực số) Các phiên bản PGP về saudựa trên các kiến trúc tương tự như hạ tầng khóa công khai
PGP sử dụng thuật toán mã hóa khóa bất đối xứng Trong hệ thống này, người
sử dụng đầu tiên phải có một cặp khóa: Khóa công khai và khóa bí mật Người gửi
sử dụng khóa công khai của người nhận để mã hóa một khóa chung (còn được gọi
là khóa phiên) dùng trong các thuật toán mật mã hóa khóa đối xứng Khóa phiênnày chính là chìa khóa để mật mã hóa các thông tin gửi qua lại trong các phiêngiao dịch Có rất là nhiều khóa công khai của những người sử dụng PGP được lưutrữ trên mác máy chủ khóa PGP trên khắp thế giới
Trang 9Một điều vô cùng quan trọng nữa là để phát hiện thông điệp có bị thay đổihoặc giả mạo người gửi Để thực hiện mục tiêu trên thì người gửi phải ký văn bảnvới thuật toán RSA hoặc DSA Đầu tiên, PGP tính giá trị hàm băm của thông điệprồi tạo ra chữ ký số với khóa bí mật của người gửi Khi nhận được văn bản, ngườinhận tính lại giá trị hàm băm của văn bản đó đồng thời giải mã chữ ký số bằngkhóa công khai của người gửi 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
Trong quá trình mã hóa cũng như kiểm tra chữ ký, một điều vô cùng quantrọng là khóa công khai được sử dụng thực sự thuộc về người được cho là sở hữucủa nó Nếu chỉ đơn giản download một khóa công khai từ đâu đó sẽ không đảmbảo được điều này PGP thực hiện việc phân phối khóa thông qua thực chứng sốđược tạo nên bởi những kỹ thuật mật mã sao cho việc sửa đổi có thể dễ dàng bịphát hiện Tuy nhiên chỉ điều này thôi thì vẫn chưa đủ vì nó chỉ ngăn chặn đượcviệc sửa đổi sau khi chứng thực được tạo ra Người dùng còn cần phải trang bị khảnăng xem xét khóa công khai có thực sự thuộc về người chủ sở hữu hay không Từphiên bản đầu tiên PGP đã có một cơ chế hỗ trợ điều này được gọi là mạng lướitín nhiệm Mỗi khóa công khai đều có thể được một bên thứ 3 xác nhận
OpenPGP cung cấp các chữ ký tin cậy có thể được sử dụng để tạo ra các nhàcung cấp chứng thực số (CA) Một chữ ký tin cậy có thể chứng tỏ rằng một khóathực sự thuộc về một người sử dụng và người đó đáng tin cậy để ký xác nhận mộtkhóa của mức thấp hơn Một chữ ký có mức 0 tương đương với chữ ký trong môhình mạng lưới tín nhiệm Chữ ký ở mức 1 tương đương với chữ ký của một CA vì
nó có khả năng xác nhận cho một số lượng không hạn chế chữ ký mức 0 Chữ ký ởmức 2 tương tự như chữ ký trong danh sách các CA mặc định rong InternetExplorer; nó cho phép người chủ tạo ra các CA khác
PGP cũng được thiết kế với khả năng hủy bỏ hoặc thu hồi các chứng thực cókhả năng đã bị vô hiệu hóa Điều này tương đương với danh sách thực chứng bị
Trang 10thu hồi của mô hình hạ tầng khóa công khai Các phiên bản PGP gần đây cũng hỗtrợ tính năng hạn của thực chứng.
– Tương thích với các hệ thống thư điện tử (E-mail compatibility)
– Phân đoạn (Segmentation)
Trừ hai dịch vụ Nhận thực và Bảo mật dữ liệu, các dịch vụ còn lại đều trong suốtvới người dùng
1.2.1. Nhận thực
1 Người gửi tạo ra bản tin
2 Dùng thuật toán hàm băm SHA1 để tạo tóm tắt bản tin (mã Hash) 160-bit
3 Mã Hash được mã hoá bằng khoá riêng của người gửi (được "ký"), rồi chữ
ký được gắn vào bản tin
4 Người nhận giải mã chữ ký đó bằng khoá chung của người gửi để phục hồi
Trang 11Hình 1.1 Quá trình nhận thực
1.2.2. Bảo mật dữ liệu
1 Người gửi tạo ra bản tin và một số ngẫu nhiên sẽ dùng làm khoá phiên để
mã hóa bản tin này (khoá phiên chỉ dùng một lần trong phiên truyền e-mail rồiloại bỏ)
2 Bản tin được mã hoá đối xứng (AES, 3DES, IDEA hoặc CAST-128) dùngkhoá phiên
3 Khoá phiên được mã hoá khoá công khai (RSA) bằng khoá chung của ngườinhận, rồi sau đó được gắn vào bản tin trước khi truyền đi
4 Người nhận giải mã khoá công khai (RSA) bằng khoá riêng của mình đểphục hồi khoá phiên
5 Khoá phiên được dùng để giải mã bản tin
Trang 12Hình 1.2 Bảo mật dữ liệu
1.2.3. Kết hợp giữa nhận thực và bảo mật dữ liệu
Hai dịch vụ trên được kết hợp với nhau (tức là một bản tin có thể vừa được kýlại vừa được mã hoá)
Quá trình mã hoá và giải mã như sau
Hình 1.3 Quá trình mã hóa, giải mã
Trang 131.2.4. Nén dữ liệu
PGP nén bản tin: sau khi ký (dùng hash) để không phải nén dữ liệu mỗi khi cầnxác nhận chữ ký của nó, trước khi mã hoá để tăng tốc quá trình mã hoá (dữ liệucần mã hoá sẽ ít hơn), để bảo mật tốt hơn (các bản tin đã nén khó thám mã hơnnhiều so với các bản tin chưa nén vì chúng có phần dư ít hơn)
1.2.5. Tương thích e-mail
PGP được thiết kế tương thích với tất cả các hệ thống e-mail
PGP được thiết kế với các e-mail đơn giản nhất, với giả thiết không có các bản gắnkèm (attachment)
PGP sử dụng sơ đồ biến đổi Radix-64 để mã hoá chuỗi bit đầu ra của các hàm mãhoá/nén:
Chuỗi bit này được chia thành các khối 6-bit, mỗi khối đó được ánh xạ vào một ký
tự ASCII
Radix-64 làm tăng kích thước dữ liệu thêm khoảng 33%
Sơ đồ biến đổi radix-64: mỗi nhóm 3 octet dữ liệu nhị phân được ánh xạ vào
4 ký tự ASCII (phù hợp với đa số các hệ thống e-mail)
Hình 1.4 Mã hoá dữ liệu nhị phân thành khuôn dạng radix-64
Trang 141.2.7. Các dịch vụ của PGP
Trang 15Hình 1.6 Sơ đồ phát và thu một abnr tin PGP
Trang 16CHƯƠNG 2: GIAO THỨC S/MIME 2.1 Tổng quan
2.1.1 Giới thiệu
S/MIME là 1 chuẩn internet về định dạng cho mail Hầu như mọi email trêninternet đề được truyền giao thức SMTP theo đinh dạng S/MIME chưa có sự đảmbảo an toàn
Ví dụ : người gửi tin nhắn có thể dễ dàng giả mạo , tức là email nhận đc màkhông chắc có đúng là người gửi mong muốn hay ko không Thêm vào đó , emailthường không được mã hóa , có nghĩa rằng nếu 1 người nào đó truy cập vào hộpthư cá nhân thì có thế xem được email
MIME khắc phục những hạn chế của SMTP :
Không truyền được file nhị phân (hình ảnh, chương trình…)
Chỉ gửi được các kí tự ASCII 7bit
Không nhận được thông báo vượt quá kích thước cho phép
Giao thức S/MIME là 1 giải pháp an toàn thư tín điện tử S/MIME đưa vào 2phương pháp an ninh cho email đó là mã hóa và chứng thực Cả hai phương phápđều dựa trên mã hóa bất đối xứng và PKI
S/MIME cung cấp 1 giải pháp cho quá trình gửi nhận dữ liện 7bit S/MIME cóthể được sử dụng với những hệ thống cho phép truyền nhận dữ liệu MIME nó cóthể được sử dụng cho các phương pháp gửi mail truyền thống có thêm dịch vụ anninh cho mail gửi và giải mã các dich vụ an ninh cho bên nhận S/MIME bảo vệcách thực thể MIME với chữ kí , mã hoặc cả 2 Để tạo ra 1 tin nhắn S/MIME,ngươi dung S/MIME phải tuân theo các thông số kĩ thuật cũng như cú pháp tinnhắn
Trang 17Các tính năng của 1 webmailClient hỗ trợ S/MIME là tính bảo mật, tính xácthực, tính toàn vẹn và chống chôi bỏ
2.1.2 Chức năng
- Đưa dữ liệu vào phong bì số
Kết hợp mã hoá nội dung bản tin và mã hoá khoá
- Ký dữ liệu
Mã hoá riêng bản tin MIME và ký vào mã Hash của bản tin đó
- Ký nhưng không cần mã hoá dữ liệu MIME
Mã hoá bản tin gốc (bản tin chưa sử dụng MIME) và ký vào mã Hash của bản tinđó
- Ký dữ liệu rồi đưa vào phong bì số
Lồng các thực thể đã mã hoá và đã ký với nhau
Trang 18Mỗi khách (client) có một danh sách các chứng chỉ của CA đã được uỷ quyền vàmột cặp chứng chỉ khoá chung/riêng
Các chứng chỉ phải được các CA (đã được uỷ quyền) ký vào đó thì mới có hiệu lực
2.2 Nguyên lý hoạt động của S/MIME
Hình 2.1 Quá trình bảo vệ E-mail bằng S/MIME bên gửi
Hình 2.2 Quá trình nhận E-mail bằng S/MIME bên nhận
Trang 19CHƯƠNG 3: GIAO THỨC DKIM
3.1 Tổng quan
DKIM (DomainKeys Identified Mail) là một phương pháp xác thực thư điện tửbằng chữ ký số của miền gửi thư, trong đó khóa công khai thường được công bốtrên DNS dưới dạng một bản ghi TXT Phát triển từ phương pháp DK(DomainKeys) của Yahoo và phương pháp IM (Identified Mail) của Cisco, vớiviệc được cơ quan IETF cấp tư cách Standards Track, DKIM đã từ một phươngpháp xác thực thư điện tử có tiềm năng nhất
DKIM cho phép một cơ chế xác thực thư điện tử sử dụng:
- Một tên miền xác định
- Một cặp khóa công khai
- Hệ thống phân giải tên miền có khóa công khai được cập nhật trên đó
3.2 Cơ chế hoạt động
DKIM sử dụng một cặp khóa, cặp khóa này được tạo ra từ tên miền gửi thư.Cặp khóa bao gồm: 01 khóa công khai và 01 khóa bí mật Khóa công khai được kýbởi MTA(Mail Transfer Agent) và được cập nhật trên DNS sever Khóa bí mậtđược sử dụng trong tất cả thư điện tử được gửi đi
Hình 3.1 Cơ chế hoạt động của DKIM
Trang 20- Máy chủ nhận thư khi nhận được chữ ký DKIM-Signature từ trường tiêu đề xácthực nó bằng cách sử dụng khóa công khai.
Hình 3.2 Hoạt động của khóa bí mật và khóa công khai của DKIM
3.3 Ưu, nhược điểm của DKIM
DKIM được thiết kế đơn giản, dễ thực hiện, giá thành thấp DKIM có những ưuđiểm sau:
- Thư điện tử được ký trên trường tiêu đề tránh được những nhầm lẫn khi chữ kýđược ký ở phần nội dung thư điện tử
- Các máy chủ gửi thư điện tử( mail server) có thể tự tạo cặp khóa công khai vàcặp khóa bí mật cho riêng mình
- Trong suốt và thích hợp với cơ sở hạ tầng thư điện tử sẵn có
Trang 21- Thực hiện trên máy chủ giảm thời gian triển khai Không thay đổi với người dùngcuối.
Hình 3.3 Cách thức DKIM chặn thư rác, thư lừa đảo
Nhược điểm khi sử dụng DKIM đó là phải triển khai đồng bộ cả từ máy chủ gửithư và máy chủ nhận Khó triển khai đồng bộ trên phạm vi rộng
LỜI CẢM ƠN
Trang 22Bám theo nội dung của bài tập lớn, nhóm đã thực hiện theo các nội dung đượcphân công như sau:
Học viên Công việc được phân công Mức độ hoàn thành
Nguyễn Văn Chinh Dịch chapter 7: Bảo mật thư
điện tử
Tốt
Trần Thu Hương Dịch chapter 7: Bảo mật thư
điện tửTổng hợp viết báo cáo