HTTPS là HTTP chạy trên TLS — mã hóa toàn bộ giao tiếp, xác thực danh tính server, đảm bảo toàn vẹn dữ liệu.
- TLS handshake — Client Hello (cipher suites, version) → Server Hello (cipher đã chọn + certificate) → client verify certificate với CA → key exchange (ECDHE, private key không bao giờ được truyền) → sinh session keys → giao tiếp mã hóa.
- Certificate chain — leaf → intermediate CA → root CA (được browser/OS tin cậy); Let's Encrypt cấp certificate miễn phí, tự động renew.
- HSTS —
Strict-Transport-Security: max-age=31536000; includeSubDomains: browser chỉ kết nối HTTPS, chặn SSL stripping; HSTS Preload list được hardcode sẵn trong browser. - TLS 1.3 — handshake 1-RTT (TLS 1.2 cần 2-RTT), 0-RTT resumption cho kết nối sau, loại bỏ cipher suite yếu.
- Mixed content — trang HTTPS load resource HTTP: browser chặn active content (script, XHR), cảnh báo passive content (ảnh).
- Vì sao bắt buộc — chặn MITM; HTTP/2, Service Worker, PWA, getUserMedia đều yêu cầu HTTPS; là ranking factor SEO; cảnh báo 'Not Secure' làm tăng bounce rate.