iPhone 7をiOS 10.1.1から11.1.2にアップデートする

追記:2018年4月7日 iOS 11.2.6 の署名の発行が終了しました。よってこの方法での11.1.xへの復元は不可能になります。以下は将来futurerestoreを使うときの参考程度にお読みください。

通常iPhone, iPad等のiDeviceはその時点でAppleの署名が発行されているバージョンのiOSしかインストールすることができませんが, 特定の条件下において署名が発行されているバージョンに近いバージョンをインストールすることができます。

その中で今回はiOS 10.1.1のiPhone 7をiOS 11.1.2にアップデートする方法を記します。

この方法では, iPhone 7は以下の条件にある通り脱獄してあることが前提です。

またインストールできるiOSのバージョンも, その時点でAppleの署名が発行されているバージョンに依存するので将来的に随筆時と同じバージョンがインストールできなくなることに留意してください。

2018年3月30日, iOS 11.3 の配信が開始されました。このバージョンのSEPは iOS 11.1.x と互換性がありません。iOS 11.2.6 の署名の発行が終了した時点で iOS 11.1.2 への復元は不可能になります。

またどのような不具合, 事態になったとしても当方は一切責任を負いません。全て自己責任で行って下さい。

条件

  • extra_recipeで脱獄したiPhone 7を所持している (nvramへboot-nonceを書き込むため)
  • アップデートしたいバージョンのnoapnonceであるshsh2 blobを所持している (復元に使用)
  • アップデートしたいバージョンと現在署名が発行されているバージョンのBasebandとSEPに互換性がある (互換性がないとTouch IDが使用不可になる/復元に失敗する)

手順

1. 準備
  1. iTunes等でiPhoneをバックアップする
  2. SSH接続するためにiFunboxをダウンロードし, インストールする
  3. Cydiaで「Apple File Conduit “2”」をインストールする
  4. ios-kern-utilsをダウンロードしiPhoneの適当な場所(ここでは/var/mobile/Documents/)に置く
  5. iFunboxからSSHクライアントを実行し以下のコマンドでインストールする
dpkg -i /var/mobile/Documents/net.siguza.ios-kern-utils_1.4.1_iphoneos-arm.deb

「/var/mobile/Documents/net.siguza.ios-kern-utils_1.4.1_iphoneos-arm.deb」のところは適宜置き換えて下さい

  1. futurerestoreダウンロードし適当な場所に展開する
  2. IPSW Downloadsから iOS 11.1.2 と iOS 11.2.6 のIPSWをダウンロードする。iOS 11.1.2のIPSWは「futurerestore.exe」があるディレクトリと同じ場所に設置する
  3. iOS 11.1.2のSHSH2 blobを用意して簡単のために「blob.shsh2」とリネームし「futurerestore.exe」があるディレクトリと同じ場所に設置する(TSS Saverを利用している方が多いかと思います)
  4. iOS 11.2.6 のIPSWを展開する(ZIPとして展開できる)
  5. 展開した中から「BuildManifest.plist」「Mav16-3.42.00.Release.bbfw」「sep-firmware.d10.RELEASE.im4p」をコピーして「futurerestore.exe」があるディレクトリと同じ場所に貼り付ける

この時点でfuturerestoreのディレクトリはこのようになっていると思います。

2.復元作業
  1. ワードパッド等で「blob.shsh2」を開き「generator」キーを検索して, 0xから始まる文字列をコピーする
  2. SSHで以下のコマンドを実行しboot-nonceをセットする
nvpatch com.apple.System.boot-nonce
nvram com.apple.System.boot-nonce=先ほどコピーした文字列
nvram -p
  1. futurerestoreで復元する。iTunesやiFunboxは終了させてfuturerestoreのディレクトリに移動し, 以下のコマンドを実行
futurerestore.exe -t "blob.shsh2" -b Mav16-3.42.00.Release.bbfw -p "BuildManifest.plist" -s sep-firmware.d10.RELEASE.im4p -m "BuildManifest.plist" iPhone_7_11.1.2_15B202_Restore.ipsw

途中iTunesが何度か立ち上がってくることがありますがその都度閉じてください

「Done: restoring succeeded.」と表示されれば成功です。

  1. 復元後はiTunesでバックアップしたものを復元したり脱獄ツールで脱獄するなどして環境を整える

脱獄する

随筆時点で最も一般的だと思われるElectraでの脱獄方法を記します。

ここに有志が作成したTweakの動作確認リストがあったので載せておきます。

Electra Jailbreak Toolkit for iOS 11.0-11.1.2

上記のリンクからipaを入手し「Cydia Impactor」でデバイスにインストールします。

設定からプロファイルを信頼しアプリを開いて「Jailbreak」をタップすることで脱獄が完了します。