0
0
Lập trình
Harry Tran
Harry Tran106580903228332612117

Giải thích khái niệm HTTPS: Tại sao mọi trang web đều sử dụng nó? (Phần 1)

Đăng vào 3 tuần trước

• 3 phút đọc

1. Giới thiệu về HTTPS

Trong thời đại công nghệ số hiện nay, chúng ta đều quen thuộc với hai giao thức mạng cơ bản là HTTP và HTTPS. HTTP (HyperText Transfer Protocol) cho phép truyền tải dữ liệu qua internet nhưng không thực hiện quá trình mã hóa, dẫn đến nguy cơ cao về việc dữ liệu bị đánh cắp.

Ngược lại, HTTPS (HTTP Secure) là phiên bản an toàn hơn của HTTP. HTTPS mã hóa dữ liệu khi gửi đi và giải mã khi nhận, giúp bảo vệ thông tin cá nhân và dữ liệu quan trọng của người dùng. Chính vì lý do này mà hầu hết các trang web hiện nay, chẳng hạn như trang web Bếp UIT, đã chuyển sang sử dụng HTTPS. Bài viết này sẽ đi sâu vào nguyên lý hoạt động của quá trình mã hóa và bảo mật dữ liệu trong HTTPS.

2. Các phương thức mã hóa: Đối xứng và Bất đối xứng

Khi chúng ta truyền tải thông tin bằng văn bản thuần (plain text), có khả năng lớn là thông tin đó sẽ bị kẻ xấu đánh chặn và đọc được. Vì vậy, việc mã hóa dữ liệu trước khi truyền đi là rất cần thiết. Trong đó, có hai phương thức mã hóa chính là mã hóa đối xứng và mã hóa bất đối xứng.

  • Mã hóa đối xứng: Người gửi mã hóa thông tin bằng một khóa bí mật (secret key), và người nhận cũng sẽ dùng chính khóa đó để giải mã. Tuy nhiên, vấn đề lớn nhất là làm thế nào để hai bên có thể trao đổi khóa bí mật mà không bị lộ thông tin.

  • Mã hóa bất đối xứng: Mỗi đối tượng sẽ có một cặp khóa công khai (public key) và khóa riêng (private key). Dữ liệu mã hóa bằng khóa công khai chỉ có thể được giải mã bằng khóa riêng tương ứng. Khóa công khai có thể được chia sẻ công khai, trong khi khóa riêng cần được bảo vệ nghiêm ngặt. Nhờ phương thức này, không cần trao đổi khóa bí mật giữa hai bên.

Khi một kẻ thứ ba cố gắng đánh chặn dữ liệu đã được mã hóa, họ sẽ không thể giải mã được nếu không có khóa riêng.

3. Cách tạo kết nối an toàn

Để thiết lập một kết nối an toàn qua internet, chúng ta cần sử dụng kết hợp cả mã hóa đối xứng và mã hóa bất đối xứng. Cách thức hoạt động như sau:

Ví dụ, chúng ta sẽ xem xét kết nối giữa máy tính của bạn và Netflix. Đầu tiên, máy chủ của Netflix sẽ được cấp một cặp khóa công khai và khóa riêng. Khi trình duyệt của bạn gửi yêu cầu, Netflix sẽ cung cấp khóa công khai cho bạn.

Tiếp theo, trình duyệt của bạn sẽ tạo ra một khóa phiên (session key - khóa màu vàng) để sử dụng trong mã hóa đối xứng. Khóa phiên này được gửi đến máy chủ Netflix bằng cách mã hóa qua khóa công khai, đảm bảo an toàn.

Sau khi nhận được khóa phiên, hai bên có thể thoải mái truyền dữ liệu qua lại bằng cách sử dụng khóa phiên đó. Tuy nhiên, vấn đề có thể xảy ra nếu một kẻ tấn công giả mạo công khai và nhận thông báo, từ đó đánh cắp khóa phiên. Để giải quyết tình huống này, việc có một chứng chỉ bảo mật (certificate) là cần thiết. Chúng tôi sẽ tìm hiểu chi tiết về chứng chỉ bảo mật trong các phần tiếp theo của bài viết.

Một phút quảng cáo

Nếu bạn đam mê ẩm thực, hãy ghé thăm Bếp UIT của chúng tôi để thưởng thức những món ăn hấp dẫn như Phở bò Kobe và nhiều món khác đang chờ đón bạn!
source: viblo

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào