WebGPU (Web Graphics Processing Unit) là công nghệ mới nhất cho việc kết xuất đồ họa trong trình duyệt và thực hiện tính toán trên GPU, cung cấp cho các nhà phát triển khả năng truy cập vào tăng tốc phần cứng cho cả đồ họa 3D và tính toán hiệu suất cao. WebGPU là một bước tiến đáng kể so với các công nghệ trước đây như WebGL, vì nó mở ra quyền truy cập vào API cấp thấp, cho phép tạo ra các cảnh đồ họa phức tạp và thực hiện các phép toán tính toán cường độ cao với hiệu suất cao. Nhờ vào những khả năng này, WebGPU đã tìm thấy chỗ đứng của mình trong các hệ thống chống gian lận, nơi nó giúp theo dõi các đặc điểm độc đáo của thiết bị để xác định người dùng. ##### Lịch sử hình thành và mục đích của WebGPU WebGPU được phát triển bởi tổ chức W3C như một phản hồi cho nỗ lực cải thiện khả năng truy cập vào các tính năng của GPU cho các ứng dụng web. Tiêu chuẩn này được giới thiệu như một sự thay thế hiện đại và hiệu suất cao hơn cho WebGL và OpenGL, và cho phép sử dụng các khả năng của các API đồ họa hiện đại như Vulkan, Direct3D 12 và Metal thông qua trình duyệt. WebGPU đáng kể đơn giản hóa việc tích hợp với các tăng tốc phần cứng cho các tác vụ kết xuất và tính toán, điều này làm cho nó hữu ích không chỉ cho hiệu ứng hình ảnh, trò chơi và tính toán khoa học, mà còn cho các hệ thống chống gian lận, nơi dấu vân tay kỹ thuật số của thiết bị giúp trong việc xác định danh tính. ##### Các khả năng công nghệ của WebGPU WebGPU cung cấp cho các nhà phát triển những khả năng chính sau đây: - **Truy cập cấp thấp vào GPU:** WebGPU cho phép làm việc trực tiếp với sức mạnh tính toán của GPU, đảm bảo hiệu suất cao và kiểm soát các phép toán đồ họa. - **Hỗ trợ đồ họa 3D và 2D:** WebGPU có khả năng tạo ra cả mô hình và cảnh 3D đơn giản lẫn phức tạp, làm cho nó phù hợp cho các tác vụ yêu cầu nhiều tài nguyên. - **Shader và nhiệm vụ tính toán:** Trong WebGPU, có thể sử dụng các shader tùy chỉnh để tạo ra các kết cấu độc đáo và hiệu ứng hình ảnh chân thực, cũng như thực hiện các phép toán phức tạp trực tiếp trên GPU. Những đặc điểm này làm cho WebGPU trở thành một công cụ mạnh mẽ cho các nhà phát triển web, những người làm việc với các ứng dụng đồ họa và tính toán cường độ cao, cũng như cho các chuyên gia tạo ra các hệ thống chống gian lận. ##### WebGPU trong các hệ thống chống gian lận: bảo vệ khỏi gian lận Một trong những ứng dụng của WebGPU trong các hệ thống chống gian lận là tạo ra một dấu vân tay đồ họa độc đáo cho thiết bị. Dấu vân tay này xem xét cách phần cứng và trình điều khiển của thiết bị xử lý đồ họa và các tác vụ tính toán. Khác với Canvas và WebGL, WebGPU cung cấp các tùy chọn bổ sung để theo dõi, chẳng hạn như số lượng lõi tính toán GPU có sẵn, các phần mở rộng được hỗ trợ và các đặc điểm chính xác của việc xử lý shader, cho phép các hệ thống chống gian lận tạo ra các chữ ký kỹ thuật số độc đáo cho mỗi thiết bị. ##### WebGPU giúp xác định người dùng như thế nào? Việc kết xuất đồ họa và thực hiện tính toán bằng WebGPU có thể hoạt động khác nhau trên các thiết bị khác nhau tùy thuộc vào cấu hình phần cứng, GPU và trình điều khiển. Các khác biệt có thể được quan sát thấy trong hiệu suất tính toán, chất lượng kết xuất, hỗ trợ các tiện ích mở rộng và shader khác nhau. Những khác biệt này được sử dụng để tạo ra dấu vân tay duy nhất của thiết bị, khó bị làm giả. Các yếu tố chính ảnh hưởng đến tính độc đáo của dấu vân tay WebGPU: - **Mô hình và kiến trúc GPU:** Các mô hình GPU khác nhau xử lý các phép toán với tốc độ và độ chính xác khác nhau. - **Hỗ trợ các phần mở rộng và shader:*** Bộ mở rộng và thông số kỹ thuật thực thi shader có sẵn thay đổi tùy thuộc vào thiết bị. - **Cấu hình trình duyệt và driver:** Các đặc điểm của cấu hình trình duyệt và phiên bản driver cũng ảnh hưởng đến kết quả thực thi shader và tính toán. Những đặc điểm này cho phép các hệ thống chống gian lận tạo ra các dấu vân tay chính xác để phân biệt các thiết bị và phát hiện các nỗ lực thay đổi dữ liệu. ##### Phương pháp giả mạo dấu vân tay WebGPU Kẻ xấu cũng cố gắng vượt qua các dấu vân tay WebGPU bằng cách sử dụng các phương pháp giả mạo khác nhau. Các phương pháp phổ biến nhất bao gồm: - Thay đổi kết quả của các shader: Để giả mạo dấu vân tay, kẻ xấu có thể can thiệp vào hoạt động của các shader, thêm tiếng ồn hoặc thay đổi kết cấu để thay đổi hình ảnh cuối cùng và che giấu các đặc điểm của thiết bị. - Nhúng dữ liệu đã chuẩn bị sẵn: Phương pháp này bao gồm việc thay thế kết quả hoạt động của WebGPU bằng các dấu vết đã được ghi sẵn của các thiết bị khác. Những dữ liệu như vậy cho phép kẻ gian giả mạo hoạt động của các thiết bị khác, vượt qua các hệ thống chống gian lận. ##### Как антифрод-системы определяют подмену отпечатка WebGPU? Các hệ thống chống gian lận áp dụng một số phương pháp để phát hiện việc làm giả dấu vân tay WebGPU. Những cái chính bao gồm: - Phân tích kết quả tính toán và đồ họa: Các hệ thống có thể tạo ra nhiều bài kiểm tra, kết quả của chúng được so sánh để phát hiện sự sai lệch. Ví dụ, sự khác biệt nhỏ trong hiệu suất và chi tiết kết xuất có thể chỉ ra việc sử dụng dữ liệu giả mạo. - So sánh hiệu suất của các shader động: Sử dụng các shader động, hệ thống có thể buộc thiết bị thực hiện các nhiệm vụ độc đáo trong thời gian thực. Điều này làm cho việc giả mạo dấu vân tay trở nên khó khăn, vì kẻ xấu khó có thể tái tạo hành vi của thiết bị thật mà không có độ trễ đáng kể. Do đó, nhờ vào việc sử dụng WebGPU, các hệ thống chống gian lận có thể phát hiện các hoạt động đáng ngờ thông qua việc phân tích sâu hơn các đặc điểm của thiết bị và hành vi của chúng trong quá trình kết xuất và tính toán, điều này làm cho việc giả mạo dấu vân tay trở thành một nhiệm vụ khó khăn hơn. #### Dấu vân tay WebGPU Hãy xem các ví dụ về dữ liệu nào có thể được lấy từ trình duyệt bằng API WebGPU. Chúng ta sẽ chuyển đến trang browserleaks.com/webgpu Phần đầu tiên: Thông tin về bộ điều hợp  Phần thứ hai: Thông tin về giới hạn của bộ chuyển đổ  Phần ba: Các chức năng được hỗ trợ bởi bộ chuyển đổ  Phần thứ tư: Các định dạng kết cấu được hỗ trợ  Phần năm: Các khả năng ngôn ngữ được hỗ trợ của WGSL (WebGPU Shading Language).  Phần thứ sáu: Thông tin bổ sung về bộ chuyển đổi (định dạng ưa thích bgra8unorm, chế độ kênh alpha, chế độ hiển thị tông màu).  Hãy kiểm tra thông tin này trên trang thử nghiệm của chúng tôi, mở test-webapi.tech/webgpufull trong trình duyệt Chrome trên máy tính.[](/media/mdeditor/7_20241109133951583518.png)  Trên trang này, chúng ta thấy các bộ chuyển đổi có thể được hệ thống sử dụng: bộ chuyển đổi hiệu suất cao, bộ chuyển đổi tiết kiệm năng lượng, bộ chuyển đổi dự phòng. Phần Hỗ trợ Định dạng cũng không kém phần quan trọng, hãy kiểm tra các định dạng mà thiết bị máy tính để bàn và thiết bị di động hỗ trợ.  Một kiểm tra đơn giản các định dạng được hỗ trợ có thể xác định với độ chính xác cao liệu thiết bị là điện thoại di động hay máy tính để bàn. Cũng quan trọng để hiểu rằng người dùng thường chạy trình duyệt chống phát hiện trên các máy chủ thuê mà không có bộ điều hợp video và cố gắng trình bày trình duyệt chống phát hiện như một trình duyệt của thiết bị di động. Trong những trường hợp như vậy, các bài kiểm tra tương tự cho phép xác định rằng người dùng không có bộ điều hợp GPU, trong khi thiết bị di động thực tế sẽ cho kết quả như mong đợi:  Tính năng GPU ít hơn, nhưng giúp xác định người dùng. Giá trị phụ thuộc vào bộ điều hợp video và cài đặt trình duyệt. Trong ví dụ tiếp theo, có thể thấy rằng các tính năng có sự khác biệt trên các thiết bị khác nhau.  ##### Dấu vân tay hiệu suất WebGPU Hãy xem một ví dụ đơn giản về cách hệ thống chống gian lận có thể xác định người dùng bằng dấu vân tay hiệu suất WebGPU. Mở trang thử nghiệm của chúng tôi https://test-webapi.tech/webgpuperf trong trình duyệt Chrome trên máy tính.  Trên trang này trình bày thông tin về card đồ họa, thu được bằng hai API: WebGL và WebGPU, và kết quả của hai bài kiểm tra hiệu suất của bộ điều hợp GPU. Bài kiểm tra đầu tiên cho thấy thời gian khởi tạo bộ điều hợp và thời gian kết xuất. Bài kiểm tra thứ hai khác với bài kiểm tra đầu tiên ở chỗ chúng tôi đồng thời thêm tải trọng bổ sung lên bộ điều hợp. Hãy lặp lại thử nghiệm này trên các thiết bị khác:    Hãy so sánh dấu vân tay hiệu suất này với dấu vân tay từ trình duyệt Anti-Detect:  Bài kiểm tra trong trình duyệt chống phát hiện cho thấy kết quả ở mức độ của một card đồ họa hiệu suất cao, mặc dù thiết bị được tuyên bố là sử dụng bộ điều hợp Intel. Điều này được giải thích bởi vì trình duyệt chống phát hiện đang chạy trên máy tính của chúng tôi với card đồ họa Nvidia. Hãy kiểm tra hiệu suất trên các thiết bị di động khác nhau:   Theo kết quả của các bài kiểm tra trên các thiết bị khác nhau, có thể rút ra một số quan sát thú vị. Trên PC với GPU hiệu suất thấp, việc kết xuất thường diễn ra nhanh hơn so với các thiết bị di động hiện đại, điều này chứng tỏ vai trò quan trọng của phần cứng trong hiệu suất. Đồng thời, card đồ họa Radeon hoạt động khác biệt so với card Nvidia trong các bài kiểm tra tải cao, làm nổi bật sự khác biệt về kiến trúc và tối ưu hóa trình điều khiển. Trong khi đó, các card đồ họa Radeon trong các bài kiểm tra với tải trọng cao cho thấy kết quả khác biệt so với các card Nvidia, điều này nhấn mạnh sự khác biệt trong kiến trúc và tối ưu hóa driver. Tuy nhiên, cần lưu ý rằng kết quả kiểm tra có thể phụ thuộc đáng kể vào phiên bản trình duyệt, cũng như vào tải song song trong quá trình thực hiện bài kiểm tra. Một điểm thú vị là thời gian khởi tạo bộ điều hợp trên các thiết bị di động hiện đại trong hầu hết các trường hợp lại ngắn hơn so với trên máy tính để bàn. Trong bài kiểm tra của chúng tôi, chúng tôi đã cố gắng bao quát các đặc điểm hiệu suất chính để đảm bảo so sánh khách quan. Để phân chia chính xác hơn thời gian kết xuất theo các loại bộ chuyển đổi khác nhau, chúng tôi đã tiến hành các bài kiểm tra bổ sung, cho phép phân biệt rõ ràng hơn kết quả trên các bộ chuyển đổi hiệu suất cao và thấp, cũng như trên các thiết bị di động. Дữ liệu này đóng vai trò quan trọng trong việc cấu hình hệ thống chống gian lận và giúp tính toán chính xác hơn các đặc điểm của từng nền tảng. ##### Kết luận Trong bài viết này, chúng tôi đã tìm hiểu cách các hệ thống chống gian lận bằng công nghệ WebGPU có thể xác định người dùng và phát hiện lưu lượng gian lận. Cuối cùng, có thể lưu ý rằng việc sử dụng công nghệ WebGPU trong các hệ thống chống gian lận là một bước tiến đáng kể trong lĩnh vực bảo vệ chống gian lận trên internet. Nhờ vào hiệu suất cao và độ chính xác, công nghệ này cho phép xác định người dùng một cách hiệu quả, cũng như phát hiện chính xác lưu lượng truy cập gian lận. So sánh dữ liệu thu được bằng WebGPU và WebGL cho thấy những ưu điểm của nó trong việc xác định loại thiết bị, trình duyệt và phát hiện các nỗ lực giả mạo đặc điểm, điều này làm cho nó trở thành một công cụ không thể thiếu để đảm bảo an ninh mạng. Trong bối cảnh gia tăng các mối đe dọa mạng, việc phát triển thêm các giải pháp như vậy có thể nâng cao đáng kể hiệu quả trong cuộc chiến chống lại gian lận trực tuyến. Trong bài viết tiếp theo, chúng tôi sẽ tiếp tục phân tích các công nghệ trình duyệt được sử dụng trong các hệ thống chống gian lận. _Bannykh M.V._