Retour au Blog
Empreinte

Protection des empreintes WebGPU : controle de l'identite GPU avec BotBrowser

Comment BotBrowser controle les informations d'adaptateur WebGPU, fonctionnalites et limites via une protection d'empreinte basee sur les profils.

Le risque pour la vie privee

WebGPU, le successeur de WebGL, expose les details de l'adaptateur GPU, les ensembles de fonctionnalites et les limites materielles. Ces valeurs peuvent etre utilisees pour le suivi par empreinte.

Comment BotBrowser controle l'identite WebGPU

BotBrowser gere les signaux WebGPU au niveau du moteur du navigateur, assurant que les valeurs WebGPU sont coherentes avec le profil d'empreinte charge.

Controle WebGPU base sur les profils

Lors du chargement d'un profil, les informations d'adaptateur WebGPU, fonctionnalites et limites correspondent automatiquement :

chrome --bot-profile="/path/to/profile.enc" \
       --user-data-dir="$(mktemp -d)"

Configuration WebGPU explicite

Utilisez le flag --bot-config-webgpu pour un controle precis :

chrome --bot-profile="/path/to/profile.enc" \
       --bot-config-webgpu='{"vendor":"nvidia","architecture":"ampere","device":"geforce rtx 3080"}' \
       --user-data-dir="$(mktemp -d)"

Coherence WebGL et WebGPU

BotBrowser assure que l'identite GPU est coherente entre les APIs WebGL et WebGPU.

Controle GPU multiplateforme

Executez un profil configure pour un GPU NVIDIA discret sur une machine avec des graphiques Intel integres. BotBrowser assure que les deux APIs rapportent l'identite GPU du profil.

Verification

const { chromium } = require('playwright-core');

const browser = await chromium.launch({
  executablePath: '/path/to/botbrowser/chrome',
  args: ['--bot-profile=/path/to/profile.enc'],
  headless: true,
});

const page = await (await browser.newContext()).newPage();
const gpuInfo = await page.evaluate(async () => {
  const adapter = await navigator.gpu.requestAdapter();
  const info = await adapter.requestAdapterInfo();
  return {
    vendor: info.vendor,
    architecture: info.architecture,
    device: info.device,
    features: [...adapter.features],
    canvasFormat: navigator.gpu.getPreferredCanvasFormat(),
  };
});
console.log('WebGPU:', gpuInfo);
await browser.close();

Pour commencer

  1. Telechargez BotBrowser depuis GitHub
  2. Chargez un profil avec --bot-profile
  3. Utilisez --bot-config-webgpu pour une configuration WebGPU explicite
  4. Verifiez la coherence de l'identite GPU entre WebGL et WebGPU
#webgpu#fingerprinting#gpu#privacy#graphics