am I crazy for thinking I could clock whether something was rendered in chromium
@julia canvas fingerprinting tools / tracking pixels be like: “we can always tell”
@julia my friend has this talent only because somehow firefox rendering makes her screen tearing awful which gives her insane headaches
-carrie
@julia@eepy.moe A/B/X double blind test
@pancakes not even just that, font rendering is sufficiently different that I think I could spot the difference
@a_blahaj there are working ways to mitigate the risks without lobotomizing the API lol. which, again, FF does by default already, and Chromium has in the works afaik
RFP is fine, and like, anyone can use whatever they want. but this one doesn't particularly like recommendations of overkill (or even excessive) privacy/security solutions that don't consider the full spectrum of what the solution does, what its side-effects are, how and when it's actually useful, etc
@sodiboo dark reader is extremely fingerprintable, if someone actually cares to fingerprint it to begin with. individual settings, differences in behavior between extension versions, etc
nobody seriously fingerprints the light/dark theme. the setting is very much mutable for normal users. RFP was made for a single specific purpose: separating Tor Browser users into as few buckets as possible.
@a_blahaj this one's solution was to not use RFP. it used to use CanvasBlocker, but stopped doing even that once fingerprintingProtection became default
currently it uses Helium (Chromium->ungoogled-chromium->Helium). here it just uses the built-in fingerprint poisoning functionality and disables JS by default (which, however, is unrelated to fingerprinting - it just got too annoyed).
@sodiboo matchMedia("(prefers-color-scheme: dark)").matches
JS can access the color-scheme.
@sodiboo @julia @thermia @risc @a_blahaj conceptually, javascript can always* access any information exposed to CSS. even if there's no analogous API to read media query states in a single line, JS is able to manipulate and examine the DOM. Inject some CSS that changes the style of some element based on a media query and then check what it looks like with getComputedStyle
* the exception is link :visited state, which has specific carve-outs in this function where browsers will intentionally return false information. doing the same for arbitrary media queries seems kind of intractable though, and regardless there are certainly legitimate use cases for scripts to know the user's color scheme so this will almost certainly never be changed except in the "user is not allowed to use dark mode" way that you observe
@sodiboo as said by erin, :visited is treated specially
and again, RFP was made for Tor Browser. the fact that it's used by anyone else was never intended
@sodiboo because it isn't as critical as :visited, is used for legitimate stuff (for example: how would you theme a WebGL/WebGPU-based game's interface with CSS?), and is generally benign from a privacy standpoint (again, it's a single bit of very mutable info, and thus has almost zero value).
@sodiboo this one thinks that Tor just does not care enough. forcing it is easier and probably doesn't matter for the kind of users they are targeting
@sodiboo TB has three security levels. "standard" (literally almost every browser feature on), "safer" (webgl is click-to-play, wasm is off), "safest" (js is off)
the default is "standard". do not ask about the logic lmfao. TB has some questionable (from its POV) decisions