SHSH(Signature HaSH blobs)的存在主要是为了 验证iTunes恢复固件操作的合法性。以下是SHSH的主要作用和相关信息:
验证合法性
SHSH是苹果用于验证设备恢复或升级固件操作合法性的数字签名证书。当使用iTunes进行固件恢复时,iTunes会向苹果验证服务器提交设备的ECID(设备唯一识别码),并申请获取对应版本的SHSH证书。服务器会验证提交的ECID和SHSH是否匹配,以确定是否允许该设备进行相应的固件操作。
防止降级
SHSH文件是根据设备的ECID和当前系统版本通过复杂运算生成的,并且存储在苹果的服务器上。苹果通过这种方式防止用户刷回低版本系统,因为低版本系统漏洞多且基本被破解越狱。SHSH的存在确保了设备只能升级到官方支持的版本。
唯一性
每个设备的SHSH文件是唯一的,与设备的序列号类似。SHSH文件根据每台设备的出厂编码进行排列,因此不能使用其他设备的SHSH文件对自己的设备进行操作。
备份和恢复
用户需要备份不同iOS版本的SHSH文件,以便在需要降级到旧版本或进行越狱时,可以使用相应的SHSH文件进行验证和恢复。如果错过了备份SHSH的时机,可能只能一路升级,无法自由降级。
与越狱的关系
对于越狱用户来说,备份SHSH文件非常重要,因为它们可以用于在苹果停止签署旧版iOS时,搭建自己的认证服务器,从而恢复旧版系统以进行越狱操作。
综上所述,SHSH的存在是为了确保设备固件操作的安全性,防止未经授权的降级和越狱行为,同时为用户提供在需要时恢复旧版系统的能力。