WebGL-Fingerprinting liest GPU-Hersteller, Modellbezeichnung und die exakte Rendering-Ausgabe direkt aus Ihrem Browser — ohne Cookies, ohne Gerätespeicherung. Der erzeugte Identifier ist browserübergreifend stabil und überlebt jede Cookie-Löschung. Nach der DSGVO gilt dieses Signal als personenbezogenes Datum, sofern es zur Wiedererkennung einer Person verwendet wird.
Was ist WebGL?
WebGL (Web Graphics Library) ist eine JavaScript-API, die 3D-Grafiken direkt im Browser ermöglicht — ohne Plugin. Sie basiert auf OpenGL ES und nutzt die GPU des Geräts. Jede GPU-Hersteller-Treiber-Kombination erzeugt dabei eine leicht andere Ausgabe, was Fingerprinting ermöglicht.
Zwei Arten von WebGL-Signalen
1. Renderer-Strings
Mit der Erweiterung WEBGL_debug_renderer_info kann JavaScript den genauen GPU-Namen auslesen:
const gl = canvas.getContext('webgl');
const ext = gl.getExtension('WEBGL_debug_renderer_info');
const vendor = gl.getParameter(ext.UNMASKED_VENDOR_WEBGL);
const renderer = gl.getParameter(ext.UNMASKED_RENDERER_WEBGL);
// Beispiel-Ausgaben:
// vendor: "Google Inc. (NVIDIA)"
// renderer: "ANGLE (NVIDIA, NVIDIA GeForce RTX 3080 Direct3D11 vs_5_0 ps_5_0)"Diese Strings enthalten oft den exakten GPU-Modellnamen, Treiber-Backend und manchmal sogar PCI-Geräte-IDs.
2. Pixel-Rendering (WebGL Pixel Hash)
Eine komplexere Methode rendert eine 3D-Szene mit GLSL-Shadern und liest die Pixelwerte per gl.readPixels() aus. Da GPUs Fließkommazahlen unterschiedlich runden, entstehen minimal abweichende Pixel — ein stabiler Hash.
Wie einzigartig ist WebGL-Fingerprinting?
| Merkmal | Wert |
|---|---|
| Eindeutigkeit (Desktop) | ~99,24 % |
| Browserübergreifend stabil | Ja (gleiche GPU) |
| Überlebt Cookie-Löschung | Ja |
| Ändert sich nach Hardware-Wechsel | Ja |
Eine NDSS-2017-Studie zur browserübergreifenden Fingerprinting zeigte, dass WebGL allein ausreicht, um denselben Nutzer über Chrome, Firefox und Safari hinweg zu identifizieren.
DSGVO und WebGL-Fingerprinting
Der GPU-Renderer-String identifiziert nicht nur die Hardware, sondern in Kombination mit anderen Signalen oft auch den Nutzer selbst. Das BSI (Bundesamt für Sicherheit in der Informationstechnik) empfiehlt für sensible Anwendungen den Einsatz von Browsern, die WebGL-Debugging-Erweiterungen deaktivieren. Websites, die WebGL-Daten zu Tracking-Zwecken erheben, müssen dies in ihrer Datenschutzerklärung offenlegen und benötigen in der Regel eine DSGVO-konforme Rechtsgrundlage.
Schutzmaßnahmen
- Firefox
privacy.resistFingerprinting: Maskiert Renderer-Strings und liefert generische Werte wie „Mozilla" / „Mozilla". - Brave Browser: Fügt WebGL-Rendering sitzungsgebundenes Rauschen (Farbling) hinzu — Renderer-Strings und Pixel-Hashes variieren pro Sitzung.
- WebGL deaktivieren: In Firefox via
about:config→webgl.disabled = true. Bricht jedoch viele legitime Web-Apps. - Tor Browser: Deaktiviert
WEBGL_debug_renderer_infovollständig.
WebGL auf whatsmy.fyi
Unser Fingerprint-Tool zeigt Ihnen Ihren WebGL-Vendor- und Renderer-String live — ohne Speicherung. Mehr über verwandte Signale erfahren Sie im Artikel zum WebGL-Pixel-Hash sowie in unserer Übersicht zum Browser-Fingerprinting.



