HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA AN TOÀN THÔNG TIN XÂY DỰNG HTTP CLIENT VỚI HTTPS Giảng viên hướng dẫn: TS.. NỘI DUNG BÁO CÁO Tổng quan về HTTP Client, HTTPS Xây dựng HTTP Client với HTTP
Trang 1HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA AN TOÀN THÔNG TIN
XÂY DỰNG HTTP CLIENT VỚI
HTTPS
Giảng viên hướng dẫn: TS
Nguyễn Mạnh Thắng Sinh viên thực hiện: Nguyễn Thị
Tú Uyên
Mã sinh viên: AT180449
Trang 2NỘI DUNG BÁO
CÁO
Tổng quan về HTTP Client, HTTPS
Xây dựng HTTP Client với HTTPS
0
1
02
03
Trang 3Tổng quan về HTTP
Client, HTTPS
01
Trang 4Tổng quan về
HTTP Client
HTTP client là một ứng dụng hoặc mô-đun trong một chương trình máy tính, được sử dụng để tạo và gửi yêu cầu HTTP đến máy chủ và xử lý phản hồi từ máy chủ
Một số chức năng:
Gửi yêu cầu HTTP, xử lý phản hồi
Xác thực và ủy quyền
Quản lý phiên
SSL/TLS
Giao Diện Lập Trình Ứng Dụng (API)
Trong thực tế, HTTP Client được sử dụng cho các mục đích như tải nội dung trang web, tương tác với API để đưa ra kết quả cho yêu cầu của người dùng,…
Trang 5Tổng quan về
HTTPS
HTTPS là từ viết tắt của Hypertext Transfer Protocol Secure, là giao thức giúp chuyển tải siêu văn bản an toàn Thực chất, HTTPS giao thức HTTP nhưng tích hợp thêm chứng chỉ bảo mật SSL/TLS nhằm mã hóa các
thông điệp giao tiếp để tăng tính bảo mật
Cả SSL và TLS đều sử dụng hệ thống PKI
(Public Key Infrastructure -hạ tầng khóa
công khai) với cấu trúc không đối xứng
để ngăn chặn tấn công Sniffing – nghe
lén,…
Trang 6Xây dựng HTTP Client
với HTTPS
02
Trang 7HTTPS và SSL/
TLS
SSL hoặc TLS
Đều là các giao thức giao tiếp mã hóa dữ liệu giữa các máy chủ, ứng dụng, người dùng và hệ thống, xác thực hai bên được kết nối qua mạng để họ có thể trao đổi dữ liệu một cách bảo mật
Sử dụng thuật toán 3DES, AES, RSA, SHA-256, HMAC
TLS được phát triển dựa trên tiêu chẩn SSL v3 nhưng giữa 2 giao thức vẫn có sự không tương xứng
Tất cả các website được tạo thành đều là giao thức
HTTP
Trang 8HTTPS và SSL/
TLS
Trang 9SSL/TLS trong
Python
Một số chức năng của module ‘ssl’
Tạo SSL Context: Bạn có thể sử dụng “ssl.create_default_context()”
để tạo một SSL context với các tùy chọn bảo mật mặc định
Thiết lập kết nối an toàn: Bạn có thể sử dụng “ssl.wrap_socket()” để thiết lập một kết nối an toàn SSL/TLS giữa client và server
Hỗ trợ giao thức bảo mật SSL,TLS
Cấu hình tùy chỉnh: Bạn có thể cấu hình các tham số bảo mật như phiên bản SSL/TLS, thuật toán mã hóa, hàm băm và các tùy chọn khác bằng cách sử dụng các đối số trong hàm “ssl.wrap_socket()”
Trong Python, module ‘ssl’ được sử dụng để làm việc với cả 2 giao thức SSL và TLS
Trang 10SSL/TLS trong
Python
Cách tạo 1 ssl context
Trang 11Xây dựng HTTP Client
Trang 12Xây dựng HTTP Client
Trang 13THANKS FOR WATCHING