iOS 数据保护的实施和 iTunes 备份的实施都得到了相当充分的记录,Apple提供了高水平的文档,第三方提供了更详细的文档。
但是,我想知道 iCloud 备份的实施细节。Apple 的文件仅在iCloud 备份密钥包的一段中非常简短地提及了此事。
根据该信息,与本地 iTunes 备份不同的是,从设备中读取的数据仍处于加密状态(具有保护等级的文件除外NSFileProtectionNone
,其等级密钥随时可用)。另一方面,即使用户没有提供原始的 Apple ID 凭据或最初创建它的手机,Apple 显然也能够解密 iCloud 备份,从而通过(或失败?)泥坑测试。
这似乎意味着在备份过程中的某个时刻,实际的类密钥会传输给 Apple(否则,在设备锁定时,iCloud 备份无法工作 - 某些文件受到类密钥的保护,即仅在屏幕解锁时可用)。(对于本地备份,使用托管密钥包中包含的密钥在设备上解密文件,因此不会将任何长期密钥暴露给执行备份的计算机。)
虽然众所周知,Apple 可以完全访问存储在其服务器上的 iCloud 备份,但这意味着即使只启用一次 iCloud 备份,一些原本永远不会离开 iOS 设备的加密密钥也会被传输并存储到 iCloud。
我想知道一旦对手获得了 iCloud 备份的访问权限,他们会使用一些第三方软件将所有内容下载到计算机上来做什么:
看起来他们不仅能够检查备份本身的内容,而且还获得足够的信息来解密设备 NAND 中的所有内容,如果他们能够物理获取它(除了 Apple ID 凭据),因为类密钥包含在下载的备份文件中。
任何人都可以分享一些有关 iCloud 备份过程实际工作原理的知识,以及上述情况是否合理?