You can try Am I Unique or Panopticlick to learn how identifiable you are on the Internet and test JavaScript Restrictor Extension
jShelter Test Page
High precision timer sources
Date object00:
00:
00.
000
performance.nowCurrent performance is: -
Events
Timestamp of an event created during page load is: -
Timestamp of a recent event is: -
Temporal.Now.instant()
000
000
000
Canvas fingerprinting
window.HTMLCanvasElement.toDataURL() example
Canvas frame
Original canvas:
.getImageData result:
.toDataURL result:
.isPointInStroke:
.isPointInPath:
Initial .isPointInStroke test: false
Initial .isPointInPath test: false
WebGL
Original canvas:
.readPixels result:
.toDataURL result:
GL version:
Shading language version:
Vendor:
Unmasked vendor:
Renderer:
Unmasked renderer:
Enabled WebGL extenstions:
WebGL shader precisions:
Audio
.getChannelData:
.copyFromChannel:
.getFloatFrequencyData:
.getByteFrequencyData:
.getFloatTimeDomainData:
.getByteTimeDomainData:
Plugins
Plugins:
Mime Types:
Hardware information
Arrays
crypto.getRandomValues:
navigator.geolocation example
Redraw map, when position changes
Your devices connected to the computer
Cameras and microphones
Gamepads
Virtual reality sets
Mixed reality support
window.XMLHttpRequest example
Wrappers and iframes
Iframes can be misused to evade wrappers. Prior to 0.5, jShelter limited some wrappers but not
all. To be fully protected, you should see [native code] as a body
of all displayed functions. Note that you should see the same content even if you do not use any
extension that modifies the calls. We want not to be distinguishable even if fully protected to
limit fingerprinting.