Checksumme aus Systemangaben
pl
- javascript
moin,
JS liefert so Einiges wie Bildschirmauflösung, Zeitzone usw. Ich habe bis jetzt
dat.getTimezoneOffset()
screen.height
screen.width
navigator.appName
navigator.appVersion
navigator.language
navigator.platform
navigator.cookieEnabled
navigator.mimeTypes.length
navigator.plugins.length
zum Ermitteln einer Checksumme. Gibt es da noch mehr? MFG
Tach!
JS liefert so Einiges wie Bildschirmauflösung, Zeitzone usw. Ich habe bis jetzt [...] zum Ermitteln einer Checksumme. Gibt es da noch mehr?
Was du ermitteln möchtest, ist keine Checksumme sondern anscheinend ein Browser oder Device Fingerprint. Mit diesem Stichwort wirst du eher fündig werden.
dedlfix.
Hallo pl,
vergiss navigator.appName und navigator.appCodeName. Mein Chrome lügt da!
--navigator.appName
"Netscape"
--navigator.appCodeName
"Mozilla"
--navigator.appVersion
"5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36"
Aha, letzteres ist etwas wahrer. Aber sobald Chrome ein kleines Update bekommt, ist deine Checksum daneben.
Rolf
Ah,
vergiss navigator.appName und navigator.appCodeName. Mein Chrome lügt da!
Das ist egal, wird sowieso zu MD5 verwurstet. Aber wenn das jetzt nicht mehr checksum heißt sondern Fingerprint schalte ich das ab. Nicht daß damit noch einer auf dumme Gedanken kommt.
MFG
Done.
navigator.appName navigator.appVersion navigator.platform
Diese (und noch ein paar) findest du samt und sonders in navigator.userAgent. Sie einzeln rauszunehmen hat keinen Vorteil.
navigator.cookieEnabled
Nicht so wertvoll, ist bei nahezu allen Browsern eingeschaltet (siehe Panopticlick unten).
navigator.language
Besser navigator.languages, da gegebenenfalls weitere Daten vorhanden.
navigator.mimeTypes.length navigator.plugins.length
Diese beiden hängen zusammen, mimeTypes soll angeben, was von den installierten Plugins unterstützt wird.
plugins selbst lässt sich bei sehr vielen Browsern (fast ähnlich cookieEnabled) nicht allgemein auslesen oder ist sowieso leer, da keine Plugins installiert sind. length ist dort entsprechend immer 0. "Allgemein auslesen" soll bedeuten, dass die Liste zwar leer erscheint, man aber Plugins gezielt abfragen kann, zB mit navigator.plugins.namedItem('Shockwave Flash').
zum Ermitteln einer Checksumme. Gibt es da noch mehr? MFG
Mäßig verschieden, aber umso leichter auszulesen ist navigator.hardwareConcurrency. Mit Aufwand, aber dafür sehr eindeutig sind Tests mit WebGL und Canvas.
https://panopticlick.eff.org/ informiert über einige Möglichkeiten und, interessanter, deren Wert zur Identifikation einzelner Browser.
Hallo Rosalinde und pl,
man sollte aber immer beachten, dass es wenig nützt, einzelne Browsertypen zu prüfen.
Wenn man wissen will, ob ein Feature XY in einem konkreten Browser funktioniert, sind Abfragen auf dieses Feature der bessere Weg.
Im Zweifelsfalle nimmt man modernizr zu Hilfe, oder vergleichbare Tools.
Rolf
Leider ist die Fingerprintmethode mit der DSGVO nicht vereinbar. Und leider genügt auch ein flüchtiger Blick in den Quellcode um zu sehen was da geht. Es besteht ein erhebliches Risiko zur Abmahnung. Fazit: Finger weg von Fingerprints. GGA
Fazit: Finger weg von Fingerprints. GGA
Spätestens bei iOS eh für die Füsse. GGAAHHAAG
Ach was, das was serverseitig übrigbleibt, reicht immer noch um wenigstens die Bots aus dem Tracking rauszufiltern. GGA