Chromium bindet die Audio-Variation an die Domain statt an das Profil. Dieser Beitrag erklärt die praktische Auswirkung, wo NimbusX darauf hinweist und welche Änderung die Einschränkung beseitigt. Es ist das einzige gemessene Signal, das wir noch nicht nach Profil getrennt haben.
Ein Prüfwerkzeug schickt ein kurzes Signal durch Web Audio und bildet aus dem Ergebnis einen Hash. Hardware und Treiber verursachen kleinste Unterschiede, sodass der Hash als Merkmal eines Rechners dienen kann. Zwei physische Computer erzeugen verschiedene Werte, ähnlich wie bei Canvas. NimbusX erfasst den Profilwert als Tabelle aus 108 Web-Audio-Konstanten.
Unsere Engine variiert das Audio-Ergebnis, bindet diese Variation jedoch an die Domain: Dieselbe Website erhält von allen Profilen auf diesem Rechner denselben Hash. Audio unterscheidet diese Profile daher nicht. Die benachbarten Signale haben diese Einschränkung nicht:
| Kanal | Auf demselben Rechner identisch | Grund |
|---|---|---|
| Canvas | Nein | an den Profil-Seed gebunden |
| WebGL | Nein | durch die Gerätekonfiguration festgelegt |
| Audio | Ja | Variation an die Domain, nicht an das Profil gebunden |
Zwei physische Rechner erzeugen verschiedene Audio-Hashes; zwei NimbusX-Profile auf demselben Rechner derzeit nicht. Unter allen gemessenen Signalen ist dies die einzige verbleibende Möglichkeit, sie zu verknüpfen.
Das ursprüngliche Engine-Projekt führt dies als bekannte Einschränkung origin-invariant. Die Lösung besteht darin, die Variation im Patch an das Profil statt an die Domain zu binden: 001-farble-seed-core. Dafür ist eine eigene NimbusX-Version der Engine erforderlich. Der Umfang ist klar: Es geht um eine Änderung in einem Patch, nicht um eine neue Engine. Bis diese Version verfügbar ist, gilt die obige Empfehlung weiter.
Sobald der Patch ausgeliefert ist, wird Audio wie Canvas und WebGL nach Profil getrennt. Damit entfällt die letzte gemessene Verbindung zwischen Profilen auf demselben Rechner.
Wie Prüfseiten Browserprofile verknüpfen · Konsistenz zählt mehr als Menge