Device-Fingerprinting ohne Cookies: So funktioniert es
Cookies sterben aus. So liefert Device-Fingerprinting persistente Identifikation ohne jeglichen clientseitigen Speicher.
Das Cookie stirbt aus. Safaris Intelligent Tracking Prevention (ITP) begrenzt die Cookie-Lebensdauer auf 7 Tage. Firefox' Enhanced Tracking Protection blockiert Drittanbieter-Cookies vollständig. Chromes Privacy Sandbox schafft Drittanbieter-Cookies ab. GDPR-Einwilligungsanforderungen führen dazu, dass Nutzer Cookie-Banner zunehmend ablehnen.
Für die Betrugsprävention ist das ein Problem. Wenn Sie Geräte nicht persistent identifizieren können, können Sie Wiederholungstäter nicht verfolgen, Multi-Accounting nicht erkennen oder verdächtige Sitzungen nicht miteinander verknüpfen. Device-Fingerprinting löst dies, indem es Geräte anhand ihrer technischen Eigenschaften identifiziert — keine Cookies, kein localStorage, keinerlei clientseitiger Speicher.
Die Signalkategorien
Passives Fingerprinting (kein JavaScript erforderlich)
Bevor Ihre Seite überhaupt lädt, verrät der Browser Informationen über Signale auf Netzwerkebene:
TLS-Fingerprinting (JA4). Die TLS-Client-Hello-Nachricht enthält Cipher Suites, Erweiterungen, elliptische Kurven und Signaturalgorithmen. Wir verwenden JA4-Hashing — einen modernen Ersatz für JA3 mit besserer Granularität.
TCP/IP-Stack-Analyse. TCP-Fenstergröße, TTL-Werte und MSS-Einstellungen variieren über Betriebssysteme hinweg. Linux, Windows und macOS haben jeweils charakteristische TCP-Stack-Konfigurationen.
HTTP-Header-Analyse. Header-Reihenfolge, Accept-Language-Werte und Verbindungspräferenzen unterscheiden sich zwischen Browsern.
Aktives Fingerprinting (clientseitiges JavaScript)
Canvas-Fingerprinting. Wir zeichnen eine sorgfältig gestaltete Szene — bestimmten Text, geometrische Formen und Verläufe. Unterschiedliche GPUs rendern diese mit subtilen Unterschieden auf Pixelebene aufgrund von Anti-Aliasing, Sub-Pixel-Rendering und Variationen der Farbmischung. Wir hashen die Pixeldaten.
WebGL-Fingerprinting. WebGL legt GPU-Vendor-/Renderer-Strings, maximale Texturgrößen, unterstützte Erweiterungen und Shader-Fähigkeiten offen. Diese Daten identifizieren GPU-Modell und Treiberversion stark.
AudioContext-Fingerprinting. Wir erzeugen ein Testsignal und analysieren, wie es verarbeitet wird. Unterschiedliche Audio-Hardware erzeugt messbar unterschiedliche Ausgaben aufgrund von Unterschieden in der Fließkomma-Präzision.
Font-Enumeration. Verfügbare Systemschriftarten variieren je nach OS, Sprachpaket und installierter Software. Wir testen mit Canvas-Messtechniken auf ~300 diagnostische Schriftarten.
Navigator-Eigenschaften. CPU-Kerne, Gerätespeicher, Plattform, Sprache, Zeitzone, Bildschirmauflösung, Farbtiefe, Zeiger- und Touch-Fähigkeiten.
Entropie-Analyse
Nicht alle Signale tragen gleiches Gewicht. Wir messen die Entropie jedes Signals:
| Signalkategorie | Ungefähre Entropie |
|---|---|
| Canvas + WebGL kombiniert | ~18 Bit |
| Schriftliste | ~8 Bit |
| AudioContext | ~5 Bit |
| Navigator-Eigenschaften | ~7 Bit |
| TLS-Fingerprint | ~6 Bit |
| Bildschirm + Display | ~4 Bit |
| Zeitzone + Sprache | ~3 Bit |
Kombiniert liefern unsere 130+ Signale rund 50+ Bit Entropie — genug, um über 1 Billiarde eigenständige Geräte eindeutig zu identifizieren.
Von Signalen zum stabilen Hash
Die reine Signalerfassung ist nur die halbe Aufgabe. Browser-Updates ändern User-Agent-Strings. Treiber-Updates verändern WebGL-Parameter. Font-Installationen ändern die Schriftliste.
Fuzzy Matching
Statt exakte Übereinstimmungen zu verlangen, nutzen wir einen Fuzzy-Matching-Algorithmus, der Signale nach Stabilität und Entropie gewichtet. Stabile Signale (Canvas, GPU-Modell) tragen mehr Gewicht als volatile Signale (User Agent, Bildschirmauflösung).
Die Kandidatengenerierung verwendet Locality-Sensitive Hashing (LSH) auf den stabilsten Signalen, um potenzielle Matches zu identifizieren. Die Ähnlichkeitsbewertung berechnet einen gewichteten Wert über alle Signalkategorien, kalibriert so, dass normale Geräteänderungen die Besucher-ID nicht ändern, tatsächliche Geräteänderungen hingegen schon.
Dies erreicht 99.5% Genauigkeit — die korrekte Identifikation wiederkehrender Besucher über Browser-Updates, Cookie-Löschungen, Inkognito-Modus und Browser-Wechsel hinweg.
Datenschutzfreundliche Architektur
Serverseitige Verarbeitung. Die gesamte Fingerprint-Berechnung geschieht auf unseren Servern. Der clientseitige Agent erfasst rohe Signale, berechnet oder speichert aber nicht den Fingerprint-Hash.
Keine PII-Speicherung. Wir speichern Fingerprint-Hashes, nicht rohe Signale. Der Hash ist eine Einwegfunktion.
Datenresidenz. Daten von EU-Kunden werden in EU-Rechenzentren verarbeitet und gespeichert. GDPR Artikel 6(1)(f) deckt Betrugsprävention als berechtigtes Interesse ab.
Browserübergreifende Identifikation
Die schwierigste Herausforderung ist die Identifikation desselben Geräts über verschiedene Browser hinweg. Wir stützen uns auf browserunabhängige Signale: GPU-Hardware, Bildschirmeigenschaften, Zeitzone, Spracheinstellungen, installierte Schriftarten (auf OS-Ebene) und TCP/IP-Stack-Eigenschaften.
Die Genauigkeit der browserübergreifenden Verknüpfung liegt bei etwa 94% — niedriger als die Identifikation innerhalb desselben Browsers, aber ausreichend, um Multi-Accounting über Browser hinweg auf demselben Gerät zu erkennen.
Integration
Das Hinzufügen von Device-Fingerprinting erfordert drei Zeilen Code. Der Agent lädt asynchron, erfasst Signale in unter 50ms und sendet sie an unsere API. Die Serverantwort umfasst Besucher-ID, Konfidenzwert und alle 24 Smart Signals.