TorZillaPrint |
return to TZP index |
[ re-run ]
prototype | proxy 2 |
|
  document |
|
fingerprints are always loose 1, prototype/proxy lies by CreepJS 2, json format by Simon Lydell |
[ re-run ]
| |
[ i ]availLeft
  screen positionsavailTop left top | |
[ i ]
mozOrientation
  orientationorientation.angle orientation.type | |
[ i ]-moz-device-orientation   [css] orientationdevice-aspect-ratio |
| |
[ i ]-moz-device-orientation   [matchMedia] orientationdevice-aspect-ratio |
|
available screen | |
[ i ]range 400-2560
  [css min-device-] screen 1 |
|
[matchMedia] screen 2 | |
screen | |
outer window | |
[ i ]
range 400-2560
  [css min-] inner window 1, 3 | |
[matchMedia] inner window 2 | |
inner window | |
viewport 4 | |
visualViewport | |
[ i ]
element
  scrollbarsscrollWidth viewport visualViewport | |
[ i ]
mozInnerScreenX
  window positionmozInnerScreenY screenX screenY | |
[ i ]aspect-ratio   [css] orientationorientation |
| |
[ i ]aspect-ratio   [matchMedia] orientationorientation |
|
[ i ]
display-mode
  display-mode | fullscreen[css] display-mode fullScreen mozFullScreenEnabled |
| | | |
[ click ]
[ i ]
DON'T PANIC as you briefly
  fullscreen 4enter and then exit full screen | |
[ click ]
[ i ]
attempts to open a new blank
  new windowwindow as big as possible and grab the dimensions | |
[div] dpi | |
[ i ]range 40-400
  [css min-resolution] dpi | |
