スポンサーリンク

【iPhone3GS_JB】ECID SHSHと 3GS/ 3.1 Jailbreakの関係 【まとめ】


ECID SHSH(signature hash)の取得と、3GSのJailbreakに関して、誤解している方がまだ多いようなので、簡単にまとめ。
※間違った記述があったら、コメントか@Woggieeeeまでお知らせのほど。

ECIDは、iPhone 3GS1台ごとに格納されている、16桁のhex数列。リカバリーモードでusbviewや、System Profilerを使えば、簡単に読み出すことができる。
実際のところ、ECIDは3GS以外に、3Gや2G iPhone、旧世代のiPod Touchなどにも存在している。
3GSと、第3世代Touchで初めて、ファームウェアの認証システムにECIDが利用されるようになった。

iTunesで3GS/3rd Touchのファームウェアをアップデートしようとすると、途中で『Appleのサーバと通信中』みたいなダイアログがでる。この間にiTunesが、接続された機器のECIDと、アップデートしようとするファームウェアの情報を、Appleの認証サーバに送信する。

Appleが現行許可しているバージョンの正規ファームウェアと確認できると、ECIDを利用して、署名をしたファイル(ECID SHSH/ECID blob) をiTunesに返す。ECIDで署名されたファイルと、ファームウェアを、接続された機器が受け取って初めて、ファームウェア更新の作業に入る。

このECID SHSHは、ファームウェアのバージョンごとに異なり、現状では、3.0/3.0.1と組み合わされる3.0 ECID SHSHと、3.1と組み合わされる3.1 ECID SHSHがある。

3.1ファームウェアのリリースと同時に、Appleの認証サーバは、3.0 ECID SHSHを発行しなくなった=3.0での復元、ダウングレードができなくなった。
現在は、3.1での復元、アップグレードだけができる=3.1 ECID SHSHのみが発行されている。

前置きが長くなってしまったが、ここからが重要。

ECID SHSHがCydia on-fileでできること:

  • 3.0 ECID SHSH on file = 3.0での復元、3.0へのダウングレードができる=Redsn0w 3.0/ Purplera1nでの3.0 Jailbreakが将来まで確保できる
  • 3.1 ECID SHSH on file = 3.1での復元、3.1へのダウングレードができる (将来3.1での復元・3.2以上からのダウングレードが停止されても)=3.1 JBツールがでれば、3.1へのJBは将来まで確保できる


つまり、ECID SHSHの確保は、3.1 Jailbreakには、現状まったく関係ない。Cydiaで3.0 ECID SHSHを取り損なった3GSが失ったものは、3.0での復元、3.0へのダウングレードだけだ。

※追記:いきなり現状が変わってしまった。Jailbreak関係者(iPhone Dev-Team 現行メンバー)のCPICHの最新のtweet


Further to my last post, the 3gs 3.1 jailbreak does not apply to OTB or non-downgradable 3.1 device

から推測すると、彼が言っていたツール(Pwnage Toolを示していたと思われる)は、Jailbreak時に3.0環境に依存するようだ。この場合、3.0 ECID SHSHがあるか、3.0環境でなければjailbreakできない、という話になる。一方、Chronicdevが開発している新しいJBツール(greenpois0n) は、今日現在発表されている仕様では、3.1正規ファームウェアから実行するようなので、3.0環境には依存しないと思われる。

3.1用のJailbreakツールが出てくれば、ECID SHSHがあろうがなかろうが、条件は変わらない(はず)。とり損ねてあまり意気消沈する必要も、あせって3.0 ECID SHSHを取得する方法を模索する必要もない。(手段自体存在しないが)

3.0 ECID SHSH on fileの3GS個体での、3.0へのダウングレードは、gs.apple.comに代えて、Saurikのキャッシュサーバを使うことで実現できる。また、Saurikのキャッシュサーバを利用する3Gs Downgrade Assistantや、独立して動作する(3.0 ECID SHSH自体はCydia on fileから引いてくる) The Firmware Umbrella でも可能だ。

ただし、3.1に普通にアップグレードしてしまうと、ベースバンド・ファームウェアがアップグレードされ、Ultrasn0wが動作しなくなる。一度3.1にアップグレードされてしまったベースバンドは、Saurikのキャッシュサーバを使おうが、何をしても元にもどすことができない。現状3.1ベースバンドはSIMアンロックするための方策がなく、今後アンロックできる可能性も低いとされている。3GS/3.1でもSIMアンロック(Ultrasn0w)を温存したい人は、ミスを防ぐため、3.1 ipswはメインマシンにダウンロードしないのが得策だ。

SIMアンロックとか、Ultrasn0wいらねーよ、な人は、3.0 ECID SHSH on file状態なら、Saurikのキャッシュサーバを使って、好きなだけ3.1入獄 <–> 3.0JBで、いろいろ楽しむとよろしいかと。

一方、3.0 ECID SHSH on fileでない3GSは、普通に復元作業を行うと、もれなく3.1にされてしまい、2度と3.0には戻れない。Jailbreakツールが出るまでは、妙な作業は自重し、だましだまし3.0JB環境を利用する必要がある。

3.0 ECID SHSHを取得していない個体は、今後のことを考えて、せめて3.1 SHSHは取っておいたほうが得策。3.0 ECID SHSH on fileの個体は、Saurikいわく、Cydiaの3.1処理キューに入っているので、そのうち処理して、”3.0 & 3.1 ECID on file”になると思われるので放置でいいかと。

も一個いうと、故障で交換したり、新規に購入した3GSでは、3.0 ECID SHSHが新規に取得できない状態なので、併せて注意。交換前のECID SHSHは、何の役にもたたない。


つか、iPhone Dev-TeamにChronicdev、そろそろ3.1 Jaibreakツール、リリースしてくれい。セカイカメラや、DropBoxなど、3.1必須な強力Appが増えてきて、入獄へ心がぐらつくw
10/3 追記: 3GS/3.1JBに対応した、Pwnage Tool 3.1.3がリリースされた


参考エントリ:

【iPhone3GS_JB】3GS/OS 3.1のJailbreak動向【まとめ】

【iPhone3GS_JB】部分訳ーCaching Apple’s Signature Server

タイトルとURLをコピーしました