输入其他iphone的密码总是出错
很多人在更换iOS设备时,比如旧iphone换到新iphone,在一键换机数据迁移时,苹果不仅会要求验证iCloud密码,而且还会要求输入新iphone的锁屏密码和原来其他iphone的密码。但问题出现了,你有可能在确认了新iphone的密码后,在输入旧iphone的密码时,得到如下提示:
你可以确定输入的密码100% 是正确的,甚至旧的iphone就在旁边,你现在就可以用这个密码解锁它,但是在输入新的iphone就是提示密码错误!这是怎么回事?
经过一番折腾,我可能找到了问题的根源,那就是:钥匙串。
iColud备份和同步的原理
iOS的钥匙串你可以想象成一个密码本,它保存了Safari 浏览器与 App 用户名和密码、通行密钥、信用卡信息和安全码,以及无线局域网密码。说到钥匙串,我们先说iCloud。
iColud承担了不同设备之间的同步和共享,比如你在旧iphone上选择了iCloud备份,那么新iphone在登入同一个Apple ID(下称ID)后是可以自动同步的。但据我理解,iColud的备份大体可以分为3部分。(不一定准确)
第一部分,是包括类似相片、通讯录、日历、提醒、备忘录、Safari和Siri这种纯资料性内容,只要登录同一个ID,这些资料就可以自动同步到你的新设备上,前提是你打开了同步按钮;
第二部分,就是涉及敏感一些的数据,比如消息、钱包、钥匙串,可能还有健康等,iOS貌似对这些数据进行特殊的加密处理(大概就是苹果说的,端对端加密)。如果要同步到新设备上,你需要验证原来设备上的密码,我们把这些数据可以称为口令类数据。
第三部分,才是你想象中的传统备份,就是那些你自己下载的第三方APP以及文稿数据。可能还包含了设备的设置选项。具体包含可以到iColud云备份的设置页里看,基本上让你选的就是它要备份的。
问题就出在第二部分,如果因为其他因素(钥匙串未同步,iOS版本不兼容)导致新旧设备密码验证不通过,那旧手机里的备份就无法合法的同步到你的新手机上去。就会在你的设置里,始终有一个验证Apple id的小红点。
怎么解决?
官方回复
很多人因为这个问题去问Apple客服,客服只说请确保将系统升级到最新版本balabala,其实客服说的这个方法有时候好用,当你把两个设备的系统版本升级为一样的,很多设置会变得一样,更可能牵扯到加密的格式兼容,是有可能解决问题的。
推荐的解决方法
1、首先!记住,首先到两台设备中的iCloud中检查钥匙串同步是否打开!很多人新旧设备的钥匙串同步设置不一样,旧设备甚至没有选择同步钥匙串,那在新手机上自然无法验证旧手机密码的真伪,因为iCloud传过来的钥匙串为空!
2、就是没办法的办法,第一个方法不好用,可以在出错的界面选择忘记密码,系统会提示你是否还原端对端加密数据,如图:
这就相当于你放弃了从旧设备上恢复以前用的那些密码,要在本地(新手机上)建立全新的钥匙串。
3、再就是有的网友说的,在信任的设备里,将旧的设备移除,或者在旧的设备上操作退除ID,这种方法我没试过。
总结
看似简单的iCloud同步其实非常复杂,可能远远不止我上面提到的三部分数据。iOS系统的完美体验可能更适合于不玩机的小白,如果要想亲自调较是要费点脑筋的。另外:如果是在新机初识设置中选择从iCloud云备份中恢复数据,那新旧设备的系统版本几乎必须是要一样的,尤其是高版本设备向低版本中转移。