简单来讲,SHSH就是你手机的唯一证书,保管在苹果那里。一个手机只有一个,没错,这是唯一的,你不能使用别人的SHSH。
Apple(苹果)为了统一进行管理,制约这些卖出去的iPhone,所以对他们制定了这么一个机制,就是SHSH。你的机器每一次连接到iTunes 进行固件的升级或者恢复,iTunes都会连接到苹果的服务器,检查现在这台机器的SHSH是什么版本,然后再根据当前SHSH版本来决定你的机器更新&恢复到哪一个版本的iOS。
比如我的机器是美版有锁的,系统是 4.0.1,那么目前苹果服务器上的我的机器的SHSH,很显然,是4.1,因为目前是4.1的系统(系统的升级和SHSH是挂钩的),如果我的机器现在连接到iTunes进行固件的恢复或者更新操作,就会去验证我的SHSH,我的SHSH目前是4.1,那么我的机器就会被告知升级到4.1。
为什么要备份SHSH?这是一个比较复杂的逻辑,请阅读者慢慢思考一下将要讲到的内容;
我前面也说到了,SHSH就是你机器在苹果服务器里面的一张证书,这个证书的版本决定了你机器当时是和升级和恢复的版本。我的机器是4.0.1系统,如果我不小心使用91助手使其系统发生故障,无法正常使用,我怎么办呢?当然是刷机(恢复,更新,升级),这一操作都必须连接到iTunes来进行,当你连接到iTunes的时候,苹果服务器验证到你机器在他服务器里面的SHSH版本是4.1,那么我的机器要想正常就只能升级到4.1了,并且4.1目前还不能够越狱和解锁,我前面也提到了,解锁需要高权限,必须越狱后才能使用。不能解锁的后果就是不能打电话,至少不能在中国插着中国的SIM卡打电话了,这是悲剧的。
所以我们要备份SHSH,就是当苹果还没有更新系统和SHSH版本的时候,我们把在苹果服务器里面的SHSH证书提取出来,备份到本地计算机或者网络上的其他服务器,例如CYDIA的服务器里面。比如在苹果还是4.01的时代的时候,我就将401的SHSH证书备份到了Cydia服务器上面,那么下载我要是4.1的系统,但是不能越狱,我就必须“降级”,注意这里的降级两个字,其实在苹果产品里面没有降级这一说法,都是升级。严格点的话应该这么说:我现在是4.1的系统,无法越狱解锁,那么我只能“升级”到4.0.1,连接iTunes,苹果服务器检测到当前我的SHSH证书是4.1,那么我现在将会从4.1升级到4.1,但是我要回到4.01怎么办?办法是修改本地HOST文件,让iTunes的服务器验证地址指向cydia服务器或者本地,修改后,从新连接iTunes,开始检测服务器,这个时候我将服务器指向了cydia,iTunes检测到cydia 服务器里面的SHSH证书是4.0.1,这个时候iTunes就会通知我目前可以从4.1升级到4.0.1,确认,升级,成功。
另外,这里补充一点,SHSH和你当前系统版本没有关系,你机器的系统是你的事情,你可以选择永远不升级;但是你的SHSH在苹果服务器里面,就由苹果做主,他会根据系统固件的更新而阶段性的给你的SHSH证书升级。
所以你的机器系统版本哪怕是 3.x,你同样可以去苹果服务器里面提取你的4.1SHSH备份到其他地方。不过目前你也只能提取4.1的SHSH,别无选择。
From http://iphonebbs.cnmo.com/thread-10301548-1-1.html