Un singolo calcolo in console basta a smascherare il sistema operativo dietro un browser Chromium. I ricercatori di Scrapfly hanno dimostrato che Math.tanh, insieme alle funzioni trigonometriche CSS e ad alcuni moduli di Web Audio, restituisce risultati leggermente diversi a seconda che il motore giri su Windows, macOS o Linux.

Il problema nasce da un dettaglio tecnico apparentemente innocuo. Lo standard IEEE 754 definisce come un numero double debba essere memorizzato, ma non impone che funzioni come seno, coseno o tangente iperbolica siano arrotondate in modo identico su ogni piattaforma. Ogni sistema operativo si appoggia a una propria libreria matematica, la cosiddetta libm: glibc su Linux, libsystem_m su macOS, UCRT (ucrtbase.dll) su Windows.

Il risultato � che Math.tanh(0.8) restituisce 0.6640367702678491 su Linux, 0.664036770267849 su macOS e 0.6640367702678489 su Windows: tre valori che differiscono per un'unit� nell'ultima cifra binaria (1 ULP), ma sufficienti a costruire una tabella di corrispondenza tra bit e sistema operativo. Un sito che voglia verificare l'autenticit� di uno User-Agent dichiarato macOS pu� confrontare quel singolo output e cogliere in fallo un browser che, sotto il cofano, gira in realt� su Linux.