当前位置:网站首页>Chrome 94 引入具有争议的 Idle Detection API,苹果和Mozilla反对
Chrome 94 引入具有争议的 Idle Detection API,苹果和Mozilla反对
2022-04-23 20:48:00 【不叫月红】
随着Chrome软件版本更新由6周调整为4周,在Chrome 93 刚面世不到3周的时间,谷歌便正式发布了可以同时适配PC和移动端的Chrome 94 稳定版,其中值得关注的功能更新有:
- 弃用 AppCache 功能,该功能可以让开发人员指定浏览器应缓存哪些文件以供离线用户访问。谷歌推荐大家使用Service Workers 来代替 AppCache;
- 引入 Idle Detection API;
- 引入虚拟键盘 API(VirtualKeyboard ),目的是让开发者可以设置虚拟键盘位置,并且对外形可以进行控制;
- JavaScript Self Profiling API,方便开发人员从用户那里收集 JavaScript 性能配置文件,这一功能也得到了微软、Elasitc、Dropbox的响应与支持,具体详情可以点击Github查看。
关于Chrome 94稳定版的更多功能介绍,大家可以前往:https://www.chromestatus.com/features/5680057076940800 查看。接下来我们来谈谈分歧跟争议比较多的 Idle Detection API 功能。
Idle Detection API是什么?
Idle Detection API即空闲检测 API,当检测到用户空闲时通知应用,根据鼠标键盘停止使用、锁屏、从当前应用运行窗口切换出去等信号来判断用户是否处于空闲状态,开发人员可以自定义阈值触发通知。这一设计主要适用于多用户协作,比如会议,聊天和游戏等。在Chrome 94 中默认启用,用户也可以在自定义设置中取消。
支持 vs. 反对
针对这个饱受争议的功能,有人支持,也有反对,来自Slack 和 Google Chat 的开发人员表示,这些事件发生在浏览器之外,而不是保留给浏览器本身使用,“促进协作的应用程序需要更多关于用户是否空闲的全局信号,而不是仅考虑用户与应用程序自己的选项卡交互的现有机制提供的信号”。
而来自Mozilla和苹果的工作人员并不这么认为。
Mozilla 网络标准负责人 Tantek Çelik 认为该 API 是有害的,需要进一步孵化,并重新考虑更为简单、侵入性较小的方法来替代。此外,恶意网站可以使用这种粗略的模式来秘密地最大化本地计算资源,在未经用户同意甚至可能不知情的情况下进行工作计算、浪费电力(用户成本、增加碳足迹)。他认为空闲检测 API 是对用户监视和控制都侵犯了用户隐私,这是一个“监视资本主义的机会”。
Chromium 团队提案成员 Reilly Grant 希望 Safari 浏览器引擎WebKit团队对该功能发表意见,他邮件列表中表示:“目前Idle Detection API 已经包含在此 API 列表(WebKit 跟踪预防)中,但由于指纹安全问题,你们拒绝了该API,我想了解一下该团队基于空闲检测 API 可预见的指纹识别风险的详细。”
苹果公司 Ryosuke Niwa 在邮件中回复到:“这是一个明显的隐私问题,我们担忧的并不仅限于指纹,该 API 允许网站观察用户是否在设备附近,如果用户离开设备时,很容易被用来挖掘比特币或者部署安全漏洞等操作。站在用户角度,他们并不明白为什么要交出这样的操作权限。”对此,Grant 补充到:他们正在开展一项以“定义限制允许站点在后台执行的工作的语义(define the semantics for throttling the work that sites are allowed to do in the background)”来对抗加密挖矿威胁,并且该 API 并不会给非活动设备用户发送通知。
但 Niwa 回答说:“这里或其他地方提出的用例都没有说服力,你在这里提出的隐私或安全缓解措施和我在其他地方发现的都不够充分。”
总结
尽管空闲检测 API 存在很多争议,但谷歌仍然在 Chrome 94 版本中上线了该功能。对此,你是如何看待这一API,你会升级到 Chrome 94 吗?欢迎大家投票。
参考链接:
版权声明
本文为[不叫月红]所创,转载请带上原文链接,感谢
https://blog.csdn.net/mengyidan/article/details/120431040
边栏推荐
- pikachuxss如何获取cookie靶场,返回首页总是失败
- 2021-09-02 unity project uses rider to build hot change project failure record of ilruntime
- 学会打字后的思考
- Common commands of MySQL in Linux
- Keywords static, extern + global and local variables
- The problem of 1 pixel border on the mobile terminal
- MySQL advanced common functions
- UKFslam
- Queue template code
- go defer
猜你喜欢
DOS command of Intranet penetration
高薪程序员&面试题精讲系列91之Limit 20000加载很慢怎么解决?如何定位慢SQL?
Go zero framework database avoidance Guide
The more you use the computer, the slower it will be? Recovery method of file accidental deletion
Vscode download speed up
"Meta function" of tidb 6.0: what is placement rules in SQL?
内网渗透之DOS命令
MySQL进阶之数据的增删改查(DML)
电脑越用越慢怎么办?文件误删除恢复方法
MySQL基础合集
随机推荐
缓存淘汰算法初步认识(LRU和LFU)
Common commands of MySQL in Linux
Elastic box model
内网渗透之DOS命令
[SQL] string series 2: split a string into multiple lines according to specific characters
Addition, deletion, modification and query of MySQL advanced table
內網滲透之DOS命令
电脑越用越慢怎么办?文件误删除恢复方法
Leetcode 20. Valid parentheses
100天拿下11K,转岗测试的超全学习指南
UnhandledPromiseRejectionwarning:CastError: Cast to ObjectId failed for value
Leetcode 74. Search two-dimensional matrix
笔记本电脑卡顿怎么办?教你一键重装系统让电脑“复活”
【SQL】字符串系列2:将一个字符串根据特定字符分拆成多行
GO语言开发天天生鲜项目第三天 案例-新闻发布系统二
Devaxpress report replay: complete the drawing of conventional two-dimensional report + histogram + pie chart
41. The first missing positive number
Go language development Daily Fresh Project Day 3 Case - Press Release System II
Lunch on the 23rd day at home
启牛学堂有用吗,推荐的证券账户是否安全