写点什么

苹果:我要保护用户隐私,谷歌:你是舍不得自己的蛋糕

  • 2020-07-15
  • 本文字数:2134 字

    阅读完需:约 7 分钟

苹果:我要保护用户隐私,谷歌:你是舍不得自己的蛋糕

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

近日,苹果拒绝了将 16 个 Web API 部署在 Safari 浏览器中的请求,苹果觉得这些 API 会对用户的隐私构成威胁。

苹果拒绝部署 16 个 Web API

苹果已经表示,不会在其 Safari 浏览器的 WebKit 引擎中实现 16 个 Web API,部分原因是它们构成了隐私威胁。但苹果的批评者,包括谷歌等竞争对手,都将苹果的立场视为对竞争威胁的一种防御手段。


这些 API 都是最近几年开发的,它们让 Web 开发人员可以访问很多原本只对原生移动平台程序员开放的功能;但这些 API 可能会被滥用,用来识别设备指纹:这是一种侵犯隐私权的技术,能够从可读的设备特征中构造出唯一的标识符,以实现对用户踪迹的跨网站追踪,标识符之间还可关联起来以跨设备追踪用户。


WebKit 团队最近更新的有关跟踪预防的文章解释说:“WebKit 抵御设备指纹的第一道防线,是拒绝实现那些可增强指纹能力,并且不提供安全的方法来保护用户的 Web 特性。”


https://webkit.org/tracking-prevention/


被拒绝的的 16 个 API 分别为:


  • Web Bluetooth

  • Web MIDI API

  • Magnetometer API(磁力计)

  • Web NFC API

  • Device Memory API

  • Network Information API

  • Battery Status API

  • Web Bluetooth Scanning

  • Ambient Light Sensor(环境光传感器)

  • HDCP Policy Check extension for EME(HDCP 协议检查扩展)

  • Proximity Sensor(距离传感器)

  • WebHID

  • Serial API

  • Web USB

  • Geolocation Sensor (background geolocation)(位置传感器)

  • User Idle Detection


独立研究人员兼顾问 Lukasz Olejnik 在给 The Register 的一封邮件中,声称这一决定是隐私保护的一次胜利,并指出他在 2015 年与他人共同发表的针对 Battery Status API 的隐私风险的研究,以及之后针对其他浏览器指纹威胁的分析或许影响了苹果的政策决定。


https://blog.lukaszolejnik.com/battery-status-not-included-assessing-privacy-in-w3c-web-standards/


对于滥用 Battery Status API 的担忧(网站和基于浏览器的应用程序可使用这个 API 来检查访问者 / 用户移动设备的电池电量),促使 Mozilla 在 2016 年 10 月取消了对它的支持。大约在同一时间,苹果公司已经在代码中实现了这个 API,但从未激活它。最后苹果还是选择了拒绝。


与此同时,谷歌在 2015 年 7 月 10 日首次亮相的 Chrome 45 中实现了 Battery Status API。今年 5 月份,这家互联网巨头承诺对其进行调整,允许开发人员在其应用和第三方组件中禁用该 API,但并不会移除它。

试图控制市场?苹果:我没有

对苹果表示沮丧的人群中恰好就有谷歌的工程师,他们觉得苹果在扯 Web 平台的后腿。


苹果要求 iOS 设备上的所有 Web 浏览器都使用 Safari 的 WebKit 渲染引擎,这让 iOS 上的移动浏览器趋于同质化。有开发者表示:“苹果强制要求使用 WebKit 使 iOS 上的浏览器变成了一种“单一文化”,我以为我可以将 Chrome 设置为默认浏览器,但最后我还是在使用 Safari。”


在过去的几年中,苹果在 Safari 中部署 API 的节奏颇为悠闲(或谨慎),这意味着渐进式 Web 应用(PWA,可离线运行的可安装 Web 应用)在 iOS 设备上无法正常工作。


结果,Web 开发人员,特别是那些对 PWA 感兴趣的开发人员,指责苹果试图限制 Web 应用以保护其在原生 iOS 应用中的既有利益:苹果根据自己制订的 AppStore 规则获得了 30%的收入分成。这些规则现在已成为欧盟反托拉斯调查的目标。


https://www.theregister.com/2020/06/16/eu_apple_competition_investigations/


谷歌高级软件工程师 Alex Russell,主要从事 Chrome、Blink 和 Web 标准开发工作,他在 Twitter 上发了一篇帖子:“永远不要忘记苹果之所以限制浏览器引擎的选择权,主要是防止 Web 成为符合新标准内容的有吸引力的开发目标”。



Russell 认为,苹果的目标是确保 Web 平台的功能无法与原生应用相提并论。


Russell 指出,苹果支持其他很多可能被滥用的 API,例如与方向 / 加速度、地理位置、相机访问、GPU 图形加速、游戏手柄以及文件和目录上传相关的那些 API。


就像 Stratechery 的技术分析师 Ben Thompson 在周一的一篇博客文章中所说的那样:“拖累 Web 会提升应用的吸引力,苹果就能从中获益;同样值得注意的是,苹果公司正在扩展自己的应用产品线,并不在乎行业对手的损失。”


