Việc hiểu và áp dụng các khái niệm cơ bản về mạng máy tính sẽ giúpchúng ta hiểu rõ hơn về cách mà các thiết bị và máy tính kết nối với nhau để truyềntải thông tin.Trong bài báo cáo này,
TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN CUỐI KỲ MƠN: LẬP TRÌNH MẠNG CĂN BẢN ĐỀ TÀI 9: XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ MAIL CLIENT Người hướng dẫn: TỐNG THANH VĂN Người thực hiện: PHAN MINH CHÍ - 52100953 HUỲNH ĐẶNG KIM HUY - 52100964 LÊ HỒNG Q VY - 52100514 THÀNH PHỐ HỒ CHÍ MINH, NĂM 2023 TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN CUỐI KỲ MƠN: LẬP TRÌNH MẠNG CĂN BẢN ĐỀ TÀI 9: XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ MAIL CLIENT Người hướng dẫn: TỐNG THANH VĂN Người thực hiện: PHAN MINH CHÍ - 52100953 HUỲNH ĐẶNG KIM HUY - 52100964 LÊ HOÀNG QUÝ VY - 52100514 THÀNH PHỐ HỒ CHÍ MINH, NĂM 2023 LỜI CẢM ƠN Lời đầu tiên, chúng em xin gửi lời cảm ơn đến thầy Tống Thanh Văn truyền đạt cho chúng em kiến thức Lập trình mạng bổ ích, giúp chúng em hiểu rõ cách hoạt động làm việc giao thức mạng , Khơng vậy, thầy cịn dìu dắt cung cấp cho chúng em phương pháp học tập hiệu quả, tài liệu lập trình mạng hữu ích phần khơng thể thiếu để hồn thành báo cáo ngày hơm Song với đó, chúng em xin gửi lời cảm ơn đến khoa Công nghệ thông tin hỗ trợ tạo điều kiện cho chúng em không ngừng học tập phát triển tư thân Chúng em xin gửi lời cảm ơn đến tất giảng viên trường đại học Tôn Đức Thắng ln người lái đị tận tình, tận tâm đưa sinh viên đến bến đò thành cơng, bến đỗ tri thức Trong q trình làm báo cáo, kiến thức kinh nghiệm thực tiễn hạn chế nên kết báo cáo cịn nhiều thiếu sót, chúng em kính mong nhận ý kiến đóng góp thầy để từ chúng em hồn thiện phần thiếu sót kiến thức kinh nghiệm cho báo cáo tương lai Chúng em xin chân thành cảm ơn kính chúc thầy có thật nhiều sức khỏe để tiếp tục đưa hệ trẻ đến bến bờ tri thức ĐỒ ÁN ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC TƠN ĐỨC THẮNG Tơi xin cam đoan sản phẩm đồ án hướng dẫn thầy Tống Thanh Văn; Các nội dung nghiên cứu, kết đề tài trung thực chưa công bố hình thức trước Những số liệu bảng biểu phục vụ cho việc phân tích, nhận xét, đánh giá tác giả thu thập từ nguồn khác có ghi rõ phần tài liệu tham khảo Ngồi ra, đồ án cịn sử dụng số nhận xét, đánh số liệu tác giả khác, quan tổ chức khác có trích dẫn thích nguồn gốc Nếu phát có gian lận tơi xin hoàn toàn chịu trách nhiệm nội dung đồ án Trường đại học Tơn Đức Thắng khơng liên quan đến vi phạm tác quyền, quyền tơi gây q trình thực (nếu có) TP Hồ Chí Minh, ngày tháng năm Tác giả (ký tên ghi rõ họ tên) Phan Minh Chí Huỳnh Đặng Kim Huy Lê Hoàng Quý Vy PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN Phần xác nhận GV hướng dẫn Tp Hồ Chí Minh, ngày tháng năm (kí ghi họ tên) Phần đánh giá GV chấm Tp Hồ Chí Minh, ngày tháng năm (kí ghi họ tên) TĨM TẮT Trong thời đại cơng nghệ số nay, lập trình mạng kỹ vô quan trọng Việc hiểu áp dụng khái niệm mạng máy tính giúp hiểu rõ cách mà thiết bị máy tính kết nối với để truyền tải thông tin Trong báo cáo này, tìm hiểu trình quản lý mail client Mail client ứng dụng giúp người dùng gửi nhận email thông qua giao thức truyền tải email POP3, IMAP SMTP Chúng ta tìm hiểu cách thiết lập tài khoản email, đăng nhập vào mail client, tạo quản lý thư mục, gửi nhận email, quản lý tiêu chí email tiêu đề, thân email, tệp đính kèm địa người nhận Ngồi ra, tìm hiểu vấn đề liên quan đến bảo mật email cách sử dụng mã hóa chứng thực người dùng để đảm bảo an tồn cho thơng tin cá nhân liệu người dùng Hy vọng qua báo cáo này, hiểu rõ q trình quản lý mail client áp dụng kiến thức vào thực tế để quản lý bảo vệ thơng tin cá nhân cách an tồn hiệu Document continues below Discover more from: máy tính Mạng 50201 Đại học Tôn Đức… 123 documents Go to course Io T-on-tap-giua-ky Phi fdg dfgd f Mạng máy tính 100% (5) Nmmmt-GK - Kiểm tra trắc nghiệm giữ… Mạng máy tính 100% (1) GK bigdata - Big data Mạng máy tính 100% (1) Câu hỏi Luật an ninh 35 mạng 2018 Mạng máy tính Tracnghiem Mangmaytinh 100% (1) Mạng máy tính MỤC LỤC Contents None Đề cương ôn tập cuối kỳ môn mạng… Mạng máy tính None LỜI CẢM ƠN PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN TÓM TẮT .4 MỤC LỤC .5 DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT .6 CHƯƠNG 1: TỔNG QUAN GIỚI THIỆU ĐỀ TÀI CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Khái niệm: TCP/IP: (Transmission Control Protocol/ Internet Protocol): SMTP: (Simple Mail Transfer Protocol): POP3: (Post Office Protocol version 3) : 10 IMAP: (Internet Message Access Protocol): 10 Các thư viện hỗ trợ: 13 Quá trình làm việc Mail Client: 14 CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM 15 GỬI MAIL : 15 Nhận mail .19 GIAO DIỆN 22 TỔNG KẾT 28 DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT CÁC KÝ HIỆU CÁC CHỮ VIẾT TẮT: TCP/IP : Transmission Control Protocol/ Internet Protocol SMTP : Simple Mail Transfer Protocol POP3 : Post Office Protocol version IMAP : Internet Message Access Protocol TLS/SSL : Transport Layer Security/Secure Sockets Layer S/MIME : Secure/Multipurpose Internet Mail Extensions PGP : Pretty Good Privacy CHƯƠNG 1: TỔNG QUAN GIỚI THIỆU ĐỀ TÀI Đề tài 9: Xây dựng chương trình Quản lý Mail Client Nội dung: - Tìm hiểu giao thức mạng TCP/IP, POP3, IMAP, SMTP - Các thư viện hỗ trợ lập trình mạng - Xây dựng chương trình minh họa Mục tiêu: Tìm hiểu giao thức SMTP, POP3, IMAP, Mã hóa Base64, Q trình làm việc MailClient Yêu cầu: - Xây dựng chương trình đăng nhập vào Gmail, tự động download file đính kèm sau xóa mail 14 Quá trình làm việc Mail Client: Một mail client phần mềm dùng để gửi nhận email Khi người dùng sử dụng mail client để gửi nhận email, trình làm việc mail client diễn sau: Thiết lập kết nối đến máy chủ email: Đầu tiên, mail client thiết lập kết nối đến máy chủ email để gửi nhận email Khi gửi email, mail client kết nối đến máy chủ SMTP (Simple Mail Transfer Protocol), nhận email, mail client kết nối đến máy chủ POP3 (Post Office Protocol version 3) IMAP (Internet Message Access Protocol) Đăng nhập vào tài khoản email: Sau thiết lập kết nối đến máy chủ email, mail client yêu cầu người dùng đăng nhập vào tài khoản email cách cung cấp tên đăng nhập mật Xử lý email: Khi đăng nhập thành công, mail client tiến hành xử lý email Nếu người dùng muốn gửi email, mail client hiển thị giao diện để người dùng nhập thông tin người nhận, tiêu đề nội dung email Sau đó, mail client sử dụng giao thức SMTP để gửi email đến máy chủ email người nhận Nếu người dùng muốn nhận email, mail client sử dụng giao thức POP3 IMAP để lấy email từ máy chủ email người dùng Sau đó, mail client hiển thị thông tin email này, bao gồm thông tin người gửi, tiêu đề, ngày gửi nội dung Đóng kết nối: Sau hồn thành q trình gửi nhận email, mail client đóng kết nối đến máy chủ email Trong q trình làm việc, mail client sử dụng phương thức mã hóa Base64 để bảo mật liệu email 15 CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM GỬI MAIL : a) Tạo phiên làm việc (SESSION) o o o o Cổng SMTP: 587 Địa SMTP: gmail.com Mail.smtp.auth: Sử dụng xác thực người dùng Mail.smtp.starttls.enable: Sử dụng kết nối TLS 16 b) Khởi tạo đối tượng Message MIME (Multipurpose Internet Mail Extensions) chuẩn giao thức sử dụng Internet để mở rộng khả email MIME cho phép gửi tài liệu có định dạng phức tạp hình ảnh, âm thanh, video tài liệu đa phương tiện khác PDF, Word, Excel, v.v qua email c) Cung cấp thuộc tính cho MESSAGE: Trong JavaMail API, lớp MimeMessage sử dụng để đại diện cho email sử dụng chuẩn MIME MimeMessage lớp lớp javax.mail.Message, cho phép tạo gửi email có đính kèm tài liệu đa phương tiện Một số phương thức quan trọng lớp MimeMessage bao gồm: setRecipients() - để thiết lập người nhận email setSubject() - để thiết lập tiêu đề email setContent() - để thiết lập nội dung email addAttachment() - để đính kèm tài liệu đa phương tiện vào email, 17 18 d) Gửi MESSAGE: Trong lập trình mạng, transport khái niệm quan trọng để truyền tải liệu máy tính mạng Nó đề cập đến giao thức chế sử dụng để đảm bảo việc truyền tải liệu thực cách hiệu an toàn Trong JavaMail API, lớp Transport sử dụng để gửi email từ máy tính bạn đến máy chủ email người nhận Lớp Transport cung cấp phương thức để thiết lập kết nối SMTP (Simple Mail Transfer Protocol), xác thực đăng nhập người dùng, gửi email đóng kết nối Một số phương thức quan trọng lớp Transport bao gồm: connect() - để thiết lập kết nối đến máy chủ email người nhận sendMessage() - để gửi email close() - để đóng kết nối với máy chủ email người nhận 19 Nhận mail a) Tạo phiên làm việc (SESSION) o Địa IMAP: gmail.com o Cổng IMAP: 993 o Mail.imap.starttls.enable: Sử dụng kết nối TLS 20 b) Khởi tạo đối tượng lưu trữ IMAP, kết nối với IMAP Server Kết nối đến hộp thư đến: Lấy thư từ hộp thư đến 21 - getTextFromMessage(message): Nội dung từ nguồn gửi getAttachmentFileName(message): Tên tệp đính kèm getFrom() : Nguồn gửi getReceivedDate(): Ngày nhận thư getSubject(): Tiêu đề 22 GIAO DIỆN Giao diện client send email 23 Giao diện client management email 24 Demo Gửi mail: - Người dùng đăng nhập vào mail client với tài khoản mật mã hóa - Sau đăng nhập thành công điền đầy đủ thông tin : người nhận, tiêu đề, nội dung, tệp đính kèm (nếu có): 25 Hiển thị mail - Đăng nhập xong, người dùng xem thư nhận từ hộp thư đến - Nếu có tệp đính kèm tự động tải 26 -Vì nhận thư có tệp đính kèm, mail client tự động xóa mail nên khơng thể xem thư có tệp đính kèm có tiêu đề gì, gửi từ đâu nội dung gì, nên chúng em định để người dùng lựa chọn xóa thư khơng - Sau xác nhận xóa mail: 27 - Cập nhật lại danh sách email 28 TỔNG KẾT - Sau hoàn thành báo cáo, chúng em học nguyên lý hoạt động mail client, cách để xây dựng chương trình gửi nhận mail thông qua giao thức gửi SMTP giao thức nhận IMAP/POP3, nhờ tìm hiểu thư viện JavaMail - Sau xây dựng thành công mail client, sử dụng ứng dụng để gửi nhận thư từ máy chủ email khác