作者iPluto (ipluto.wordpress.com)
看板iPhone
標題[教學] 為你的iPhone3GS和Touch3代保留降級的權力
時間Thu Dec 10 15:13:13 2009
這是一篇很重要的文章,
而且有相當的時效性
建議iPod Touch3代以及iPhone 3GS的使用者儘速閱讀本文
因為文章的內容隨時可能失效
文章有點長,因為要解釋所有東西自然要花點時間。但是很可能明天早上起來就無法享受
本文所帶來的好處,因此還是建議儘速閱讀。文章不是僅限於JB的人,對一般的使用者
也可能有幫助。
本文適用對象為iPod Touch3代以及iPhone3GS,可能包含以後的產品
如果你的產品不是這兩種,那可以不用看下去了,除非是要長知識XD
我們今天要談的是降級。大家都知道iPhoneOS這東西是有版本的,目前最新是3.1.2
你也許會問用的好好的降級幹嘛?
呵,如果今天你更新了系統發現不好用,或者你常用的程式無法運作,
甚至不穩定或更耗電,你不會想要回到更新前的狀態嘛?
大家也許聽過所謂在iTunes裡按住alt/option(看是Win還是Mac)選你要的版本回復
但是如果你的裝置是iPhone3GS或者iPod Touch3代,很抱歉,做不到
如果你是有Jailbreak的人,這件事就更重要了,因為此時此刻3.1.2是可以Jailbreak的
就連此版本的baseband也是可以解鎖的,而且算是個穩定的版本
如果在未來你想回到這個可以被完全破解的版本,你勢必也要降級
降級並不像在電腦上Vista降XP重灌一下就好
因為蘋果為了防堵Jailbreaker,每當你要回復時,iTunes會連回蘋果"檢查"你要裝
的版本,如果不是最新版,那iTunes會拒絕你安裝
這個機制是這樣的:每支iPhone和iPod Touch都有他獨特的晶片ID,稱為ECID
當你要重刷軔體時,蘋果會把你要刷的軔體以及你的ECID送過去蘋果的server
蘋果那邊會檢查你的軔體版本,如果是最新的話,他會把你的ECID"簽名"傳回來
iTunes收到這個簽名(我們稱為ECID SHSH),就會開始回復。
如果蘋果沒有簽名,iTunes說什麼也不會讓你重灌,而蘋果目前只簽最新的3.1.2
因此像要回復成3.1.2以下,根本做不到。
簽名的機制關係到很嚴格的加密,不是駭客可以破解的。因此降級看似不可能了...
直到Saurik的出現,他就是頂頂大名的Cydia的作者。
Saurik提出的構想是這樣:
假設現在最新版本是3.1.2,你要求回復到3.1.2,蘋果很高興的幫你簽了ECID SHSH回傳
而你把這個ECID SHSH偷偷存起來
之後蘋果推出了3.2,也拒絕簽3.1.2。這時你要回復成3.1.本來是做不到的,
因為蘋果不簽3.1.2了。但是因為你把3.1.2的簽名備份了下來,可以動一些手腳,
把這個簽名餵給iTunes,於是iTunes就會很高興的幫你降級到3.1.2
本文的目的,就是要教大家怎麼備份這個簽名,以及如何降級。
這篇文章的重要性在於只要沒有備份ECID SHSH,未來肯定是降級無望,
為什麼有時效性,因為只要蘋果推出新版本,他也會拒簽3.1.2,也就備份不到了
留有ECID SHSH就像為你的iPhone/iPod Touch買個保險,保留永遠降級的權力。
就算你不JB也應該好好考慮儘快存下這個簽名,因為你以後有任何想JB或降級的
念頭,或者你要轉售給別人,擁有ECID SHSH都是一件好事情。
此時此刻的3.1.2是個還不錯的版本,而且JB解鎖都已經成熟,故保留降到3.1.2的權力,
是一個不錯的選擇。
更重要的是,保留這個簽名 完全不需要Jailbreak!雖然已有Jailbreak者會比較快。
廢話說太多了,讓我們開始吧!
這邊介紹的方法分兩種,一種是備份在Cydia的server上,一種是備份在自己的電腦。
備份在Cydia上是步驟最簡單的方法,缺點是你必須要先JB。
已經有Jailbreak的朋友,只要打開Cydia,看看下面有沒有一個"Make my life easier"
的選項,有的話按下去,收工
沒錯,就這樣。你的ECID SHSH存在Cydia上了。以後開Cydia你會在最上面看到一排字:
This device has SHSHs on file for iPhone OS: x.x
那就表示你的ECID SHSH已經備份在Cydia上了
第二個方法比較多步驟,它會把ECID SHSH備份在你的電腦上。另外不需要JB也可以備份。
首先你要知道你的ECID號碼,方法是把你的iPhone開到recovery mode並接上電腦
(關機,按著home,接電腦,等iTunes連接圖出現)
如果你是用Mac,到左上角的蘋果->關於這台Mac->更多資訊->Apple mobile device
你會在列出的資訊裡找到ECID,共16個數字
如果你是用Windows,你必須下載USBView
http://www.ftdichip.com/Resources/Utilities/usbview.zip
在Options裡面勾選config decriptors,按F5更新,往下捲到Apple Recovery....
一樣找到裡面出現的ECID,16碼數字
(之後就可以拔掉iPhone按sleep+home重開了)
這邊有圖文教學:
http://tinyurl.com/puv64n
有了ECID再來就可以備份了,我們要用的工具叫Firmware Umbrella
下載位置在
http://thefirmwareumbrella.blogspot.com/
你是Mac的話執行.dmg裡面的Umbrella.app
你是Windows的話看是32bit還是64bit系統,選擇該執行的umbrella.exe
執行後你會看到一個很簡單的視窗,
第一行是ECID...就把剛剛查到的16個數字填進去
第二行是你的機型以及你要存的iPhoneOS版本(基本上現在也只能存3.1.2啦...)
第三行是你要從哪裡要簽名。如果你從來都沒做過存ECID SHSH這種事情,那選Apple
如果你今天要把簽名從Cydia拷回來,選Saurik
第三個localhost等下會講,此時用不到
按下Submit,簽名就會存起來了,你會發現資料夾裡多了個約60KB的.shsh檔,請好好保存
(我是在Email信箱留一份)
如果你短時間沒有降級的打算可以不用看下去了
如果想了解該怎麼利用這個簽名的話,我們繼續....(打的手好酸orz)
原理上就是要"造"一個server,當iTunes想連回Apple時,讓他連到該假server,
該假server會把舊版的ECID SHSH傳給iTunes,於是iTunes就會很乖的幫你降級
要讓iTunes去連這個假server,你必須修改電腦上的host檔
Windows下在C:\Windows\System32\drivers\etc\hosts
Mac在/etc/hosts
用記事本之類的打開該檔案
如果你要用備份在Cydia上的ECID SHSH的話,加上一行74.208.10.249 gs.apple.com
如果你要用備份在你電腦上的ECID SHSH的話,加上127.0.0.1 gs.apple.com
記得存檔
如果是使用Cydia的server,因為Saurik就甘心已經幫你架好了,因此就直接在iTunes下
按alt/option點回復,選你有備份版本的軔體來回復吧~
如果你是一切自己來的,那你就要自己弄server。步驟也沒有很多,剛剛我們載的
firmware umbrella裡面還有個叫tinytss的東西。
這東西目前沒有GUI
所以Win使用者請打開DOS視窗,Mac使用者請打開終端機...
cd到firmware umbrella的資料夾,並把你的.shsh放在該資料夾下
輸入指令:
java -jar tinytss.jar -f <你的ECID SHSH檔名>
就這樣,你的server起來了
有正確更改host檔的話,你一樣可以去iTunes裡面按著alt/option點回復選軔體
(你要有管理者權限,Mac使用者可在java前加一個sudo )
(Mac user有開網頁共享的記得先關掉...)
教學就到此結束,恭喜你的iPhone/iPod Touch得到永遠降級3.1.2的權力
也就是永遠可以解鎖和破解。即使你玩壞了要重刷,一樣可以刷舊版軔體,
不會被強迫升級。
關於解SIM卡鎖這邊多提醒一點,就是此方法還是降不了baseband(iPhone打電話的部份)
因次如果你用官方升級升到了更高的版本而你的baseband也被升級了,那本方法也
無法降級你的baseband,你可能永遠無法解鎖。
因此千萬不要用官方方式升級,有回復必要時,就用這邊的方法刷3.1.2
因為蘋果已經沉寂了好一陣子,Saurik和FirmwareUmbrella的作者都在想,
下一版本的更新可能會"殺很大",讓Jailbreak難到一個境界。
也就是為什麼要在蘋果肯簽3.1.2時,儘快備份下來。搞不好明天早上起來3.1.2就不
簽了....
感謝您看完這篇文章
有任何問題歡迎提出來討論。
--
◢◤ ◢███◤ ◢◤
◤
◢◤ ◢◤◤
◢◤◤
◢◤
◢◤ ◢███◤◤
◢◤◤
◢◤ ◢◤ ◢██◤ ◢███◤
◢◤◤
◢◤ ◤
◢◤◤
◢◤◤
◢◤◤
◢◤◤◤
◢◤◤◢◤◤
◢◤◤
◢◤◤
◢◤◤
◢███◤◤
◢█◤ ◢███◤◤
◤
◤
◤
◤
◤
◤
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 164.67.237.174
※ 編輯: iPluto 來自: 164.67.237.174 (12/10 15:13)
※ 編輯: iPluto 來自: 164.67.237.174 (12/10 15:16)
推 tigershark:推推推!解說精闢! 12/10 15:21
推 kobewlps:雖然早就知道有這回事,但是如此完整的教學還是要推!! 12/10 15:24
推 Clementtang:推 :P 12/10 15:26
→ ithildin:推 我會備份但是不會取回(遮臉) 12/10 15:34
推 iPhone3G:推,寫的很詳細 12/10 15:38
→ iPluto:需要時再學就好了,先備份才重要 12/10 15:39
推 piatigorsky:大推! 12/10 15:41
推 iPhone3G:收入至 z > 7 > 13 感謝分享 12/10 15:42
推 ithildin:當初沒備份到3.0 還好3.1.2的JB出來了.... 12/10 15:45
→ iPluto:我也是沒備份到3.0....我買了沒多久就出3.1了 12/10 15:50
→ iPluto:去爬dev-team blog才知道有這東西~_~ 12/10 15:50
推 dragonjc:感謝 好詳細 12/10 16:01
推 ithildin:我買來知道要備份 但是還想著"不及啦 沒差這一天" 12/10 16:02
→ ithildin:然後3.1出了 12/10 16:02
→ ithildin:好險我還沒更新 現在的JB又不用先刷一次韌體 12/10 16:02
→ iPluto:我懶惰 買來當天晚上才在查資料 第二天早上JB+Unlock完成 12/10 16:05
→ iPluto:3.1出了後爬dev team blog才看到很多有趣的東西 12/10 16:05
→ iPluto:才開始知道geohot ra1n sn0w 等等 還有一堆歷史 12/10 16:05
→ ithildin:現在的單機備份也變這麼簡單了.. 12/10 16:10
→ ithildin:我記得3.0那時候是要重刷一次 然後趁金鑰消失前複製出來 12/10 16:11
→ ithildin:一整個麻煩....我就很懶的弄 12/10 16:11
→ iPluto:你以前備份的不是用suriak的格式 現在還用不了耶 12/10 16:55
→ iPluto:因為只有他認真去寫tool XD 12/10 16:55
推 gannimama:請問為什麼我開CYDIA 沒看到make my life easier? 12/10 17:21
推 boeshan:所以apple搞簽章這個把戲就這麼簡單的被繞過了XDDD 12/10 17:22
→ iPluto:你是iPodTouch3代或iPhone3GS嘛? 12/10 17:34
→ iPluto:或者 你打開Cydia上面有This device has SHSHs on file嘛 12/10 17:35
→ iPluto:沒有這麼簡單啦 大家也研究了一陣子才找出方法的 12/10 17:36
→ iPluto:就像現在JB對使用者很簡單 駭客可是忙得很 12/10 17:36
→ ithildin:反正3.0最後我也沒備份到 3.1和3.1.2都靠CYDIA了 XD 12/10 17:47
推 RUSKA:所以出現This device has SHSHs on file是算備份好了嗎@@? 12/10 18:16
→ ithildin:你看看下一行應該會接著寫3.1.2 更早就弄的話還會有3.1 12/10 18:16
→ ithildin:不知道會不會就這樣沒消息到明年 然後OS4.0跟4代機一起出 12/10 18:17
推 justin01031:如果現在itouch版本是3.0還有辦法備份嗎/ 12/10 18:37
→ justin01031:還是說一定要升級到3.12?我在CYDIA上沒看到那段文字耶 12/10 18:37
→ iPluto:樓上 你只能備份3.1.2的簽名 但是不需要為了這個升級 12/10 18:55
→ iPluto:如果Cydia上看不到 建議使用本文的另一個方法 12/10 18:56
→ iPluto:為了這個重刷成本就有點大了.... 12/10 18:56
→ iPluto:我突然想到 justin你應該不用備份...你根本不是3代 12/10 18:58
→ iPluto:3代基本上出廠都是3.1以上的~_~ 12/10 18:58
推 m0535:要勾選config decriptors才會出現ECID 12/10 19:11
※ 編輯: iPluto 來自: 164.67.237.174 (12/10 19:56)
※ 編輯: iPluto 來自: 164.67.237.174 (12/10 20:05)
→ iPluto:感謝樓上 12/10 20:05