Code:
Name = "Blocking System Fonts info 10.12.04 (multi) [jjoe ozo] (d.s)"
(multi) refers to the ability of filters to match this filter's output. It is enabled by the "Allow for multiple matches" switch and shows in a filter's code as "Multi = TRUE".
The ".s" means site specific. ATM, this filter is not site or even type specific.
There should also be something that says the filter is not in a published set. I have used "Add" for new filters and "Mod" for existing filters.
So for now, how about
Code:
[Patterns]
Name = "Blocking System Fonts info 10.12.04 [jjoe ozo] ADD"
Active = TRUE
URL = "$TYPE(htm)|$TYPE(js)"
Bounds = "function\s\w \{$INEST(\{,\})\}"
Limit = 1024
Match = "(\0\{)+{1}*"
"(flashfontshelper|user_fonts"
"|javafontshelper|getFontList|getAvailableFontFamilyNames)"
"*"
Replace = "\0{ return; }"
(Dec. 04, 2010 06:03 AM)OZO Wrote: 2. instead of returning the string "No Flash or Java fonts detected" (which could be used to ID browser), just to return nothing.
I don't understand. Wouldn't returning an expected string be better?
My guess is that more browsers get "No Flash or Java fonts detected" than those that get nothing or "undefined". When my browser got "undefined", panopticlick reported one in 257253. However, a more sophisticated filter would be needed to try to always return the 'expected' string.
Also, I think it may be possible to score well in each indivual test and still be very unique.
While I'd rather not be watched and if I cared, I'd like to know which sites are watching for some of these things, stop them, and then decide what to do about it.
I've added the following code to the bottom of AdKeys-J
Code:
# System fonts
get_fonts &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
flashfontshelper(^$TST(\3=[n1s])) &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
/:user_fonts(^$TST(\3=[n1s])) &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
user_fonts(^$TST(\3=[n1s])) &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
javafontshelper(^$TST(\3=[n1s])) &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
getFontList \(\)(^$TST(\3=[n1s])) &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
getAvailableFontFamilyNames \(\)(^$TST(\3=[n1s])) &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
# Browser Plugins
plugins(^ \[) &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
PluginDetect &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
getVersion\(*\) &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
#Adobe version
oAcro &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
#Dom Storage
localStorage &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
sessionStorage &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
#Dom Storage
oPersistDiv &&\8 &$ADDLST(Log-Rare,AKEY-Jn \t\8 \t\u)
I'll see what I catch.
Curent Log-Rare hits are
Code:
AKEY-Jn plugins http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn plugins http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn plugins http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn oAcro http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn oAcro http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn oAcro http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn get_fonts http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn /:user_fonts http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn javafontshelper http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn sessionStorage http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn localStorage http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn sessionStorage http://panopticlick.eff.org/resources/fetch_whorls.js
AKEY-Jn oPersistDiv http://panopticlick.eff.org/resources/fetch_whorls.js