Nếu bạn vận hành nhiều tài khoản, chắc hẳn bạn từng được nhắc rằng "thông tin card đồ họa là một trong những dấu vân tay trọng điểm", nhưng ít ai nói cho bạn biết nó bị lộ chính xác như thế nào và vì sao khó phòng đến vậy.
Một tình huống thực tế: bạn đăng nhập cửa hàng A bằng Chrome và cửa hàng B bằng Edge trên cùng một máy tính, nghĩ rằng "đổi trình duyệt rồi thì chắc chắn không sao". Vậy mà nền tảng vẫn xác định hai tài khoản có liên kết — vì Chrome và Edge dùng cùng một GPU và báo lên đúng cùng một mẫu card đồ họa.
"Mẫu card đồ họa" đó chính là dấu vân tay WebGL.
Dấu vân tay WebGL là định danh phần cứng do trình duyệt thu thập thông qua khả năng kết xuất GPU — không như Canvas "vẽ hình rồi đo khác biệt pixel", WebGL trực tiếp hỏi GPU của bạn tên và thông số. Dấu vân tay trình duyệt được tạo từ hàng chục tham số (nguyên lý tổng thể nằm trong bàigiải thích này), và WebGL là mục "thành thật" nhất: nó gần như không cho bạn cơ hội ngụy trang.
Dấu vân tay Canvas là "đo gián tiếp" — bắt bạn vẽ một bức tranh rồi so sánh chi tiết pixel; dấu vân tay WebGL là "tự khai báo trực tiếp" — trình duyệt chỉ đơn giản hỏi GPU hãng và mẫu. Cái trước dựa vào đoán, cái sau dựa vào hỏi.
Nên nếu nền tảng muốn chọn một "bằng chứng liên kết dễ nhất", WebGL luôn đứng đầu danh sách.
Toàn bộ quá trình thu thập chỉ cần một dòng JavaScript, hoàn tất trong hai bước:
WEBGL_debug_renderer_info và đọc hai trường: UNMASKED_VENDOR_WEBGL (hãng GPU, ví dụ "NVIDIA Corporation") và UNMASKED_RENDERER_WEBGL (mẫu GPU, ví dụ "NVIDIA GeForce GTX 1650 / PCIe / SSE2"). Hai trường này là giá trị gốc "chưa che", Chrome, Firefox, Edge đều cho phép đọc mặc định.Có một chi tiết nhiều người không biết:đổi trình duyệt không có tác dụng. Chrome, Edge, Firefox có nhân khác nhau, nhưng bên dưới đều gọi cùng một driver GPU. Lần đầu tôi dùng Chrome và Edge lần lượt kiểm tra thông tin WebGL của cùng một máy, mẫu card đồ họa giống hệt từng ký tự — đổi hết trình duyệt, nhưng phần cứng vẫn là phần cứng đó.

Nhiều người chỉ biết "mẫu card đồ họa sẽ bị thu thập", nhưng không rõ chính xác những trường nào bị thu thập. Tôi tổng hợp danh sách tham số mà các trang kiểm tra sẽ đọc:
| Trường | Giá trị ví dụ | Mô tả |
|---|---|---|
| Hãng GPU | NVIDIA Corporation | Từ UNMASKED_VENDOR_WEBGL |
| Mẫu GPU | NVIDIA GeForce GTX 1650 / PCIe / SSE2 | Từ UNMASKED_RENDERER_WEBGL; kèm cả cổng kết nối và tập lệnh |
| Phiên bản GLSL | OpenGL ES GLSL 3.00 | Phiên bản ngôn ngữ shader; phản ánh tổ hợp khả năng của trình duyệt và driver |
| Độ chính xác shader | Highp / Mediump / Lowp | Các GPU khác nhau hỗ trợ dải độ chính xác khác nhau |
| Kích thước texture tối đa | 16384 | Giới hạn khả năng texture của GPU; càng cao thì GPU càng mạnh |
| Danh sách extension | ANGLE_instanced_arrays v.v. | Danh sách extension WebGL được hỗ trợ |
| Tầng ANGLE | ANGLE (NVIDIA, ...) | Chrome dịch yêu cầu WebGL sang API đồ họa nền qua ANGLE; phiên bản tầng dịch cũng bị lộ |
Hiểu bảng này, bạn sẽ thấy vì sao biện pháp thông thường như "đổi UA" hoàn toàn vô dụng trước WebGL — nó đọc tham số phần cứng thật, không phải lời khai báo của trình duyệt. Tầng ANGLE dễ bị bỏ qua nhất: nó đóng vai "người phiên dịch" giữa trình duyệt và GPU, và phiên bản cùng cách triển khai của người phiên dịch tự thân đã là một mẩu thông tin dấu vân tay độc lập.
Vì nó quá hữu dụng trong phát hiện liên kết:
Đây cũng là lý do khi hệ thống rủi ro xác định liên kết, WebGL thường được dùng cùng Canvas và danh sách phông chữ như "nhóm bằng chứng cốt lõi".
Mức độ sát thương của chuỗi bằng chứng này cũng khác nhau theo ngành: với người bán thương mại điện tử xuyên biên giới đăng nhập nhiều cửa hàng trên cùng một thiết bị, thông tin GPU giống nhau chính là bằng chứng liên kết chắc chắn; với mạng xã hội nuôi hàng loạt tài khoản, hàng chục tài khoản báo cùng một card đồ họa khác nào tự lộ "đằng sau là cùng một đội ngũ"; với quảng cáo chạy nhiều tài khoản thử nghiệm nội dung, một khi tài khoản bị liên kết, ngân sách và nhịp tăng lượng đều bị đảo lộn. Dù ngành nào, một khi số tài khoản tăng lên, WebGL là cái ngưỡng không thể né.
Muốn xem card đồ họa của mình trông thế nào trong mắt trình duyệt, hai bước là đủ:
Thông tin hoạt động của MasBrowser sau khi khởi động môi trường, hiển thị trạng thái Fingerprint protection: Enabled

