1、在图片格式上 , 不同web浏览器使用了不同的图形处理引擎、不同的图片导出选项、不同的默认压缩级别等 。
2、在像素级别来看 , 操作系统各自使用了不同的设置和算法来进行抗锯齿和子像素渲染操作 。
因此 , 即使是相同的绘图操作 , 最终产生的图片数据在hash层面上依然是不同的 。这个具体代码层面 , 恐怕要去搞懂各个主流浏览器的实现和以及操作系统的渲染 。笔者精力所限 , 短期很难给出 。大家可以自行摸索下 , 欢迎交流J
【后话】
HTML5千变万化 , 利用canvas 这一特性来实现用户追踪 , 目前并没有好的对抗方案 , 未来也只能依靠广大浏览器厂商自行了断 , 实现canvas绘图机制的随机化或许可以很好的保护用户隐私 , 防止被追踪 。
文中涉及到的代码和技术细节 , 只限用于技术交流 , 切勿用于非法用途 。另外 , 如果想要研究更多的用户追踪技术 , 推荐去研究下大名鼎鼎的专注于访客追踪的开源项目:evercookie【附录5】 , 这个猥琐的小工具 , 通过几乎所有你想到和想不到的方式(Cookie、Flash、Silverlight、Web History、HTTP ETags、Web cache、window.name caching、userData storage、HTML5、甚至是java的漏洞等)来跟踪访问网站的用户行为 。
【取代cookie的网站追踪技术:”帆布指纹识别”】
推荐阅读
- 大佬Google工作10年,关于技术、管理和职场生涯的一些感悟
- 2022年顶级网络安全专家最爱的5大数据加密方法
- 如何开启关闭MacBook的系统语音提示功能?
- 你会消除图片里的马赛克?我来告诉你
- 分享自学编程中经常遇到的问题和一些自学方法
- 为什么学习PHP?
- 修复Ubuntu中Realtek RTL8156B 2.5GbE USB适配器的性能问题
- 在头条创作 五天突破瓶颈的方法
- 竟然把通信协议讲的如此通俗?
- 红茶能配蜂蜜柚子吗,蜂蜜枸杞柚子茶的功效与作用