查看原文
其他

Chrome 引入 “有害” API,Safari和Firefox一致反对

出品 | OSC开源社区(ID:oschina2013)
Chrome 103 早在 6 月 21 日就发布,而 Chrome 104 前天才正式发布,这意味着两个版本的更新间隔时间达到了六周,与 Google 此前承诺的每四周进行一次大版本更新不符,Google 在公告中暂时也没有说明此次延迟的原因。

Chrome 104 版本更新内容:

此版本添加了对区域捕获的支持,引入了一个高性能且强大的 API 来裁剪自捕获的视频轨道,以便在远程共享之前删除捕捉的内容。该功能对视频会议和基于 Web 的生产力 / 协作软件非常有用。

另一个重要功能是 WebGL 画布颜色管理,允许 WebGL 在绘制缓冲区时设置颜色空间,并在导入纹理时设置颜色空间。

此外,该版本还添加了新的起源试验,例如共享元素转换和退出信用卡存储、更新推测规则处理、添加多屏窗口放置界面以及各种新的 API。

Chrome 104 版本还带来了许多安全修复,共修复 27 个安全问题,包括七个高危 CVE。

在此次更新中,Google 再一次引入了一个有争议的 API,该 API 名为 Web Bluetooth API,可以让网页通过蓝牙与其他设备进行通信,但不包括跨域 iframe。Google 认为这个 API 可以在不影响安全的情况下开辟了多种生产力和通信途径。
然而,这个 API 因安全问题已被 Mozilla 和苹果列入了不会实施的 API 目录中。其中苹果认为该 API 降低了安全性,使浏览器指纹被追踪成为可能,并表示目前还没有找到能够解决这个问题的方法。

如果发现功能和网络 API 增加了指纹识别性,并且没有提供安全的方法来保护用户的话,我们将不会实施它们,直到找到一个更好的方法来减少指纹识别性。我们会继续通过网络标准程序与其他浏览器制造商进行公开讨论。Web Bluetooth API 是一个由于指纹、安全和其他问题而决定不实施的功能的例子,我们还没有找到解决这个问题的方法。

Mozilla 也同样表达了类似的担忧,并称该 API 有害:

这个 API 提供了对蓝牙的通用属性配置文件(Generic Attribute Profile,GATT)的访问,这并不是规范所允许的最低级别的访问。与 WebUSB 一样,设备在接收来自任意网站的请求方面的准备程度存在很大的不确定性,意味着这种风险难以管理。Web Bluetooth 选择了只依靠用户的同意,我们认为这不具有足够的保护。该提案还使用了一个阻止列表,这需要厂商持续不断地积极维护,以免易受影响的设备被利用。这种模式是不可持续的,给用户及其设备带来了巨大的风险。

这已经是 Chrome 浏览器近期第三次引入争议性 API 了:
  • Google 在 Chrome 94 中引入了 Idle Detection API(空闲检测 API)。该 API 可以由网站实施以发现用户是否处于闲置状态。闲置就意味着用户没有操作任何设备或特定的硬件(如:键盘或鼠标),也没有通过某些系统事件(如:启动屏保或锁定状态)来进行交互。网络会议、聊天,以及在线游戏等 Web 应用可以通过使用这个 API 获得用户对电脑是否有进行交互的数据。

  • 在 Chrome 97 中,Google 引入了键盘映射 API(Keyboard MAP API)。键盘布局会因国家 / 地区,以及主要使用的语言不同而发生变化(例如:德语键盘会将 “Z” 与 “Y” 字母对调;西班牙语由于有 27 个字母,因此键盘上会多一个 “ñ” 按键)。该 API 可以让网站和 Web 应用获得用户的键盘布局,进一步跟踪和识别用户,尤其是能够准确识别使用不常见的键盘布局和使用的键盘布局与所在地区默认布局不一致的用户。

相关链接:

https://chromestatus.com/features#milestone%3D104

https://webkit.org/tracking-prevention/#anti-fingerprinting

https://mozilla.github.io/standards-positions/#web-bluetooth
福利
有奖问答

OSCHINA本期高手问答我们邀请到 EggJS 核心开发者天猪和大家聊聊“Node.js 和 NPM”,欢迎长按识别下方二维码前来提问


提问还将有机会获得EggJS 的文化衫一件~



这里有最新开源资讯、软件更新、技术干货等内容
点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦~

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存