Canvas Fingerprinting
Canvas fingerprinting là một kỹ thuật kết xuất văn bản hoặc đồ họa lên một phần tử canvas của HTML5 rồi đọc lại dữ liệu pixel thu được để suy ra một mã định danh đặc thù của thiết bị. Những khác biệt nhỏ ở GPU, driver đồ họa, cách rasterize phông chữ và khử răng cưa khiến cùng một tập lệnh vẽ tạo ra những pixel khác nhau một cách tinh tế trên các máy khác nhau.
Canvas Fingerprinting hoạt động như thế nào
Một script tạo một canvas ngoài màn hình và phát ra các lệnh vẽ, thường là kết xuất một chuỗi văn bản bằng những phông chữ cụ thể cùng với hình khối, dải màu gradient và màu sắc. Trình duyệt chuyển những lệnh này cho ngăn xếp đồ họa, nơi các pixel chính xác được tạo ra phụ thuộc vào hệ điều hành, GPU, phiên bản driver và bộ hinting phông chữ.
Sau đó script gọi một phương thức như toDataURL hoặc getImageData để trích xuất buffer pixel đã kết xuất. Buffer này được băm thành một giá trị gọn nhẹ. Vì đường ống kết xuất khác nhau giữa các thiết bị, giá trị băm có xu hướng nhất quán cho một thiết bị và khác nhau giữa các thiết bị, khiến nó trở thành một tín hiệu phân biệt hữu ích.
Đầu ra canvas tương đối ổn định theo thời gian vì phần cứng và driver bên dưới ít khi thay đổi. Tuy nhiên, nó có thể dịch chuyển sau một lần cập nhật driver, một lần nâng cấp hệ điều hành, hoặc một thay đổi trong hành vi kết xuất của trình duyệt, nên nó thường được kết hợp với các tín hiệu khác thay vì tin dùng đơn lẻ.
Các công cụ bảo vệ quyền riêng tư và một số trình duyệt đối phó với canvas fingerprinting bằng cách thêm nhiễu ngẫu nhiên vào dữ liệu pixel hoặc bằng cách hỏi phép trước khi cho phép đọc lại. Bản thân sự nhiễu loạn có chủ đích này là có thể phát hiện được và có thể được xem như một tín hiệu riêng.
Vì sao Canvas Fingerprinting quan trọng đối với việc ngăn chặn gian lận
Canvas fingerprinting đóng góp thông tin entropy cao về phần cứng bên dưới, khiến nó có giá trị trong việc phân biệt những thiết bị mà nếu không thì trông giống hệt nhau ở cấp trình duyệt. Trong phòng chống gian lận, nó giúp phơi bày các trang trại máy tương tự nhau, các trình giả lập và các trình duyệt anti-detect vốn giả mạo những thuộc tính cấp cao nhưng không dễ giả được đường ống kết xuất thực. Đây là một tín hiệu chủ lực cho việc nhận diện thiết bị không cookie.
TRACIO xử lý điều này như thế nào
TRACIO dùng kết xuất canvas như một trong hơn 130 tín hiệu của mình, cân trọng số nó theo mức độ đặc trưng và ổn định mà nó thể hiện cho một khách truy cập nhất định thay vì coi nó như một ID duy nhất tự thân. Vì kẻ tấn công có thể tiêm nhiễu vào canvas, TRACIO đối chiếu nó với các tín hiệu kết xuất và phần cứng khác, để việc giả mạo một chiều không đánh bại được khả năng nhận diện. Nhờ đó việc nhận diện vẫn mạnh mẽ trong khi nuôi dưỡng điểm tin cậy tổng thể.
Thuật ngữ liên quan
Tìm hiểu thêm
Câu hỏi thường gặp
Nhận diện mọi thiết bị một cách tự tin
Bắt đầu với gói miễn phí 2,500 lượt gọi API mỗi tháng. Không cần thẻ tín dụng.