JSFiddle - React, Tailwind, and code Playground
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Fingerprint</title>
</head>
<body>
<div id="page"></div>
</body>
</html>
JavaScript
function createFingerprint(string) {
var hash = 0, i, chr;
if (string.length === 0) return hash;
for (i = 0; i < string.length; i++) {
chr = string.charCodeAt(i);
hash = ((hash << 5) - hash) + chr;
hash |= 0;
}
return hash;
};
var canvas = document.createElement('canvas');
var gl = canvas.getContext('webgl');
var timezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
var timezone_offset = new Date().getTimezoneOffset();
var graphics_card = gl.getParameter(gl.RENDERER);
var fingerprint =
window.screen.availWidth + "x" +
window.screen.availHeight + "_" +
window.screen.colorDepth + "_" +
navigator.userAgent + "_" +
navigator.platform + "_" +
navigator.language + "_" +
navigator.hardwareConcurrency + "_" +
navigator.cookieEnabled + "_" +
timezone + "_" +
timezone_offset + "_" +
graphics_card
;
document.getElementById("page").innerHTML = "<b>Parameters:</b><br />" + fingerprint + "<br /><br /><b>Fingerprint ID: </b>" + createFingerprint(fingerprint);