Skip to content

Latest commit

 

History

History
307 lines (303 loc) · 11.2 KB

potential_fingerprinting_APIs.md

File metadata and controls

307 lines (303 loc) · 11.2 KB

JavaScript APIs Frequently Used in Fingerprinting Scripts

Below we provide a list of JavaScript API keywords frequently used by fingerprinting scripts. To this end, we measure the relative prevalence of API keywords in fingerprinting scripts by computing the ratio of their fraction of occurrence in fingerprinting scripts to their fraction of occurrence in non-fingerprinting scripts. A higher value of the ratio for a keyword means that it is more prevalent in fingerprinting scripts than non-fingerprinting scripts. Note that infinity means that the keyword is only present in fingerprinting scripts. For example, a value of 1.0 means that we only observe that keyword in fingerprinting scripts, whereas a value of 0.5 means we observe it in an equal number of fingerprinting and non-fingerprinting scripts.

Table includes keywords that have pervasiveness values greater than or equal to 10. Scripts (count) represents the number of distinct fingerprinting scripts in which the keyword is used and Websites (count) represents the number of websites on which those scripts are embedded.

API Keywords Ratio Scripts (count) Websites (count)
onpointerleave infinity 4 1366
StereoPannerNode infinity 1 1363
FontFaceSetLoadEvent infinity 1 1363
PresentationConnectionAvailableEvent infinity 1 1363
MediaDeviceInfo infinity 1 1363
msGetRegionContent infinity 1 1363
peerIdentity infinity 1 1363
MSManipulationEvent infinity 1 1363
VideoStreamTrack infinity 1 1363
mozSetImageElement infinity 1 1363
magnetometer infinity 215 241
requestWakeLock infinity 1 174
PresentationRequest infinity 16 16
audioWorklet infinity 3 8
onwebkitanimationiteration infinity 3 3
onpointerenter infinity 3 3
onwebkitanimationstart infinity 3 3
onlostpointercapture infinity 3 3
RTCCertificate infinity 2 2
PresentationConnectionList infinity 1 1
onMSVideoOptimalLayoutChanged infinity 1 1
PresentationAvailability infinity 1 1
BaseAudioContext infinity 1 1
activeVRDisplays infinity 1 1
BluetoothRemoteGATTCharacteristic infinity 1 1
VisualViewport infinity 1 1
PresentationConnection infinity 1 1
onMSVideoFormatChanged infinity 1 1
onMSVideoFrameStepCompleted infinity 1 1
BluetoothDevice infinity 1 1
onuserproximity 543.77 18 18
ongotpointercapture 362.52 3 3
onpointerout 362.52 3 3
accelerometer 326.71 219 247
chargingchange 302.10 20 20
onafterscriptexecute 217.51 18 1380
channelCountMode 199.03 28 39
getDevices 187.62 59 80
maxChannelCount 184.44 29 40
baseLatency 181.26 3 8
onpointerover 181.26 3 3
onbeforescriptexecute 181.26 18 1380
onicegatheringstatechange 179.78 61 61
MediaDevices 161.12 4 1366
numberOfInputs 157.09 26 36
channelInterpretation 147.69 11 22
speedOfSound 140.98 7 11
dopplerFactor 140.98 7 11
midi 138.72 225 251
ondeviceproximity 131.35 25 282
HTMLMenuItemElement 121.40 218 244
updateCommands 120.84 1 1363
FRAGMENT_SHADER_DERIVATIVE_HINT_OES 120.84 1 2
getSupportedProfiles 120.84 1 2
initCompositionEvent 120.84 1 1
initAnimationEvent 120.84 1 1
vrdisplayfocus 120.84 1 1
initTransitionEvent 120.84 1 1
vrdisplayblur 120.84 1 1
exportKey 105.97 57 57
onauxclick 90.63 3 3
microphone 90.43 223 250
iceGatheringState 90.30 68 1481
ondevicelight 88.31 19 36
renderedBuffer 87.17 189 439
WebGLContextEvent 82.52 28 44
ondeviceorientationabsolute 80.56 4 1366
startRendering 79.33 193 458
createOscillator 78.77 191 445
knee 76.65 170 419
OfflineAudioContext 74.68 199 721
timeLog 72.50 12 12
getFloatFrequencyData 72.50 6 10
WEBGL_compressed_texture_atc 72.50 3 4
illuminance 72.50 3 3
reduction 69.64 170 419
modulusLength 69.39 58 58
WebGL2RenderingContext 68.71 29 30
enumerateDevices 64.12 208 666
AmbientLightSensor 63.60 10 267
attack 61.31 173 434
AudioWorklet 60.42 22 32
Worklet 60.42 22 32
AudioWorkletNode 60.42 22 32
lastStyleSheetSet 60.42 1 1363
DeviceProximityEvent 60.42 1 1363
DeviceLightEvent 60.42 1 1363
enableStyleSheetsForSet 60.42 1 1363
UserProximityEvent 60.42 1 1363
vrdisplaydisconnect 60.42 1 1
mediaDevices 60.03 230 850
vibrate 57.68 232 1793
vendorSub 56.17 251 1728
setValueAtTime 55.29 167 417
getChannelData 55.18 195 460
MAX_DRAW_BUFFERS_WEBGL 54.93 10 12
reliable 52.36 39 103
WEBGL_draw_buffers 52.09 25 27
EXT_sRGB 51.79 3 4
setSinkId 50.35 5 1367
namedCurve 50.29 67 74
minDecibels 48.34 2 2
UNKNOWN_ERR 48.34 2 2
WEBGL_debug_shaders 45.31 3 4
productSub 42.79 734 2819
hardwareConcurrency 41.92 716 3661
publicExponent 41.52 67 74
requestMIDIAccess 40.28 1 1363
mozIsLocallyAvailable 40.28 1 174
ondevicemotion 40.28 4 4
maxDecibels 40.28 2 2
getLayoutMap 40.28 1 1
Animatable 40.28 1 1
GeckoActiveXObject 40.28 1 1
XPathResult 39.73 218 417
mozBattery 39.04 42 322
IndexedDB 38.73 25 25
generateKey 37.46 62 62
buildID 36.52 272 414
getSupportedExtensions 36.46 534 1007
MAX_TEXTURE_MAX_ANISOTROPY_EXT 35.85 521 980
oscpu 35.33 681 1196
oninvalid 34.75 65 1428
vpn 34.53 24 24
lastEventID 34.53 2 2
mozCaptureStream 34.53 2 2
createDynamicsCompressor 33.54 189 442
privateKey 33.46 67 74
EXT_texture_filter_anisotropic 32.91 479 949
isPointInPath 32.17 481 949
getContextAttributes 31.76 460 920
BatteryManager 31.23 23 50
getShaderPrecisionFormat 30.81 450 915
depthFunc 30.81 452 921
uniform2f 30.71 460 930
rangeMax 30.36 449 902
rangeMin 30.24 446 897
EXT_disjoint_timer_query 30.21 3 4
scrollByPages 30.21 1 1363
CanvasCaptureMediaStreamTrack 30.21 1 18
onlanguagechange 30.21 4 4
RTCDataChannelEvent 30.21 1 2
onMSFullscreenChange 30.21 1 1
clearColor 29.16 457 916
createWriter 28.93 17 17
getUniformLocation 28.61 466 948
getAttribLocation 28.58 464 945
drawArrays 28.53 466 948
useProgram 28.37 467 949
enableVertexAttribArray 28.37 466 948
createShader 28.31 467 949
compileShader 28.30 467 936
shaderSource 28.27 466 936
attachShader 28.25 464 934
bufferData 28.24 466 938
linkProgram 28.23 464 933
vertexAttribPointer 28.22 464 933
bindBuffer 28.14 463 932
createProgram 27.95 464 934
OES_standard_derivatives 27.46 20 1384
appCodeName 27.03 325 1890
getAttributeNodeNS 26.49 16 21
ARRAY_BUFFER 25.36 471 941
suffixes 25.14 775 1441
TouchEvent 25.01 481 1130
MIDIPort 24.17 2 19
MAX_COLOR_ATTACHMENTS_WEBGL 24.17 1 2
lowpass 24.17 1 1
onaudioprocess 23.64 9 17
showModalDialog 23.56 39 1419
globalStorage 23.48 245 1681
camera 22.76 229 255
onanimationiteration 22.66 3 3
webkitNotification 21.97 2 2
textBaseline 21.76 888 3234
MediaStreamTrackEvent 21.32 3 1365
deviceproximity 21.13 25 26
taintEnabled 20.89 14 24
alphabetic 20.65 671 2986
userproximity 20.28 24 25
globalCompositeOperation 20.15 507 975
outputBuffer 20.14 12 34
WebGLUniformLocation 20.14 1 1363
WebGLShaderPrecisionFormat 20.14 1 1363
OffscreenCanvas 20.14 1 1
MIDIInput 20.14 1 1
ServiceWorkerContainer 20.14 1 1
pranswer 20.14 1 1
ScriptProcessorNode 20.14 1 1
MIDIAccess 20.14 1 1
vrdisplayconnect 20.14 1 1
customelements 20.14 1 1
SVGAnimationElement 20.14 1 1
createScriptProcessor 20.14 11 20
createBuffer 19.98 472 954
UIEvent 19.93 47 63
toSource 19.54 416 2224
createAnalyser 19.33 12 17
fillRect 19.22 898 3432
requestAutocomplete 18.59 2 2
evenodd 18.49 504 960
fillText 18.09 957 3502
candidate 18.03 178 1847
WEBGL_debug_renderer_info 17.83 406 2214
toDataURL 17.64 951 3507
dischargingTime 17.53 38 54
bluetooth 17.28 225 424
vrdisplaydeactivate 17.26 1 1
MediaKeySession 17.26 1 1
vrdisplayactivate 17.26 1 1
FLOAT 16.89 467 939
battery 16.82 152 1853
devicelight 16.51 25 26
onanimationstart 16.48 3 3
getExtension 16.43 575 1115
onemptied 16.11 4 4
captureStream 16.11 2 2
MediaStreamTrack 15.90 10 10
WebGLRenderingContext 15.75 472 2432
oncomplete 15.70 256 505
onratechange 15.59 4 4
fillStyle 15.55 962 3517
getGamepads 15.10 14 1807
BiquadFilterNode 15.10 1 1363
SVGZoomEvent 15.10 1 1363
filterNumber 15.10 1 1
NotSupported 15.10 1 1
PermissionStatus 15.10 1 1
ignoreBOM 15.10 1 1
queryInfo 15.10 1 1
onspeechend 15.10 1 1
maxTouchPoints 15.09 741 2700
frequencyBinCount 14.87 8 12
credential 14.82 66 66
iceTransportPolicy 14.65 4 4
iceCandidatePoolSize 14.50 3 3
DeviceMotionEvent 14.26 40 1603
rtcpMuxPolicy 14.22 4 4
webgl 14.17 557 1510
indexedDB 13.92 887 3095
rotationAngle 13.85 22 22
setTargetAtTime 13.73 5 5
iceServers 13.62 195 519
clipboard 13.59 233 260
onconnectionstatechange 13.43 2 2
connectionstatechange 13.43 2 2
meetOrSlice 13.43 1 1
remoteCandidateId 13.43 1 1
channelCount 13.17 34 45
getParameter 13.08 581 1112
selectionDirection 13.01 7 7
closePath 12.98 513 970
NetworkInformation 12.95 9 266
emma 12.95 3 3
createOffer 12.68 176 480
languages 12.57 699 2950
setLocalDescription 12.46 178 495
requestFileSystem 12.39 28 1080
createDataChannel 12.33 173 477
onicecandidate 12.32 175 1841
Float32Array 12.30 534 1024
requestPointerLock 12.08 2 1365
ValidityState 12.08 1 1363
onwebkitresourcetimingbufferfull 12.08 1 1363
gathering 12.08 4 4
MediaQueryList 12.08 1 1
tooltipNode 12.08 1 1
drawWindow 12.08 1 1
Sensor 12.08 1 1
TEMPORARY 12.05 129 227
SpeechRecognition 11.79 4 4
recognition 11.69 3 3
beginPath 11.59 523 1079
smoothingTimeConstant 11.51 2 2
systemLanguage 11.50 672 1375
acceleration 11.46 48 236
multiply 11.36 527 986
arc 11.35 528 1193
fonts 11.35 474 2553
gbk 11.33 21 21
outerText 11.31 22 23
deriveBits 11.19 10 17
doNotTrack 11.16 871 2847
publicKey 11.07 75 82
storageArea 10.99 6 6
EMS 10.99 2 2
xMaxYMin 10.99 1 1
DataError 10.99 1 1
remoteId 10.99 1 1
RTCPeerConnection 10.97 171 1963
createMediaStreamSource 10.74 4 4
getImageData 10.56 255 293
bundlePolicy 10.36 3 3
PERSISTENT 10.28 4 21
ANGLE_instanced_arrays 10.07 4 1367
hasPointerCapture 10.07 2 1364
focusMode 10.07 2 3
xMidYMin 10.07 1 1