WebGPU (Web Graphics Processing Unit) es la última tecnología para renderizar gráficos en los navegadores y realizar cálculos en las GPU, lo que ofrece a los desarrolladores la posibilidad de acceder a la aceleración por hardware tanto para gráficos 3D como para computación de alto rendimiento. WebGPU supone un importante paso adelante con respecto a tecnologías anteriores como WebGL, ya que abre el acceso a una API de bajo nivel que permite crear escenas gráficas complejas y ejecutar cálculos intensivos con gran eficiencia. Con estas capacidades, WebGPU también ha encontrado su lugar en los sistemas antifraude, donde ayuda a rastrear características únicas de los dispositivos para identificar a los usuarios. ##### Historia y finalidad de WebGPU WebGPU fue desarrollado por el consorcio W3C como respuesta al deseo de mejorar el acceso a las capacidades de la GPU para aplicaciones web. El estándar se presentó como una alternativa más eficaz y moderna a WebGL y OpenGL, y permite utilizar las capacidades de APIs gráficas modernas como Vulkan, Direct3D 12 y Metal a través del navegador. WebGPU simplifica enormemente la integración con aceleraciones de hardware para tareas de renderizado y computación, lo que la hace útil no sólo para efectos visuales, juegos y computación científica, sino también para sistemas antifraude en los que la huella digital de un dispositivo ayuda en la identificación. ##### Capacidades de la tecnología WebGPU WebGPU proporciona a los desarrolladores las siguientes funciones clave: - **Acceso de bajo nivel a la GPU:** WebGPU permite trabajar directamente con la capacidad de procesamiento de la GPU, lo que proporciona alto rendimiento y control sobre el cálculo de gráficos. - Soporte de gráficos 3D y 2D:** WebGPU es capaz de crear modelos y escenas 3D simples y complejos, lo que la hace adecuada para tareas que consumen muchos recursos. - Sombreadores y tareas de cálculo:** WebGPU puede utilizar sombreadores personalizados para crear texturas únicas y efectos visuales realistas, así como realizar cálculos complejos directamente en la GPU. Estas funciones convierten a WebGPU en una potente herramienta para los desarrolladores web que trabajan en aplicaciones de alta carga gráfica y computacional, así como para los profesionales que crean sistemas antifraude. ##### WebGPU en sistemas antifraude: protección contra el fraude Una de las aplicaciones de WebGPU en sistemas antifraude es la creación de una huella gráfica única del dispositivo. Esta huella digital tiene en cuenta cómo el hardware y los controladores del dispositivo gestionan las tareas gráficas y computacionales. A diferencia de Canvas y WebGL, WebGPU proporciona parámetros adicionales de los que hacer un seguimiento, como el número de núcleos de cálculo de GPU disponibles, las extensiones compatibles y las características precisas de procesamiento de shaders, lo que permite a los sistemas antifraude crear firmas digitales únicas para cada dispositivo. ##### ¿Cómo ayuda la WebGPU a identificar al usuario? El renderizado de gráficos y la realización de cálculos mediante WebGPU pueden tener un rendimiento diferente en distintos dispositivos en función de la configuración del hardware, la GPU y el controlador. Las diferencias pueden observarse en el rendimiento de los cálculos, la calidad del renderizado y la compatibilidad con distintas extensiones y sombreadores. Estas diferencias se utilizan para crear una huella digital única del dispositivo que es difícil de falsificar. Los factores clave que influyen en la singularidad de una huella digital WebGPU son: - **Modelo y arquitectura de la GPU:** Los distintos modelos de GPU procesan los cálculos a diferentes velocidades y con distinta precisión. - **Soporte de extensiones y shaders:**El conjunto de extensiones disponibles y las especificaciones de ejecución de shaders varían de un dispositivo a otro. - **Configuración del navegador y los controladores:** Las particularidades de la configuración del navegador y las versiones de los controladores también afectan a los resultados de la ejecución y el cálculo de los sombreadores. Estas características permiten a los sistemas antifraude crear huellas dactilares precisas para identificar de forma exclusiva los dispositivos y detectar intentos de suplantación de datos. ##### Técnicas de suplantación de huellas digitales de WebGPU Los atacantes también intentan eludir las huellas dactilares de WebGPU utilizando diversos métodos de suplantación. Algunos de los más comunes son - Alteración de los resultados de los shaders: para falsificar las huellas digitales, los atacantes pueden interferir en los shaders añadiendo ruido o alterando las texturas para cambiar la imagen final y ocultar las características del dispositivo. - Inyección de datos pregrabados: esta técnica consiste en falsear los resultados de la WebGPU con huellas pregrabadas de otros dispositivos. Estos datos permiten a los estafadores imitar el rendimiento de otros dispositivos, eludiendo los sistemas antifraude. ##### ¿Cómo detectan los sistemas antifraude la suplantación de huellas dactilares de WebGPU? Los sistemas antifraude utilizan varios métodos para detectar la suplantación de huellas dactilares de WebGPU. Los principales son - Análisis de los resultados computacionales y de representación gráfica: los sistemas pueden generar múltiples pruebas, cuyos resultados se comparan para identificar valores atípicos. Por ejemplo, pequeñas diferencias en el rendimiento y los detalles de renderizado pueden indicar el uso de datos espurios. - Comparación del rendimiento de los sombreadores dinámicos: mediante el uso de sombreadores dinámicos, los sistemas pueden forzar al dispositivo a realizar tareas únicas en tiempo real. Esto dificulta la falsificación de huellas, ya que es difícil para los atacantes reproducir el comportamiento de un dispositivo real sin una latencia significativa. Así, mediante el uso de WebGPU, los sistemas antifraude pueden identificar actividades sospechosas a través de un análisis más profundo de las características del dispositivo y de su comportamiento de renderizado y computación, lo que dificulta la falsificación de huellas dactilares. #### Huella dactilar de WebGPU Veamos algunos ejemplos de los datos que se pueden recuperar de un navegador utilizando la API WebGPU. Vamos a la página browserleaks.com/webgpu Sección Uno: Información del Adaptador  Sección dos: Información sobre el límite del adaptador  Sección tres: Funciones compatibles con el adaptador  Sección cuatro: Formatos de textura compatibles  Sección Cinco: Características del lenguaje WGSL (WebGPU Shading Language) soportadas.  Sección Seis: Información adicional del adaptador (formato bgra8unorm preferido, modo de canal alfa, modo de mapeado de tonos).  Verifiquemos esta información en nuestra página de prueba abriendo test-webapi.tech/webgpufull en el navegador Chrome de un ordenador   En esta página vemos los adaptadores que puede utilizar el sistema: adaptador de alto rendimiento, adaptador de bajo consumo, adaptador de espera. La sección de soporte de formatos es igualmente importante, comprobemos qué formatos soportan los dispositivos de sobremesa y los dispositivos móviles  Simplemente comprobando los formatos compatibles se puede determinar con gran exactitud si un dispositivo es un teléfono móvil y un ordenador de sobremesa. También es importante comprender que a menudo los usuarios ejecutan navegadores antidetección en servidores alquilados sin adaptador de vídeo e intentan presentar el navegador antidetección como un navegador de dispositivo móvil. En tales casos, estas pruebas permiten determinar que el usuario no dispone de un adaptador de GPU, mientras que un dispositivo móvil real mostrará los resultados esperados:  GPU Características en menor medida, pero ayuda a identificar a los usuarios. Los valores dependen del adaptador de vídeo y de la configuración del navegador. Puedes ver en el siguiente ejemplo que las Características tienen diferencias en distintos dispositivos.  ##### Huella de rendimiento de WebGPU Veamos un ejemplo sencillo de cómo los sistemas antifraude pueden identificar a los usuarios utilizando la huella de rendimiento WebGPU Abramos nuestra página de prueba https://test-webapi.tech/webgpuperf en el navegador Chrome de un ordenador  Esta página muestra información sobre la tarjeta gráfica, obtenida mediante dos API: WebGL y WebGPU, y los resultados de dos pruebas de rendimiento del adaptador de GPU. La primera prueba muestra el tiempo de inicialización del adaptador y el tiempo de renderizado. La segunda prueba difiere de la primera en que añadimos una carga adicional en el adaptador al mismo tiempo. Repitamos esta prueba en otros dispositivos:    Comparemos esta huella de rendimiento con la de Anti-Detect Browser:  La prueba anti-detect-browser muestra resultados al nivel de una tarjeta de vídeo de alto rendimiento, a pesar de que se afirma que el dispositivo utiliza un adaptador Intel. Esto se debe a que el navegador antidetección se está ejecutando en nuestro ordenador con una tarjeta gráfica Nvidia. Comprobemos el rendimiento en diferentes dispositivos móviles:   Basándome en los resultados de las pruebas que he realizado en varios dispositivos, se pueden hacer algunas observaciones interesantes. En los PC con GPU de gama baja, el renderizado suele ser más rápido que en los dispositivos móviles modernos, lo que confirma el importante papel del hardware en el rendimiento. Al mismo tiempo, las tarjetas gráficas Radeon se comportan de forma diferente a las Nvidia en las pruebas de carga alta, lo que pone de manifiesto las diferencias en la arquitectura y optimización de los controladores. Sin embargo, cabe destacar que los resultados de las pruebas pueden depender significativamente de la versión del navegador, así como de la carga concurrente durante la prueba. Un dato curioso es que el tiempo de inicialización del adaptador en los dispositivos móviles modernos es, en la mayoría de los casos, más corto que en los PC. En nuestra prueba, nuestro objetivo era cubrir las principales características de rendimiento para ofrecer una comparación imparcial. Para distinguir mejor los tiempos de renderizado entre distintos tipos de adaptadores, realizamos pruebas adicionales más adelante para diferenciar mejor entre adaptadores de alto y bajo rendimiento, así como entre dispositivos móviles. Estos datos desempeñan un papel importante a la hora de personalizar los sistemas antifraude y ayudan a tener mejor en cuenta las peculiaridades de cada plataforma. ##### Conclusión En este artículo hemos aprendido cómo los sistemas antifraude que utilizan la tecnología WebGPU pueden identificar usuarios y detectar tráfico fraudulento. En conclusión, el uso de la tecnología WebGPU en sistemas antifraude representa un importante paso adelante en el campo de la protección contra el fraude en línea. Gracias a su alto rendimiento y precisión, esta tecnología puede identificar eficazmente a los usuarios, así como detectar con precisión el tráfico froid. Una comparación de los datos de WebGPU y WebGL demuestra sus ventajas a la hora de identificar el tipo de dispositivo, el tipo de navegador y los intentos de suplantación de identidad, lo que la convierte en una herramienta indispensable para la seguridad en línea. Ante el aumento de las ciberamenazas, un mayor desarrollo de este tipo de soluciones puede mejorar significativamente la eficacia de la lucha contra el fraude en línea. En el próximo artículo continuaremos el análisis de las tecnologías de navegación utilizadas en los sistemas antifraude. _Bannykh M.V._