Вчера, разъясняя ситуацию вокруг джейлбрейка iOS 4.3.4 и перспектив отката прошивки, мы упомянули о том, что для некоторых владельцев iPad 2 даже наличие сохранённых хешей SHSH не даст им возможности в будущем снова прошиться на iOS 4.3.3 и сделать джейлбрейк через сайт http://jailbreakme.com. Сегодня мы попробуем объяснить, почему так происходит. Сразу предупреждаем, что как бы доходчиво мы не пытались бы описать проблему, ниженаписанное может вызвать взрыв мозга у новичков в сфере джейлбрейка и анлока — благодаря стараниям Apple всё действительно стало сложно.

Если у вас iPad 2 без 3G-модема, дальше можете не читать. Считайте, что вам крупно повезло, потому что при наличии сохранённых хешей SHSH от прошивки 4.3.3 вы гарантированно сможете откатиться на эту прошивку в обход всех ограничений Apple. Если у вас iPad 2 с 3G-модемом (или CDMA-модель), то всё совершенно иначе.

Итак, iPhone 4 и iPad 2 кардинально отличаются от всех предыдущих гаджетов Apple механизмом взаимодействия iOS и iTunes с бейсбендом (прошивкой модема) данных устройств. Если для всех предыдущих гаджетов откат модема был невозможен в принципе, то на iPhone 4 и iPad 2 откатить его разрешается. Но есть и обратная сторона, потому что для этих устройств серверы Apple выполняют двойную проверку хешей SHSH. Подписывается не только сама прошивка iOS, но и прошивка модема. Таким образом, откатиться на старую прошивку модема можно только в том случае, если Apple разрешает на неё откат. Например, если вы сейчас прошьётесь на бета-версию iOS 5, то модем неизбежно повысится, но если потом откатитесь на iOS 4.3.3 или iOS 4.3.4, то модем понизится обратно.

Между хешами, которыми подписывается iOS, и хешами, которыми подписывается бейсбенд, есть большая разница — хеши от модема бесполезно сохранять, потому что они генерируются по другому алгоритму и каждый раз уникальны. При генерировании хешей серверы Apple проверяют не только то, какую версию модема пытается залить iTunes в устройство, но и то, в какой версии прошивки содержится этот модем. Как раз в этом и состоит главная трудность: после того, как Apple закроет подписывание iOS 4.3.3 (а это может произойти в ближайшие часы или минуты), начать восстановление на iOS 4.3.3 на iPhone 4 и iPad 2 3G вы сможете, но процесс не дойдёт до конца. Почему?

  • первым делом iTunes начнёт сверять хеш SHSH для прошивки
  • если вы обдурите iTunes и перенаправите его на серверы Cydia, он возьмёт оттуда хеш SHSH для iOS 4.3.3, проверит его, убедится, что всё в порядке, и начнёт процедуру заливки iOS в устройство
  • где-то на 75% прошивания iTunes дойдёт до процедуры обновления модема
  • в этот раз он снова полезет на серверы за хешем SHSH, но для модема. На серверах Cydia этот хеш он не найдёт (потому что его там быть не может), а на серверах Apple он получит другой хеш, соответствующий комбинации той же версии модема и прошивки 4.3.4
  • из-за несовпадения хешей iTunes сразу же заблокирует заливку модема в устройство, и прошивание прервётся ошибкой 101x (обычно 1014)

В итоге ваш гаджет зависнет в режиме восстановления, откажется загружаться и будет упорно показывать вам шнурок с эмблемой iTunes.

А дальше вступает в силу важное различие между iPhone 4 и iPad 2:

  • для iPhone 4 есть уязвимость в бутроме (аппаратном загрузчике), которая успешно используется для джейлбрейка. Использование этой уязвимости позволяет утилите TinyUmbrella принудительно вывести гаджет из режима восстановления по нажатию кнопки Kick device out of recovery. iPhone 4 перезагрузится и будет жив, здоров и весел — с нужной вам версией прошивки и старой версией бейсбенда
  • для iPad 2 уязвимости в бутроме нет, и её появления пока не предвидится. А это означает, что никакая утилита не поможет вам вывести устройство из режима восстановления, и оно останется неработоспособным, пока вы не прошьёте его на iOS 4.3.4

