Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 32 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
32
Dung lượng
1,17 MB
Nội dung
1 TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO THỰC TẬP NGHIÊN CỨU GIẢI PHÁP TRUYỀN TẢI DỮ LIỆU AN TỒN TRONG KHƠNG GIAN MẠNG Công ty thực tập : TNHH HÀNH TINH Người phụ trách : LÊ DUY Thực tập sinh : NGUYỄN DƯƠNG HỒNG DUY TP Hồ Chí Minh, tháng 07 năm 2020 Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy LỜI MỞ ĐẦU Hiện nay, với phát triển vượt trội công nghệ, công nghệ bao phủ mặt đời sống, trở thành thành phần thiết yếu thiếu sống người Cùng với bùng nổ số lượng thiết bị máy tính, đặc biệt thơng tin truyền thơng góp phần khơng nhỏ tạo thời đại cơng nghệ 4.0 Qua địi hỏi người công nghệ ngày cao yêu cầu sáng tạo, tiện dụng, lạ phát triển đẩy cao Đi kèm với bùng nổ thơng tin nhu cầu việc giao tiếp thông tin người ngày nhiều Do việc đảm bảo an tồn thơng tin trước mối đe dọa đóng vai trị ngày quan trọng cấp thiết, đặc biệt thơng tin mang giá trị tính riêng tư cao Trong vấn đề bảo mật đường truyền đóng vai trị khơng thể thiếu tương lai Chính tiềm lĩnh vực em định chọn chủ đề “Nghiên cứu giải pháp truyền tải liệu an tồn khơng gian mạng” để tìm hiểu phát triển cho đợt thực tập lần Sau ba năm học tập trường, mong muốn có thêm kinh nghiệm thực tế, muốn tham gia làm ứng dụng môi trường chuyên nghiệp, nên em định chọn tham gia thực tập công ty làm phần mềm để học hỏi khai phá tri thức kĩ cần thiết để trở thành nhà phát triển phần mềm chuyên nghiệp Vì vậy, em định chọn Công ty TNHH Hành Tinh - môi trường lý tưởng, đại, chuyên nghiệp - nơi giúp em thực dự định Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy LỜI CẢM ƠN Đầu tiên, em xin gửi lời cảm ơn sâu sắc đến Trường Đại học Công nghệ Thông tin, Đại học Quốc gia TP Hồ Chí Minh tạo điều kiện cho em hội tiếp cận, học hỏi có kiến thức tảng môn Em xin cảm ơn Công ty TNHH Hành Tinh cho em hội thực tập, trải nghiệm thực tế, thông qua em gặt hái kinh nghiệm, học quý giá trau dồi thêm kỹ hành trang cần thiết cho công việc sau Đặc biệt cảm ơn anh Lê Duy, hướng dẫn, giúp đỡ cho em tận tình khó khăn cơng việc, đến khó khăn việc làm quen với mơi trường mới; để làm sản phẩm thời gian qua Cũng xin cảm ơn thầy cô khoa Công nghệ phần mềm nhiệt tình hỗ trợ, tạo điều kiện em làm báo cáo Vì kiến thức thân cịn hạn chế lần va chạm tiếp xúc với việc áp dụng lý thuyết vào cơng việc thực tiễn nên thân cịn bỡ ngỡ, lúng túng khơng tránh khỏi thiếu sót, mong q thầy (cơ) đóng góp ý kiến để em hồn thiện TP Hồ Chí Minh, ngày 28 tháng 07 năm 2020 Nguyễn Dương Hoàng Duy Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy NHẬN XÉT CỦA KHOA Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy MỤC LỤC CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP .7 1.1 Giới thiệu công ty TNHH Hành Tinh 1.2 Sản phẩm công ty .7 CHƯƠNG 2: NỘI DUNG THỰC TẬP .8 2.1 Tìm hiểu công ty kỹ công ty .8 2.2 Nghiên cứu kỹ thuật 2.2.1 Các công cụ làm việc 2.2.2 Tìm hiểu kiến thức mạng máy tính a TCP .9 b UDP 10 c ICMP 10 2.2.3 Tìm hiểu chế phân giải tên miền DNS 11 a Cấu trúc tên miền 11 b DNS 12 c Cơ chế phân giải tên miền DNS 13 2.2.4 Nghiên cứu giải pháp bảo mật đường truyền liệu internet .15 a Mã hóa khóa đối xứng 15 i Mã hóa khối - Mã hóa AES .15 ii Mã hóa dịng - Mã hóa RC4 15 b Mã hóa khóa bất đối xứng – Mã hóa RSA 16 c Hàm băm 17 i MD5 17 ii SHA .17 d TLS 18 2.2.5 Tìm hiểu giao thức HTTP/HTTPS 22 a HTTP 22 Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy b HTTPS 23 2.2.6 Tìm hiểu Web service phương thức serialization 25 a Web service .25 b Serialization 26 i SOAP 26 ii RESTful 27 2.3 Thực project 28 2.4 Lịch làm việc 28 CHƯƠNG 3: CHI TIẾT VỀ PROJECT 30 3.1 Giới thiệu ứng dụng 30 3.2 Kết .30 Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy CHƯƠNG 1: GIỚI THIỆU CƠNG TY THỰC TẬP Giới thiệu cơng ty TNHH Hành Tinh Công ty TNHH Hành Tinh thành lập từ năm 2008, có 200 nhân viên, hoạt động chủ yếu lĩnh vực công nghệ thông tin Thông tin công ty: - Tên công ty: Công ty TNHH Hành Tinh - Số nhân viên: 200+ người - Văn phòng: Centre Point Tower Building, Số 106 Nguyễn Văn Trỗi, Phường 8, Q.Phú Nhuận, TP Hồ Chí Minh - Trụ sở làm việc: Nguyễn Văn Trỗi, Q Phú Nhuận, TP Hồ Chí Minh - Điện thoại: (028) 38 475 576 Sản phẩm công ty Công ty TNHH Hành Tinh chủ yếu phát triển giải pháp, sản phẩm lĩnh vực công nghệ thông tin phục vụ cho mục tiêu lâu dài công ty Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy CHƯƠNG 2: NỘI DUNG THỰC TẬP Đợt thực tập với chủ đề “NGHIÊN CỨU GIẢI PHÁP TRUYỀN TẢI DỮ LIỆU AN TOÀN TRONG KHƠNG GIAN MẠNG” nhằm mục đích giúp sinh viên thực tập đào tạo toàn diện kiến thức mạng máy tính giải pháp bảo mật, đồng thời rèn luyện kỹ mềm làm việc nhóm, thuyết trình, giao tiếp Tại cơng ty, sinh viên có hội học tập, khám phá làm việc môi trường phát triển phần mềm chuyên nghiệp Tìm hiểu cơng ty kỹ công ty Thời gian: ngày Nội dung: Giới thiệu công ty, cách tổ chức công ty Được nghe người phụ trách giới thiệu cơng ty, q trình thành lập phát triển (như nhắc đến trên), quy trình làm việc từ cao xuống thấp, cách thức tổ chức công ty Nhận trang thiết bị phục vụ công việc, bao gồm: máy tính để bàn, máy ảo để chạy thử Ngồi ra, thực tập sinh giới thiệu cách thức làm việc công ty thời gian làm, quy định cần phải tuân thủ, cách sử dụng tài khoản công việc Kết quả: Hiểu thêm cơng ty Hành Tinh, q trình thành lập phát triển cơng ty Có thêm kỹ việc sử dụng tài khoản cơng việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm Nghiên cứu kỹ thuật 4.1 Các công cụ làm việc Thời gian: ngày Nội dung: Tìm hiểu cơng cụ sử dụng trình làm việc (bao gồm: Visual Studio, Gitlab, Tortoise git, Jira, Total Commander ) Trong thời gian này, anh hướng dẫn thực tập sinh tìm hiểu cơng cụ giúp ích cho công việc sau Một số phần mềm số Visual Studio - IDE để phát triển phần mềm máy tính, Gitlab - hệ thống quản lý mã nguồn phía server, Tortoise git - sử dụng quản lý mã nguồn với giao diện desktop, Jira – hệ thống hỗ trợ quản lý dự án, Total Commander - trình duyệt file trực quan với nhiều tiện ích Thực hiện: Thực hành sử dụng phần mềm nêu Kết quả: Lập trình sử dụng cơng cụ miễn phí, giúp dễ dàng kết hợp cơng cụ với 4.2 Tìm hiểu kiến thức mạng máy tính Thời gian: ngày Nội dung: Tìm hiểu kiến thức mạng máy tính Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy a TCP TCP (Transmission Control Protocol) giao thức cốt lõi giao thức TCP/IP Sử dụng TCP, ứng dụng máy chủ nối mạng tạo "kết nối" với nhau, mà qua chúng trao đổi liệu gói tin Giao thức đảm bảo chuyển giao liệu tới nơi nhận cách đáng tin cậy thứ tự TCP phân biệt liệu nhiều ứng dụng (chẳng hạn, dịch vụ Web dịch vụ thư điện tử) đồng thời chạy máy chủ Sơ đồ trạng thái TCP - phiên đơn giản hóa + Bít - 4-9 10 - 15 16 - 31 Source Port Destination Port 32 Sequence Number 64 Acknowledgement Number 96 128 Data Offset Reserved Checksum Flags Window Urgent Pointer Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 10 160 Options (optional) 160/192+ Data Cấu trúc header TCP b UDP UDP (User Datagram Protocol) giao thức cốt lõi giao thức TCP/IP Dùng UDP, chương trình mạng máy tính gửi liệu ngắn gọi datagram tới máy khác UDP không cung cấp tin cậy thứ tự truyền nhận mà TCP làm; gói liệu đến khơng thứ tự bị mà khơng có thơng báo Tuy nhiên UDP nhanh hiệu mục tiêu kích thước nhỏ yêu cầu khắt khe thời gian Do chất khơng trạng thái nên hữu dụng việc trả lời truy vấn nhỏ với số lượng lớn người yêu cầu + Bits - 15 16 - 31 Source Port Destination Port 32 Length Checksum 64 Data Cấu trúc header UDP c ICMP Internet Control Message Protocol (viết tắt ICMP), giao thức gói Internet Protocol Giao thức thiết bị mạng router dùng để gửi thông báo lỗi dịch vụ có tồn hay khơng, địa host hay router có tồn hay khơng ICMP sử dụng để chuyển tiếp thơng điệp truy vấn Giao thức đánh số ICMP khác với giao thức vận chuyển TCP UDP chỗ khơng thường sử dụng để trao đổi liệu hệ thống, không thường xuyên sử dụng ứng dụng mạng người dùng cuối (với ngoại lệ số cơng cụ chẩn đốn ping traceroute) Of Oct fse ts et Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hồng Duy 18 Tương tự mã hóa đối xứng, hàm băm mạnh có hiệu ứng lan truyền (avalanche effect) Chỉ cần thay đổi bit thơng điệp đầu vào ½ bit giá trị băm thay đổi theo Điều làm cho người phá hàm băm thử sai theo kiểu chosenplainttext, nghĩa không tồn cách công khác buộc phải thử vét cạn n/2 thông điệp khác nhau, mà chứng minh bất khả thi mặt thời gian Sơ đồ tổng thể SHA1 giống MD5, có điểm khác kích thước giá trị hash bước 160 bit Sơ đồ tổng thể d TLS TLS (Transport Layer Security) với SSL (Secure Sockets Layer) giao thức mật mã thiết kế để cung cấp truyền thơng an tồn qua mạng máy tính Một số phiên giao thức sử dụng rộng rãi ứng dụng trình duyệt Web, thư điện tử, tin nhắn nhanh, VoIP Các trang web sử dụng TLS để bảo mật tất thông tin liên lạc máy chủ trình duyệt web Các phiên TLS/SSL: Phiên Năm phát hành Trạng thái SSL 1.0 Không phát hành Không sử dụng SSL 2.0 1995 Ngừng sử dụng từ 2011 SSL 3.0 1996 Ngừng sử dụng từ 2015 Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 19 TLS 1.0 1999 Ngừng sử dụng từ 2020 TLS 1.1 2006 Ngừng sử dụng từ 2020 TLS 1.2 2008 TLS 1.3 2018 Kết nối TLS kết nối bảo mật mật mã đối xứng sử dụng để mã hóa liệu truyền Các khóa cho mã hóa đối xứng tạo cho kết nối dựa khóa bí mật chung trao đổi bắt đầu phiên Máy chủ máy khách trao đổi chi tiết thuật toán mã hóa khóa mật mã sử dụng trước byte liệu truyền Việc trao đổi khóa bí mật chia sẻ kênh an tồn (để đảm bảo khơng thể bị nghe trộm khơng thể có khóa mã, kẻ cơng đặt kết nối) đáng tin cậy (không kẻ công sửa đổi thơng tin liên lạc q trình trao đổi mà khơng bị phát hiện) Danh tính bên giao tiếp xác thực mật mã khóa cơng khai Kết nối đáng tin cậy tin nhắn truyền bao gồm phần kiểm tra tính tồn vẹn tin nhắn để tránh liệu thay đổi liệu q trình truyền Ngồi thuộc tính trên, cấu hình TLS cung cấp thêm thuộc tính liên quan đến quyền riêng tư bảo mật chuyển tiếp, đảm bảo thông tin bị lộ tương lai khóa mã hóa khơng thể sử dụng để giải mã thông tin liên lạc TLS ghi lại khứ Các thuật toán kiểm tra tính tồn vẹn TLS: Thuật tốn HMAC-MD5 SSL 2.0 SSL 3.0 TLS 1.0 TLS 1.1 TLS 1.2 TLS 1.3 Yes Yes Yes Yes Yes Trạng thái No Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 20 HMAC-SHA1 No Yes Yes Yes Yes No HMACSHA256/384 No No No No Yes No AEAD No No No No Yes Yes GOST 28147-89 IMIT No No Yes Yes Yes GOST R 34.11-94 No No Yes Yes Yes Được hỗ trợ cho TLS 1.2 in RFCs Dùng cho mục đích RFC tạm thời Giao thức TLS bao gồm hai lớp: ghi TLS giao thức bắt tay TLS Cấu trúc ghi TLS: + Byte +0 Byte Content type Bytes Byte +1 Byte +2 Legacy version (Major) Byte +3 Length (Minor) (bits 15 8) Bytes (m−1) Protocol message(s) Bytes MAC (optional) (bits 0) Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 21 m (p−1) Bytes p (q−1) Padding (block ciphers only) Cấu trúc gói tin bắt tay TLS: + Byte +0 Byte 22 Byte +1 Byte +2 Version Byte +3 Length Bytes (Major) (Minor) (bits 15 8) (bits 0) Handshake message data length Bytes Message type (bits 23 16) Bytes (n−1) (bits 15 8) (bits 0) Handshake message data Handshake message data length Bytes n (n+3) Message type (bits 23 16) Bytes (bits 15 8) (bits 0) Handshake message data Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 22 (n+4) Thực - Tham gia đầy đủ buổi training công ty - Làm thực hành, kiểm tra kiến thức học Kết - Phân biệt loại mã hóa khóa đối xứng bất đối xứng, mã hóa khối mã hóa dịng - Hiện thực thuật tốn mã hóa băm - Hiểu chế TLS 4.5 Tìm hiểu giao thức HTTP/HTTPS Thời gian: ngày Nội dung: Các kiến thức HTTP/HTTPS a HTTP HTTP (HyperText Transfer Protocol - Giao thức truyền tải siêu văn bản) năm giao thức chuẩn mạng Internet, dùng để liên hệ thông tin Máy cung cấp dịch vụ (Web server) Máy sử dụng dịch vụ (Web client) mơ hình Client/Server dùng cho World Wide Web – WWW HTTP giao thức thuộc tầng ứng dụng, nằm cặp giao thức tầng giao vận & tầng mạng TCP/IP HTTP Request Method phương thức để thực nguồn nhận diện Request-URI cung cấp Các phương thức HTTP request: - GET: sử dụng để lấy lại thông tin từ Server cung cấp sử dụng URI cung cấp Các yêu cầu sử dụng GET nhận liệu khơng có ảnh hưởng tới liệu - HEAD: Tương tự GET, truyền tải dịng trạng thái khu vực Header - POST: Một yêu cầu POST sử dụng để gửi liệu tới Server, ví dụ, thông tin khách hàng, file tải lên, …, sử dụng mẫu HTML - PUT: Thay đổi tất đại diện nguồn mục tiêu với nội dung tải lên - DELETE: Gỡ bỏ tất đại diện nguồn mục tiêu URI Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 23 - CONNECT: Thiết lập tunnel tới Server xác định URI cung cấp - OPTIONS: Miêu tả chức giao tiếp cho nguồn mục tiêu - TRACE: Trình bày vịng lặp kiểm tra thơng báo song song với path tới nguồn mục tiêu Khi nhận phiên dịch HTTP Request, Server gửi tín hiệu phản hồi HTTP Response bao gồm thành phần sau: - Một dịng trạng thái (Status-Line) - Khơng nhiều trường Header (General|Response|Entity) theo sau CRLF - Một dòng trống dòng kết thúc trường Header - Một phần thân thông báo tùy ý b HTTPS HTTPS, viết tắt Hypertext Transfer Protocol Secure, giao thức kết hợp giao thức HTTP giao thức bảo mật SSL hay TLS cho phép trao đổi thông tin cách bảo mật Internet Giao thức HTTPS thường dùng giao dịch nhạy cảm cần tính bảo mật cao Giao thức HTTPS sử dụng port 443, giúp đảm bảo tính chất sau thông tin: - Confidentiality: sử dụng phương thức mã hóa (encryption) để đảm bảo thơng điệp trao đổi client server không bị kẻ thứ ba đọc - Integrity: sử dụng phương thức hashing để người dùng (client) máy chủ (server) tin tưởng thơng điệp mà chúng nhận có khơng bị mát hay chỉnh sửa - Authenticity: sử dụng chứng số (digital certificate) để giúp client tin tưởng server/website mà họ truy cập thực server/website mà họ mong muốn vào, bị giả mạo Việc nhờ đến bên thứ (thường CA) để xác thực danh tính website cộng thêm ý người dùng website có sử dụng HTTPS SSL certificate cịn hiệu lực giúp loại bỏ hoàn toàn nguy bị lừa đảo Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hồng Duy 24 Q trình giao tiếp client server thông qua HTTPS: - Bước 1: Client gửi yêu cầu (request) cho trang bảo mật (secure page) (có URL bắt đầu với https://) - Bước 2: Server gửi lại cho client certificate - Bước 3: Client (trình duyệt web) tiến hành xác thực certificate cách kiểm tra (verify) tính hợp lệ chữ ký số CA kèm theo certificate Giả sử certificate xác thực hạn sử dụng client cố tình truy cập Web browser cảnh báo tin cậy certificate (do dạng selfsigned SSL certificate certificate hết hiệu lực, thơng tin certificate khơng đúng) xảy bước sau: - Bước 4: Client tự tạo ngẫu nhiên symmetric encryption key (hay session key), sử dụng public key (lấy certificate) để mã hóa session key gửi cho server - Bước 5: Server sử dụng private key (tương ứng với public key certificate trên) để giải mã session key - Bước 6: Sau đó, server client sử dụng session key để mã hóa/giải mã thơng điệp suốt phiên truyền thông Và tất nhiên, session key tạo ngẫu nhiên khác phiên làm việc với server Ngồi encryption chế hashing sử dụng để đảm bảo tính Integrity cho thông điệp trao đổi Thực - Tham gia đầy đủ buổi training công ty - Làm thực hành, kiểm tra kiến thức học Kết - Hiểu giao thức HTTP HTTPS 4.6 Tìm hiểu Web service phương thức serialization Thời gian: ngày Nội dung: Tìm hiểu web service serializations Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 25 a Web service Web Service (WS) dịch vụ cung cấp thiết bị điện tử cho thiết bị điện tử khác, liên lạc với thông qua World Wide Web, máy chủ chạy thiết bị máy tính, lắng nghe yêu cầu cổng cụ thể qua mạng, phục vụ tài liệu web (HTML, JSON, XML, hình ảnh) tạo dịch vụ ứng dụng web, phục vụ giải vấn đề tên miền cụ thể (WWW, Internet, HTTP) Trong dịch vụ web, công nghệ web HTTP sử dụng để chuyển định dạng tệp đọc máy XML JSON Kiến trúc web service Trong thực tế, dịch vụ web thường cung cấp giao diện dựa web hướng đối tượng cho máy chủ sở liệu, sử dụng ví dụ máy chủ web khác ứng dụng di động, cung cấp giao diện người dùng cho người dùng cuối Nhiều tổ chức cung cấp liệu trang HTML định dạng cung cấp liệu máy chủ họ dạng XML JSON, thường thông qua dịch vụ Web phép cung cấp Một ứng dụng khác cung cấp cho người dùng cuối ứng dụng hịa trộn, máy chủ web sử dụng số dịch vụ web máy khác biên dịch nội dung vào giao diện người dùng Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 26 Web service kiến trúc service-oriented b Serialization i SOAP SOAP (Simple Object Access Protocol) giao thức W3C định nghĩa SOAP áp dụng XML để xác định liệu dạng văn (plain text) qua HTTP SMTP Web Service dùng SOAP q trình truyền tải liệu SOAP khơng phụ thuộc ngơn ngữ lập trình hay tảng dùng XML Cấu trúc SOAP Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hồng Duy 27 Các thành phần gói tin SOAP: Thành phần Ý nghĩa Bắt buộc Envelope Xác định tài liệu XML dạng tin nhắn SOAP Yes Header Chứa thông tin header No Body Chứa lời gọi thông tin phản hồi Yes Fault Cung cấp thông tin lỗi xảy xử lý tin nhắn No Cả SMTP HTTP giao thức lớp ứng dụng hợp lệ sử dụng để vận chuyển cho SOAP, HTTP sử dụng rộng rãi hoạt động tốt với sở hạ tầng internet ngày Cụ thể, HTTP hoạt động tốt với tường lửa mạng SOAP sử dụng qua HTTPS với xác thực đơn giản tương hỗ Đây phương thức WS-I ủng hộ để cung cấp bảo mật dịch vụ web ii RESTful Representational state transfer (REST) kiểu kiến trúc phần mềm dùng để xác định tập ràng buộc sử dụng để tạo dịch vụ Web Các dịch vụ web phù hợp với kiến trúc REST, gọi dịch vụ Web RESTful, cung cấp khả tương tác hệ thống máy tính Internet Các ràng buộc kiến trúc REST: - Mô hình client-server: Việc tách mối quan tâm giao diện người dùng khỏi mối quan tâm lưu trữ liệu cải thiện tính di động giao diện người dùng nhiều tảng - Vô danh: Mỗi yêu cầu từ máy khách chứa tất thông tin cần thiết để phục vụ yêu cầu trạng thái phiên giữ máy khách Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 28 - Khả cache: khách hàng trung gian lưu trữ phản hồi Các phản hồi phải, ngầm rõ ràng, tự xác định lưu nhớ cache không lưu nhớ cache để ngăn khách hàng cung cấp liệu cũ không phù hợp để đáp ứng yêu cầu - Hệ thống nhiều lớp: Một khách hàng thường khơng thể biết liệu kết nối trực tiếp với máy chủ cuối hay với trung gian đường Nếu proxy cân tải đặt máy khách máy chủ, không ảnh hưởng đến thông tin liên lạc họ không cần phải cập nhật mã máy khách máy chủ - Mã theo yêu cầu (không bắt buộc): Máy chủ tạm thời mở rộng tùy chỉnh chức máy khách cách chuyển mã thực thi - Giao diện đồng bộ: Ràng buộc giao diện thống tảng cho thiết kế hệ thống RESTful Nó đơn giản hóa tách rời kiến trúc, cho phép phần phát triển độc lập Web service APIs tuân thủ ràng buộc kiến trúc REST gọi API RESTful API RESTful dựa HTTP xác định với khía cạnh sau: - Một URI sở, chẳng hạn http://api.example.com/collection/ - Các phương thức HTTP tiêu chuẩn (ví dụ: GET, POST, PUT, PATCH DELETE) - Một loại phương tiện xác định yếu tố chuyển trạng thái liệu Thực - Tham gia đầy đủ buổi training công ty - Làm thực hành, kiểm tra kiến thức học Kết - Hiểu kiến trúc web service - Phân biệt dạng serialization SOAP REST Thực project Sau tháng training thực hành, thực tập sinh nắm kiến thức mạng máy tính, tốn mã hóa web serices Trong tháng thứ hai, trainer hướng dẫn thực tập sinh áp dụng kiến thức học để thực Chi tiết đồ án nói phần sau Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 29 Lịch làm việc Tuần Cơng việc Tìm hiểu công ty kỹ công ty Làm quen với công cụ làm việc cơng ty Tìm hiểu kiến thức mạng máy tính Tìm hiểu chế phân giải tên miền DNS Nghiên cứu giải pháp bảo mật đường truyền liệu internet Tìm hiểu giao thức HTTP/HTTPS Tìm hiểu Web service phương thức serialization Thực project Báo cáo cuối đợt thực tập Người hướng dẫn Mức độ hoàn thành Nhận xét người hướng dẫn Anh Lê Duy Anh Lê Duy Anh Lê Duy Anh Lê Duy Anh Lê Duy Anh Lê Duy Anh Lê Duy Anh Lê Duy Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 30 CHƯƠNG 3: CHI TIẾT VỀ PROJECT Giới thiệu ứng dụng Do tính chất bảo mật cơng ty nên em xin phép giới thiệu sơ lược ý tưởng ứng dụng mà khơng trình bày q chi tiết Ứng dụng hướng dẫn ứng dụng CLI, có chức upload tập tin an tồn thơng qua web service có sẵn, dùng đề upload file backup lên hệ thống Tham số truyền vào có dạng: upload -file -svc Trong đó: - Path: đường dẫn đến file cần upload máy local - Url: đường dẫn đến nơi file upload lên web service Thực - Sử dụng ngôn ngữ lập trình C++ - Tìm hiểu thư viện libcurl - Hiện thực ứng dụng CLI để upload file - Fix số lỗi xảy test thực tế Kết - Hồn thành ứng dụng với tính u cầu **Vì để đảm bảo tính bảo mật, em khơng thể cung cấp hình ảnh cho sản phẩm này.** Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 31 TÀI LIỆU THAM KHẢO Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy 32 TỔNG KẾT Như vậy, vòng hai tháng ngắn ngủi, em trải nghiệm nhiều điều môi trường làm việc thực tế, đồng thời nhận kiến thức cần thiết hướng dẫn tận tình anh trainer anh team Qua em tiếp thu nhiều kiến thức để sẵn sàng tiếp tục tham gia vào dự án khác team Chân thành cảm ơn giúp đỡ anh nhóm trainer giúp đỡ em để hồn thành đợt thực tập Cảm ơn anh Lê Duy giúp em hoàn thành báo cáo Phụ trách: Anh Lê Duy - Team Leader Thực tập sinh: Nguyễn Dương Hoàng Duy ... TẬP Đợt thực tập với chủ đề “NGHIÊN CỨU GIẢI PHÁP TRUYỀN TẢI DỮ LIỆU AN TỒN TRONG KHƠNG GIAN MẠNG” nhằm mục đích giúp sinh viên thực tập đào tạo tồn diện kiến thức mạng máy tính giải pháp bảo... định chọn chủ đề ? ?Nghiên cứu giải pháp truyền tải liệu an toàn khơng gian mạng? ?? để tìm hiểu phát triển cho đợt thực tập lần Sau ba năm học tập trường, mong muốn có thêm kinh nghiệm thực tế, muốn... phân giải tên miền DNS Nghiên cứu giải pháp bảo mật đường truyền liệu internet Tìm hiểu giao thức HTTP/HTTPS Tìm hiểu Web service phương thức serialization Thực project Báo cáo cuối đợt thực tập