https://stratechery.com/2020/apple-and-facebook/


当被问及这些关于竞争的指控是否有依据时,Olejnik 承认有些人是会从这个角度看待苹果的技术决策。他说:“不管怎样,一些隐私担忧是合理的。”


另外作为参考,PWA 面对的技术壁垒正在消减。


https://love2dev.com/pwa/ios/


以前,广告商想追踪用户信息,大多依靠第三方的 Cookie。近年来,各大浏览器的开发商致力于部署反追踪功能,第三方 Cookie 的能力和使用范围越发遭到限制。于是,用户指纹技术“应运而生”。据悉,在过去的三年里,用户指纹已经成为在线广告技术市场上追踪用户的标准方法。


浏览器开发商也有相应的对策,即通过一些常见的操作来防止指纹操作,例如字体,HTML5 canvas 和 Web GL 等,不过这也不是万全之策,部分用户指纹向量无法通过这些方法阻止。


目前,苹果已经将这 16 个 API 列为严重的“违规者”。不过苹果表示,如果这些技术在未来可以降低隐私安全隐患,则会重新考虑是否将其添加到 Safari 中。

延伸阅读

https://www.theregister.com/2020/06/29/apple_web_developers


2020-07-15 18:431985

评论 2 条评论

发布
用户头像
web开发者看了觉得很头疼 👨🏻‍🦲
2020-07-17 14:09
回复
用户头像
苹果在以一家之力试图阻挡Web延伸的趋势,这几乎是螳臂当车,历史会一步一步把Safari扫进垃圾堆的。。。
2020-07-16 17:35
回复
没有更多了
发现更多内容

JUC 浅析(四)

Andy

云小课|MRS基础原理之Hudi介绍

华为云开发者联盟

大数据 华为云 企业号十月 PK 榜

深入理解JS作用域链与执行上下文

loveX001

JavaScript

问:你是如何进行react状态管理方案选择的?

beifeng1996

React

问:React的useState和setState到底是同步还是异步呢?

beifeng1996

React

一面高频vue面试题

bb_xiaxia1998

Vue

从清华大学到苏州经贸,双一流和普通高校都在使用的数据科学教学实训平台

ModelWhale

大数据 人才培养 数据竞赛 实训 教学

阿里是如何使用分布式架构的?阿里内部学习手册分享

Java全栈架构师

架构 分布式 微服务 后端 高并发

JVM 组成结构分析

Andy

《一条select 语句在TiDB Server层都发生了什么》

TiDB 社区干货传送门

管理与运维

TiDB 生产集群与加密通讯TLS的辛酸苦辣 - 开启篇

TiDB 社区干货传送门

集群管理 管理与运维

在世界舞台MBBF一骑绝尘:永远更快一步的北京5G是怎样炼成的?

脑极体

腾讯前端经典react面试题汇总

beifeng1996

React

从React源码角度看useCallback,useMemo,useContext

goClient1992

React

报名倒计时1天!平头哥、中科院软件所PLCT实验室等技术专家解读最新RISC-V技术

OpenAnolis小助手

报名 risc-v 云栖大会 Workshop 龙蜥峰会

什么是分布式数据库?我不信,看完这篇你还不懂!

TiDB 社区干货传送门

数据库架构设计 数据库前沿趋势

嵌入式 Linux 入门(七、Linux 下的环境变量)

矜辰所致

Linux 环境变量 10月月更

每日一题之请描述Vue组件渲染流程

bb_xiaxia1998

Vue

JUC 浅析(三)

Andy

软件测试丨接口测试该怎么做?持证上岗的Charles,可以帮你做什么?

测试人

软件测试 接口测试 charles 测试开发

软件要想做的好,测试必定少不了

华为云开发者联盟

测试 开发 华为云 企业号十月 PK 榜

从React源码来学hooks是不是更香呢

goClient1992

React

【web 开发基础】PHP 循环结构之 for 循环 -PHP 快速入门 (19)

迷彩

for循环 10月月更 web开发基础 PHP基础

JVM 浅析(二)

Andy

区块链≠绿色?波卡或成Web3“生态环保”标杆

One Block Community

区块链 环保 波卡生态

前端面试中小型公司都考些什么

loveX001

JavaScript

前端面试指南之JS面试题总结

loveX001

JavaScript

手把手教你从安装CentOS7.4镜像开始,搭建IoT视频监控系统

华为云开发者联盟

后端 开发 华为云 企业号十月 PK 榜

KubeVela 插件指南:轻松扩展你的平台专属能力

阿里巴巴云原生

阿里云 开源 容器 云原生 KubeVela

一次TiDB GC阻塞引发的性能问题分析

TiDB 社区干货传送门

性能调优 管理与运维 故障排查/诊断

「Go工具箱」go语言csrf库的使用方式和实现原理

Go学堂

golang 开源 程序员 CSRF 10月月更

苹果:我要保护用户隐私,谷歌:你是舍不得自己的蛋糕_安全_李俊辰_InfoQ精选文章