[matchMedia] dpi | |
[matchMedia] dppx | dpcm | | |
[ i ]
-moz-device-pixel-ratio   devicePixelRatio-webkit-min-device-pixel-ratio window | | | |
[border] devicePixelRatio | |
visualViewport scale | |
--- android --- | |
initial outer window ● | |
initial inner window ● | |
[tap] inner window | |
keyboard height | |
toolbar height | |
code based on work by Arthur Edelstein 1 , kkapsner & CanvasBlocker 2 , Matt Traudt 3 and earthlng 4 |
[ re-run ]
| ||
hash | ||
appCodeName | ||
appName | ||
appVersion | ||
buildID | ||
oscpu | ||
platform | ||
product | ||
productSub | ||
userAgent | ||
vendor | ||
vendorSub | ||
--- other methods --- | ||
[ show ] iframes 1 | ||
[contentWindow] document root | ||
[contentWindow] with URL | ||
[window] document root | ||
[window] with URL | ||
iframe access | ||
nested | ||
window access | ||
[ show ] workers | summary not coded | |
web worker | ||
shared worker | ||
service worker | ||
nested worker | test to come | |
worker from blob | test to come | |
[ click ] window.open | ||
iframe code based on work by kkapsner & CreepJS 1 |
These tests are to show that you cannot hide your engine [PoC1] + [PoC2], version [PoC] or OS. | |
[ re-run ]
| |
[css] branding | |
[css] browser | |
[browser] architecture | |
browser | |
version | |
[chrome://] os | |
[css] os 1 | LinuxMacWindowsAndroid |
code based on work by Arthur Edelstein 1 |
[ re-run ]
| |
[ i ]
navigator
  geolocationwindow permission | |
language | |
languages | |
[ show ] locale | |
[ i ]
Collator   localesDateTimeFormat DisplayNames ListFormat NumberFormat PluralRules RelativeTimeFormat Segmenter | |
[intl] locale | |
[resolvedoptions] locale | |
[tolocalstring] locale | |
[intl] dates | |
[to*string] dates | |
timezone | |
[ show ] [offsets] timezone | |
date | |
[PoC] date.parse | |
date.valueOf | |
getTime | |
getTimezoneOffset | |
Symbol.toPrimitive | |
validation messages | |
xml errors | |
▼ show details | |
[to*string] dates | |
toTimeString | |
date/time | |
toString | |
toLocaleString | |
toLocaleDateString | |
toLocaleTimeString | |
toLocaleTimeString | |
toLocaleString | |
[Typed Array] toLocaleString | |
[intl] dates | |
DateTimeFormat | |
[formatToParts] DateTimeFormat | |
DateTimeFormat | |
relatedyear | yearname | |
timeZoneNames | |
formatrange | |
[ re-run ]
| |
connection | |
doNotTrack | |
globalPrivacyControl | |
[ re-run ]
| |
color | | |
pixel depth | color depth | | |
color gamut | | |
[ i ]
dom.maxHardwareConcurrency
  hardwareConcurrency | |
any-hover | | |
hover | | |
[ i ]
media.navigator.enabled
  media devicesmedia.peerconnection.enabled | |
any-pointer | | |
pointer | | |
[ mouse ]
[ i ]
height   pointer event 1isPrimary mozInputSource mozPressure pointerType pressure tangentialPressure tiltX tiltY twist width | |
recursion | stack length | |
speech engines | |
[maxTouchPoints] touch | |
pointer code based on work by Patrick Lauke 1 |
test | result |
These tests are only checking for protection, not entropy. Additional canvas tests [iframes, workers, offscreen] can be found at CanvasBlocker | |
[ re-run ]
| |
[PoC]
  [ i ]random per run
  getImageData | |
isPointInPath | |
isPointInStroke | |
toBlob | |
[PoC]   toDataURL | |
canvas code based on work by kkapsner & CanvasBlocker |
[ re-run ]
| ||
experimental | result | |
webgl | result | |
webgl2 | result | |
webgl code by Abraham Juliot |
[ re-run ]
| |
audioContext 1 | |
[ i ]
copyFromChannel
  offlineAudioContext 2getChannelData sum of buffer | |
------ | |
[ click ] hash | |
OscillatorNode 1 | |
+DynamicsCompressor 1 | |
audio code based on work by openWPM 1 and kkapsner & CanvasBlocker 2 |
[ re-run ]
| |
default proportional | |
default sizes | |
[ i ]
browser.display.use_document_fonts
  document fonts | |
[ i ]
layout.css.font-tech.enabled
  font-format | font-tech | | |
[test] graphite 1 | |
[css | test] woff2 2 | | |
fonts | |
[groups] fonts 3 | |
[ show ] [sizes | names] fonts 3 | | |
client | |
offset | |
perspective | |
pixel | |
pixelsize | |
scroll | |
transform | |
[number] pixel | |
pixelsize | |
[number] perspective | |
transform | |
[domrect] bounding | |
bounding range | |
client | |
client range | |
[base sizes] fonts 3 | |
[system] fonts | |
[widget] fonts | |
glyphs | |
offset 4 | |
clientrect 4 | |
[measureText] width 4 | |
textmetrics | |
actualBoundingBoxAscent | Descent | | |
actualBoundingBoxLeft | Right | | |
alphabeticBaseline | |
emHeightAscent | Descent | | |
fontBoundingBoxAscent | Descent | | |
hanging | ideographicBaseline | | |
font from SIL 1 and code based on work by Filament Group 2 , CreepJS 3 and David Fifield & Serge Egelman 4 |
[ re-run ]
| ||
autoplaypolicy | ||
[user] autoplaypolicy | ||
clearkey | ||
[audio | video] canPlayType | | | |
[audio | video] isTypeSupported | | | |
[midi] permissions | | | |
[ re-run ]
| ||
[css4] colors | ||
[deprecated] colors | ||
[PoC]   [-moz-] colors | ||
[ show ] computed styles 1 | ||
CSSRuleList.style 1 | ||
DOMParser 1 | ||
getComputedStyle 1 | ||
HTMLElement.style 1 | ||
forced-colors | | | |
inverted-colors | | | |
prefers-color-scheme | | | |
prefers-contrast | | | |
prefers-reduced-data | | | |
prefers-reduced-motion | | | |
prefers-reduced-transparency | | | |
code by CreepJS 1 |
[ re-run ]
| |
[PoC]   DOMRect | |
HTMLElement keys 1 | |
[PoC]   line-height | |
[ i ]
mathml.disabled
  mathml | |
code by CreepJS 1 |
test | result |
test | result |
[ re-run ]
| |
[ i ]
dom.use_components_shim
  component interfaces | |
[ i ]
Firefox 74+ : javascript.options.
  error message fixproperty_error_message_fix | |
[PoC]   [other] math | |
[trigonometric] math | |
navigator keys | |
[entries] performance.mark | |
performance.now | |
[ i ]
dom.enable_performance
  performance.timing | |
[ i ]
dom.enable_resource_timing
  resource timing | |
[ i ]
svg.disabled
  svg | |
[ i ]
javascript.options.wasm
  wasm | |
webgpu | |
[iframe] window properties 1 | |
code by CreepJS 1 |
▼ show perf & debugging | |||
---|---|---|---|
global perf
[more] | |||
click perf
[more] |