HideGuardTài liệu

Bắt đầu · Bắt đầu

Cách hoạt động

Đường đi của một lượt truy cập: trình duyệt, ingest, chấm điểm, phán quyết.

Một lượt truy cập đi qua bốn chặng. Biết chặng nào làm gì là cách nhanh nhất để đọc được một con số bất thường trên dashboard.

Trình duyệt đo#

SDK chạy khi trang tải. Nó đọc những thứ một trình duyệt thật khó giả cùng lúc: canvas, WebGL, audio, phông chữ, hình học văn bản, múi giờ, ngôn ngữ, màn hình, thiết bị nhập.

Điểm mấu chốt không phải từng giá trị riêng lẻ, mà là chúng có nhất quán với nhau không. Một trình duyệt khai báo macOS nhưng dựng chữ theo cách của Windows đã tự mâu thuẫn, và mâu thuẫn mới là thứ khó dựng.

Nếu một phép đo không chạy được — API bị chặn, ngữ cảnh bị từ chối — nó được ghi là chưa đo. Nó không bao giờ được quy thành bình thường.

Collector chấm điểm#

Trình duyệt gửi kết quả tới POST /api/v1/collect. Máy chủ:

  1. Dựng visitor ID từ các phép đo ổn định. IP không phải đầu vào — xem Visitor ID.
  2. Tra địa chỉ trong cơ sở dữ liệu danh tiếng trên đĩa: proxy, VPN, Tor, datacenter, lịch sử lạm dụng.
  3. Chạy từng luật. Luật nào kích hoạt sẽ sinh một reason có mã, mức độ và trọng số.
  4. Cộng trọng số thành điểm, so với ngưỡng, ra phán quyết.
  5. Lưu tín hiệu thô — không bao giờ lưu phán quyết.

Phản hồi được ký bằng Ed25519, nên backend của bạn phân biệt được phản hồi của chúng tôi với phản hồi do chính người truy cập tự viết. Xem Xác minh phản hồi.

Trang nhận phán quyết#

SDK phát sự kiện fpc:verdict, và nếu bật data-block thì vẽ màn chặn. Đây là tầng cho người dùng thật thấy chuyện gì đang xảy ra, không phải tầng bảo vệ.

Máy chủ của bạn hỏi lại#

Trước khi chấp nhận thứ gì quan trọng, backend của bạn gọi POST /api/v1/verdict. Hai tình huống:

  • Đã biết trình duyệt này — lượt truy cập đã lưu trả lời, cộng thêm danh sách chặn của người vận hành. Trả về source: "visit".
  • Chưa biết — chấm từ user agent, địa chỉ và header mà bạn chuyển tiếp. Ít dữ liệu hơn nhiều, nhưng đủ chặn curl. Trả về source: "request".

Không có tra cứu IP ra bên ngoài ở bước này. Danh tiếng địa chỉ được đọc từ lượt truy cập đã lưu, vì đặt một bên thứ ba vào đường đi của trang thanh toán là đặt thời gian chết của họ vào doanh thu của bạn.

Những gì chạy sau đó#

  • Heartbeat — trang đập nhịp về mỗi 15 giây để dashboard đếm được bao nhiêu trang đang mở. Nó không phải lượt truy cập và không bao giờ được chấm điểm.
  • Hành vi — con trỏ, cú nhấp, cuộn, chuyển tiêu điểm, được giữ trong bộ nhớ và gửi kèm lần collect vốn đã diễn ra. Nó không thêm request nào khi người dùng đang ở trên trang.
  • Webhook — nếu bạn đăng ký, mỗi lượt truy cập được ghi sẽ gửi tới endpoint của bạn.