Câu hỏi phỏng vấn WebSockets
Câu hỏi

Mask trong `WebSo...

Câu trả lời

Trong giao thức WebSocket, masking là một tính năng bảo mật được thiết kế để ngăn chặn các cuộc tấn công như "man-in-the-middle" khi dữ liệu được truyền từ máy khách đến máy chủ. Masking đảm bảo rằng dữ liệu được gửi trong một khung WebSocket được mã hóa trước khi nó rời khỏi máy khách và chỉ được giải mã bởi máy chủ.

Cách Thức Hoạt Động của Masking

  1. Tạo Masking Key: Khi một máy khách WebSocket chuẩn bị gửi một khung dữ liệu, nó tạo ra một "masking key", là một chuỗi ngẫu nhiên gồm 4 byte.
  2. Mã hóa Dữ liệu: Máy khách sử dụng masking key này để mã hóa dữ liệu payload bằng cách áp dụng phép toán XOR (exclusive OR) giữa mỗi byte của dữ liệu và một byte tương ứng từ masking key. Vì masking key chỉ có 4 byte, nó được lặp lại cho đến khi toàn bộ payload được mã hóa.
  3. Gửi Dữ liệu: Máy khách gửi cả masking key và dữ liệu đã được mã hóa đến máy chủ trong khung WebSocket.
  4. Giải mã tại Máy chủ: Khi nhận được dữ liệu, máy chủ sử dụng cùng masking key để giải mã dữ liệu. Máy chủ áp dụng cùng một phép XOR giữa dữ liệu đã mã hóa và masking key đ...
expert

expert

Gợi ý câu hỏi phỏng vấn

expert

Giải thích tại sao việc CDN không khả dụng có thể là vấn đề khi sử dụng WebSockets?

expert

Làm thế nào để bạn bảo mật giao tiếp WebSockets trong dự án của mình?

junior

Giải thích các tính năng chính của Socket.io

Bình luận

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

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