В Dev Team обтекаемо намекают на то, что у них есть пара идей насчёт того, как вывести iPad 2 из режима восстановления после неудачного прошивания модема. Именно поэтому сохранение хешей для iPad 2 Wi-Fi+3G и iPad 2 CDMA имеет смысл. Правда, пока Dev Team не придумают что-то конкретное, воспользоваться этими хешами вы не сможете.

Вот и вся невесёлая история. Как видите, Apple весьма успешно портит жизнь всем джейлбрейкерам. И чем дальше, тем хуже  — как известно, на iOS 5 хеши будут сверяться не только при прошивании, но и при каждой загрузке.

Поделитесь страницей через социальные сети

  • Эдуард

    спасибо за подъяснение, я решил пока аипад вообще не тюнинговать, ибо один раз вылетел с сидии и повис черный экран, наверно это единственный случай после которого повышение версии неизбежно

  • Макс

    а если я не обновлялся до 4.3.4 но захочу востановиться я смогу залить4.3.3 или нет

    • AppStudio

      нет

    • http://www.uacatalog.org Archy

      В теории — модем остается тот же.
      Когда найдут способ (упоминалось в статье) вывести из Рекавери — то да, но не факт.

  • Archy

    А если СЕЙЧАС сделать и сохранить лог обмена данными между Тунцом и серверами при перепрошивке, и в будущем попробовать ответить Тунцу сохраненным с сервера ответом, это сработает?

    • Archy

      И, кстати, буду очень признателен за подсказку, чем такой лог можно снять

      • http://www.uacatalog.org Archy

        В общем скачал отсюда http://technet.microsoft.com/ru-ru/sysinternals/b
        Она 40 дней бесплатная, хеши сохранил дважды, сравнил — один и тот же получился лог практически полностью.
        Т.е. SHSH модема-таки можно сохранить, теперь надо ждать утилиты, кот позволит, как ТиниАмбрелла, его использовать.

        • AppStudio

          народ из Dev Team протестировал это вдоль и поперёк и сделали выводы о невозможности бэкапа хешей для модема, а вы утверждаете, что они не правы? ) попробуйте им написать, например, в твиттер

    • http://www.uacatalog.org Archy

      В общем, подозреваю, что вот это нужное нам:

      Sent from 17.112.176.11:80 to 192.168.1.128:51573
      Time: Mon 18.07.11 @ 17:43:44

      ARftl0YJnFLdyTAqNfjod55sTUrHGLqm5hN0/3wyhd/34I 7RYWjIid7fH1br3ztJHlkcCUjo0WAoVuvxI4xgTU </data> <key>PartialDigest</key> <data> QAAAALjHAwApvm0KseVaH99hDIIBO5BEcXWMvA== </data> </dict> <key>BasebandFirmware</key> <dict> <key>RamPSI-Blob</key> <data> AQAAAFAAAAABCAAAAQoAAAAAAAAABAAAAQABANcYRvR8R7f7sYgMt1JEe027 ncpGQAVZvGwU5vHqEPonr+hYXJefoDIE+zh7M2ZKQh4yVmeaZcdItcsVeGmm 76Wy+/GlJ8JnUPM5HKKMclJPmox55bmHDRjQVxl+CQ9WD/FmGW1XIu2OZRim ZzmbkOVctpgYkXWZv0CBJltDVpDGYIKiJgziOAMVXu+4X/lFD3aPbc6obDND ZNmiGcRDvFndOmL+LAUOk+EUfGqTDQU/Tckhz0vRWomBgtjsCALkJ9h3QUdO rrYymNct5wYf6FZ2T61/oTIQPnhAEXpG4e0o1+uvbz8vRbv+uPOxuC4Qh9f4 ghd3aFwWPLCfRRv+IV4ddtteoZw/NldPcqlpe3osz8B/y6/2H3FBIcUCDQce 3ZPtoiuF91NrG8MZEInjzsnw8Ebv/Ihdt9fbTqFOEL8YezlerjKQNRRqGySZ Djw3RDzr3wgXebf7u6pZnFLsLoBVF7RrLFdQZNRNVP+vbFvuojbELiaj4X4m 3/5Krvbi+HQCZVS2UIMimOYFacPJ57FbGHZV+05YbTUXeQf+L2ZigXLEa76N ozsI1LHg2DKDwbHr1bV7oJJeACPQkgePcFRib5CEvls0/vvkKQy/ZuCNSN9C WxA6HMxsEPL4+nyeWfO4hfveL2bKwcwIIM5MTyRKbsvpvYXyyhVIb+BBI9Ff AAAAAAAEAAADAAAACyOuuuN1e53ORFiMz1PMsHP5BldkN6BsaPSRTnqCy24S z/0xOVFMBsDpzqAnF9aV+9+UJrIcwXMkBuOowg9do0Fr2ITL0Osu+d4vIXja w02vubrYS3wW4s8WehtXM08mTVMm/Y44tiPOXrSBgCvA+58z4T9loknJPwh

      Sent from 17.112.176.11:80 to 192.168.1.128:51573
      Time: Mon 18.07.11 @ 17:43:45

      s N2FLt8cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOgn Qkj3Xt5EHZnstEb7yxL3BwHJbHbf6UiYr2inUmS3LDQ6pqBkhlEyHE3aCeSc OOtJ6o9XhRSD6+p3eSe4e2ggGJ9FodPvCcBGaM1FCAYUxla8Pv34KoW1/EPG OPsJis7l04L6Q08LBPaA68+oJBFpq96p/1O1ZjpRqdzqaRJfAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////////8IARKe UASUImCwQY6X1E1mJ/tMZmGsM24ncNrz3fTMXV1OM3HySBC609ysdYl5FeQo YcGyeXF2vSkUqfqlJuhNQTF2KKv4OophVnL7Wu0U36UeX5cG/rSXmtGEkFqS CFISj8PseSVf7Ea2t2c+JKRWCQS6igO4hCkM10PomUEFhd+zjE9oS5tcjbz3 Vv////////////////////////////////////////////////////////// </data>

      • http://appstudio.org AppStudio

        выглядит круто, но как вы планируете это использовать? :)

  • Maloy

    Доброго вечера.
    Подскажите пожалуйста можно ли с 4.3.5 вернутся на 4.3.3
    iPad 2 3G

    • altium

      Прочтите пост полность и все поймете. мне жаль нет.

  • stary

    Сегодня с помощью амбреллы и сохраненных shsh каким-то чудом откатился на 4.3.3 с 4.3.5, ipad2 3g. При прошивке модема с сервера сидии был получен положительный ответ и прошивка встала без ошибок!

    Зы. Лог сохранил, если кому интересно. Шил из dfu по схеме амбрелла-тсс сервер-dfu-itunes restore.

    Первым делом полетел на jailbreakeme.com, пока его comex не прикрыл в силу недавнего поступления в apple ;)

    • http://my.mail.ru/mail/yuppa/ Roma Roma

      stary, вы можете поделиться своим успехом? что конкретно вы делали и очередность действий?
      лог интересно посмотреть.
      у меня подобный аппарат, но пытаюсь всего-лишь восстановить прошивку 433 после неудачной перезагрузки. одно но — shsh поленился сохранить заранее (так ка не планировал вообще перепрошиваться).

  • Razario

    ipad 2 3g сейчас буду пробывать прошиться на 4.3.4 выскакивает ошибка 3194 помогите плиз

  • Vadim

    Так можно или нет зделать откат? Я раз пять пробывал…и в конце