canvas获取浏览器指纹-唯一的设备标识

复制代码
<meta charset="utf-8">
<title>canvas获取浏览器指纹-唯一的设备标识</title>

<script>
    function bin2hex(str) {
        var result = "";
        for (i = 0; i < str.length; i++ ) {
            result += int16_to_hex(str.charCodeAt(i));
        }
        return result;
    }
    
    function int16_to_hex(i) {
        var result = i.toString(16);
        var j = 0;
        while (j+result.length < 4){
            result = "0" + result;
            j++;
        }
        return result;
    }
function cans(str){
    var canvas = document.createElement('canvas');
    var ctx = canvas.getContext('2d');
    var txt = 'http://security.tencent.com/';
    ctx.textBaseline = "top";
    ctx.font = "14px 'Arial'";
    ctx.textBaseline = "tencent";
    ctx.fillStyle = "#f60";
    ctx.fillRect(125,1,62,20);
    ctx.fillStyle = "#069";
    ctx.fillText(txt, 2, 15);
    ctx.fillStyle = "rgba(102, 204, 0, 0.7)";
    ctx.fillText(txt, 4, 17);
    
    var b64 = canvas.toDataURL().replace("data:image/png;base64,","");
    var bin = atob(b64);
    var crc = bin2hex(bin.slice(-16,-12));
    //var crc = bin.slice(-16,-12);
return crc;//alert(crc);
}
cans()
</script>
 

<p>canvas获取浏览器指纹-唯一的设备标识:<span id="cab"></span></p>
<br /><br />


<script>
document.getElementById("cab").innerHTML=cans("http://security.tencent.com/");
</script>
复制代码

 

posted @   笠航  阅读(1287)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-01-04 PHP $_SERVER 及用户真实IP
点击右上角即可分享
微信分享提示