Apple 居然在 iCloud 上进一步扩大了端对端加密的范围

2021-09-05 21:13:26 +08:00
 minsheng

最近在翻 WWDC 2021 的视频,突然发现,iCloud 面向开发者的库,CloudKit,居然支持了端对端加密。

CloudKit 是一个云数据库,存储的最小单位是 Record,每个 Record 有若干 fields 。从 iOS 15 开始,开发者可以选择给某些 fields 启用加密。加密的密钥会存储在 iCloud Keychain 里;因为 iCloud Keychain 是端对端的,所以 CloudKit 里的加密的数据也是端对端加密的。当然,这种加密是比较弱的,Apple 依然可以知道比如每个 Record 的数量,只是具体内容不可见。看样子之前 Apple 承诺的端对端加密的 iCloud 服务,比如说 Safari 、Home,都是通过这套功能实现的,只是终于暴露给开发者了。

不知道这套东西的备份密钥会不会被包括在 iCloud 云备份里。

4344 次点击
所在节点    iCloud
11 条回复
cest
2021-09-05 21:50:25 +08:00
已经不重要了
想知道什麽,直接要你 device 解密上传好让他人工检查

多了仪式感,就不一样了呢
wangkun025
2021-09-05 23:34:36 +08:00
云贵。
agagega
2021-09-06 00:09:19 +08:00
我的理解,端到端加密有两种:一种是服务端无法解锁,但数据放在本地是明文的;一种是本地也是加密的,用到的时候再向用户请求密码解密。

虽然我知道 iPhone 的闪存都是全盘加密,但还是很好奇 iCloud Keychain 这样的端到端加密是怎么工作的。我查看密码库的时候只需要 Face ID 就行,那是 Face ID 在认证成功后会从安全位置取出某个密钥来解锁吗?还是说只是 if 判断一下,认证成功就从某个地方拿明文存放的密钥。
alphatoad
2021-09-06 00:58:15 +08:00
稍好一点吧,毕竟最重要的 iCloud Photo 没有端到端加密,iMessage 虽有,但是密钥会在 iCloud backups 里,而 iCloud backup 没有端到端加密
执法机构想查还是随时都可以查
discrete
2021-09-06 00:59:17 +08:00
@alphatoad 所以不用 iCloud backup 不就完了……
minsheng
2021-09-06 02:56:36 +08:00
@alphatoad 我估计苹果一开始的计划就是尽快推端对端,然后弄一个 CSAM 满足一下执法部门,结果被反噬

但其实 Apple 的说法非常含糊,比如说,它们的文档提到 CloudKit 里面的大文件,CKAsset,是自动加密的,可按照这个说法,既然 iCloud Photos 和 iCloud Drive 都改成了 CloudKit 后端,那么这些东西应该也是端对端加密的,但 Apple 并没有这么说。另外一个事情是,我很好奇 iCloud Web 端的实现是啥,应该不至于在浏览器里同步 Keychain 吧。
minsheng
2021-09-06 03:16:53 +08:00
@agagega 有一类专门的硬件干这个事情,硬件安全模块( HSM ),它会保存密钥,用密钥加密数据,验证通过后用密钥解密,并且没有导出密钥的功能。我不知道显微镜什么的可不可以拿来尝试解密,我不太清楚技术细节,但应该要比硬盘恢复数据这样困难得多。iPhone 上的 Secure Encleave 就是一个 HMS 。

然后就是一个加密密钥金字塔。比如说 iPhone 文件系统 /硬盘的密钥,存在硬件模块里,这样 iCloud Keychain 的密钥就可以明文存在文件系统里而不用担心华强北把 iPhone 硬盘拆下来解密了。当然,这样会有别的安全隐患,只要 iOS 文件系统沙盒被攻破,密钥就会被泄漏,所以可以把 Keychain 根密钥寸 HMS 里面,而剩下的密钥用根密钥加密过后,存在硬盘里。
minsheng
2021-09-06 03:19:39 +08:00
@agagega iCloud 端,Apple 说他们用了一个可编程 HMS 集群,把用户的 iCloud Keychain 密钥存在里面。这样的话,当用户双重验证完自己的身份后,就会把密钥传到新登录的设备上。

根据 Apple 的白皮书,这些可编程 HMS 的编程认证硬件都被销毁了,所以不用担心 Apple 可以修改程序读取这些信息😂。至于 Apple 的话可不可信,就由大家判断了。
minsheng
2021-09-06 03:21:10 +08:00
然后 iCloud 还有一个选项是生成一串密码让大家写在纸上记下来,如果选择这个选项,那么 Apple 就不会把根密钥存到云上的 HMS 里。
alphatoad
2021-09-06 09:17:05 +08:00
@minsheng 说是被 FBI 反对,导致只能作罢。
但是仔细想想这也不是理由,完全可以像 Mac 这个搞个 time machine,备份到自己的 NAS
moooookey
2021-09-07 16:51:21 +08:00
没卵用,iCloud 云服务对于审查是开放的,就连设备端,也在谋划着扫描了……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/800011

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX