Как известно, с выпуском iPhone 3Gs, компания Apple немного изменила процесс обновления ПО. Изменение это заключается в том, что не имея SHSH именно вашего айфона у вас не получится откатить прошивку на более раннюю версию.
Для тех, кто не в курсе — поясню: SHSH — это уникальный код прошивки вашего айфнона, или, иными словами, электронная подпись прошивки. Когда вы пытаетесь прошить ваш iPhone (это же касается и iPad и iPod Touch) iTunes отсылает на сервер Apple версию установленной прошивки и уникальный идентификатор чипа вашего яблочного друга ECID, а в ответ получает тот самый SHSH, по которому внутреннее ПО айфона определяет — можно ли ему обновляться или нет.
Соответственно, до недавнего времени, не имея сохраненного SHSH откатить прошивку на iphone 3Gs на более раннюю версию, например с iOS 4.0.2 до 4.0.1 было невозможно. Но умельцы нашли выход из положения.
Рассказываю, что нужно делать:
- Идем в пост со ссылками на все прошивки iPhone и скачиваем 4.0.1 ipsw и 4.0.2 ipsw для iPhone 3Gs.
- Открываем прошивку 4.0.1 (если не меняли имени файла, то он будет называться iPhone2,1_4.0.1_8A306_Restore.ipsw) в архиваторе (winrar, 7zip вполне подойдут), и извлекаем все содержимое в папочку, например, на рабочий стол.
- Открываем файлик buildmanifest.plist в блокноте, ищем в нем записи 8A306 и меняем их на 8A400 (Ctrl+H вам в помощь). Сохраняем, проделываем то же самое с файлом restore.plist
- Открываем прошивку 4.0.2 в архиваторе, извлекаем все содержимое в соседнюю папочку судя по комментариям распаковывать ее не стоит. Просто откройте в архиваторе и продолжайте выполнять действия по списку.
- Копируем все файлы из папки с прошивкой 4.0.1 в архив с iOS4.0.2.
- Удаляем все файлы с расширением dmg, которые оканчиваются на 002, оставляем те, что оканчиваются на 001.
- Переводим iPhone в режим DFU (как это сделать я писал в статье по откату с iOS4 на 3.1.3 для айфона 3ж )
- Выбираем нашу измененную прошивку нажав кнопочку «Восстановить» с зажатым Shift, и восстанавливаемся.
- На последнем этапе айтюнс как всегда сообщит об ошибке 1015. Не стоит волноваться, все в той же статье про откат прошивки на iPhone 3G написано, что нужно сделать.
Большинству откат прошивки iOS 4.0.2 до 4.0.1 нужен чтобы сделать Jailbreak. Тут могу посоветовать после отката и джейла не забыть установить из Cydia PDF-Patch, который закроет уязвимость в обработке пдф-файлов.