Ý nghĩa của việc kiểm tra là: nếu bạn đăng nhập nhiều tài khoản bằng trình duyệt thường, thông tin WebGL của mọi tài khoản hoàn toàn giống nhau — đó là một trong những bằng chứng mạnh nhất mà nền tảng dùng để xác định liên kết.
Không cần proxy, không cần công cụ phụ — bạn có thể xác minh cô lập WebGL có hoạt động hay không hoàn toàn tại chỗ:
Việc xác minh này không liên quan gì đến IP hay proxy — dù hai môi trường dùng chung một đường ra mạng, thông tin GPU vẫn được cô lập, và đó chính là ý nghĩa của bảo vệ WebGL.
Trước tiên xem vài cách "nhìn có vẻ hữu dụng nhưng thực ra không":
Hướng thực sự hiệu quả làáp "lớp che" ở tầng WebGL: cho trình duyệt trả về một định danh khác GPU thật, hoặc ngẫu nhiên hóa các tham số kết xuất. Trình duyệt vân tay đã biến việc này thành công tắc — lấyMasBrowser làm ví dụ: khi tạo môi trường, tìm các tùy chọn liên quan WebGL trong cài đặt vân tay, chọn "Ngẫu nhiên" để tạo một cấu hình GPU hợp lý, hoặc tùy chỉnh theo các mẫu card đồ họa phổ biến ở khu vực mục tiêu.
Sau khi bật, hãng và mẫu WebGL của mỗi môi trường được tạo độc lập, nền tảng không thể nối nhiều tài khoản qua "cùng một card đồ họa" nữa. Cấu hình đầy đủ môi trường độc lập và cô lập vân tay có thể xem tạitrang quản lý đa tài khoản an toàn MasBrowser.
Trong thao tác thực tế có một điểm dễ bỏ qua:cấu hình GPU được tạo ngẫu nhiên phải "hợp lý". Ví dụ proxy IP cho thấy khu vực mục tiêu là Mỹ, ngẫu nhiên ra một mẫu card đồ họa chỉ bán ở Trung Quốc thì lại thành cố tình. Cách an toàn là chọn "Ngẫu nhiên" rồi tự kiểm tra một lượt, hoặc trực tiếp tùy chỉnh theo mẫu card đồ họa chủ lực của thị trường mục tiêu.
Hai chi tiết nữa đáng lưu ý: một là laptop thường có cả GPU tích hợp và GPU rời, kết quả kiểm tra có thể thay đổi theo chính sách driver và trạng thái nguồn, sau khi tạo môi trường hạn chế chuyển đổi chế độ hiệu năng liên tục để giữ vân tay ổn định; hai là sau khi Windows cập nhật driver card đồ họa, dấu vân tay WebGL có thể thay đổi, nếu tài khoản đã chạy ổn định một thời gian, hạn chế đụng vào driver trong giai đoạn vận hành để tránh "môi trường đột biến" kích hoạt hệ thống rủi ro.
Có, nhưng cực hiếm. Thông tin WebGL chỉ thay đổi khi bạn thay GPU hoặc cài lại driver card đồ họa (cập nhật phiên bản lớn); trong dùng hàng ngày nó ổn định. Đây cũng là lý do nền tảng dám theo dõi nó lâu dài.
Được, nhưng cái giá lớn — nhiều trang web (bản đồ, hiển thị 3D, một phần xác minh quảng cáo) phụ thuộc kết xuất WebGL, tắt đi thì chức năng trang bị hạn chế thậm chí không tải được. So sánh thì dùng trình duyệt vân tay để "che" là giải pháp thanh lịch hơn.
Trong trình duyệt vân tay, thứ thay đổi là "định danh GPU báo lên trang web", không phải driver card đồ họa thật, nên kết xuất 3D trên trang web vẫn diễn ra bình thường, không ảnh hưởng chức năng.
WebGPU là API tính toán GPU thế hệ mới, có thể lộ thông tin phần cứng chi tiết hơn WebGL, trong tương lai sẽ trở thành một chiều dấu vân tay mới. Hiện tại hầu hết trang web vẫn dựa vào WebGL, nhưng chú ý sớm đến bảo vệ WebGPU là cần thiết.
Dấu vân tay WebGL là mục "biết nói dối ít nhất" trong dấu vân tay trình duyệt — nó không dựa vào điều bạn khai báo, mà trực tiếp đọc danh tính thật của card đồ họa bạn. Với người dùng thường, nó là rủi ro quyền riêng tư; với người vận hành nhiều tài khoản, nó là "bằng chứng chính" để xác định liên kết, xử lý không tốt thì cả loạt tài khoản bị dọn sạch.
May thay, khả năng này có thể che chắn bằng trình duyệt vân tay. Bản miễn phí đã có 2 hạn mức môi trường,tải MasBrowser, tạo một môi trường cấu hình ngẫu nhiên hóa WebGL, rồi ra trang kiểm tra so sánh — bạn sẽ thấy trực quan thông tin card đồ họa bị cô lập như thế nào.