Сообщение «Querying for SHSH file on Apple server» появляется в момент, когда утилита восстановления или прошивки (например, iTunes, Finder или сторонние инструменты вроде futurerestore) отправляет запрос на серверы Apple, чтобы получить цифровую подпись для конкретной версии iOS на конкретном устройстве. Если сервер подписывает эту прошивку — процесс продолжается, если нет — восстановление прерывается с ошибкой. Именно на этом этапе пользователи чаще всего сталкиваются с непониманием: запрос «висит», завершается ошибкой или возвращает отказ.
В этой статье разберём, что такое SHSH-сертификаты (blobs), зачем Apple их проверяет, почему запрос может завершаться неудачей и какие действия безопасны в каждой ситуации. Материал ориентирован на тех, кто восстанавливает iPhone или iPad, сохраняет blobs для возможного даунгрейда или диагностирует сбой на этапе подписи прошивки.
Что такое SHSH и зачем Apple проверяет подпись
SHSH (Signature HaSH) — это цифровая подпись, которую сервер Apple выдаёт для связки «конкретное устройство + конкретная версия iOS + уникальный идентификатор чипа (ECID)». Без действующей подписи загрузчик устройства откажется устанавливать прошивку, даже если сам файл IPSW полностью исправен.
Так работает механизм защиты от произвольного отката: Apple подписывает только те версии iOS, которые считает актуальными. Как правило, подпись старых версий закрывается вскоре после выхода новой. Поэтому этап querying for SHSH file — это не техническая формальность, а ключевая проверка, определяющая, разрешено ли вообще восстановление на выбранную версию.
- 🔑 ECID — уникальный идентификатор процессора устройства, запрос SHSH всегда привязан к нему.
- 📦 IPSW — файл прошивки, для установки которого требуется действующая подпись.
- 🖥️ TSS-сервер — сервер Apple (Tatsu Signing Server), который обрабатывает запросы на подпись.
- 💾 SHSH blobs — сохранённая локально подпись, которую можно использовать позже через сторонние инструменты.
Почему запрос зависает или завершается ошибкой
Зависание на этапе запроса SHSH почти всегда связано с одной из трёх групп причин: сетевыми проблемами, состоянием серверов Apple или тем, что запрашиваемая версия iOS больше не подписывается. Отличить их важно, потому что действия в каждом случае разные.
Если прошивка перестала подписываться, никакие сетевые настройки не помогут — сервер ответит отказом, и это нормальное поведение системы, а не неисправность устройства. Если же версия подписывается, но запрос не проходит, стоит проверить соединение, файл hosts на компьютере и работу самого сервера подписи.
⚠️ Внимание: если на компьютере ранее использовались утилиты вроде TinyUmbrella, в файлеhostsмогли остаться строки, перенаправляющие запросы к серверам Apple на сторонний или локальный адрес. Это классическая причина ошибок на этапе запроса SHSH — проверьтеhostsи удалите записи, связанные сgs.apple.com.
- 🌐 Нестабильное интернет-соединение или блокировка соединения брандмауэром/антивирусом.
- 🚫 Запрашиваемая версия iOS больше не подписывается Apple.
- 📝 Устаревшие или неверные записи в файле
hosts. - ⏳ Временная перегрузка или технические работы на серверах подписи Apple.
Как проверить, подписывается ли версия iOS
Прежде чем начинать восстановление, полезно заранее узнать, выдаёт ли Apple подпись для нужной версии прошивки на вашем устройстве. Для этого существуют общедоступные сервисы проверки статуса подписи, которые опрашивают серверы Apple и показывают актуальное состояние для каждой модели.
Порядок действий безопасен и обратим: вы ничего не меняете на устройстве, а лишь получаете информацию. Если нужная версия не подписывается, восстановление на неё штатными средствами невозможно, и стоит выбрать актуальную подписываемую версию.
☑️ Проверка перед восстановлением
⚠️ Внимание: файл IPSW должен строго соответствовать модели устройства. Прошивка от другой модификации (даже того же поколения iPhone) не пройдёт проверку подписи и может привести к ошибке восстановления. Идентификатор модели можно посмотреть на корпусе устройства, в настройках или на коробке.
Сохранение SHSH blobs: зачем и как это работает
Сохранение blobs — это способ зафиксировать подпись, пока Apple её выдаёт, чтобы потенциально использовать её позже. Важно понимать ограничение: сохранённые SHSH blobs не дают универсальной возможности отката — их применимость зависит от поколения устройства, наличия уязвимостей в загрузчике и совместимости версий (SEP/baseband). Для многих современных устройств даунгрейд с blobs либо невозможен, либо сильно ограничен.
Для сохранения blobs традиционно используются инструменты, которые запрашивают подпись у сервера Apple по ECID устройства и сохраняют результат в файл. Перед использованием любого такого инструмента проверяйте его совместимость с вашим поколением устройства и источник загрузки — доверять стоит только проектам с открытой репутацией в сообществе.
Что такое генератор (generator) и nonce
При сохранении blobs для будущего восстановления через futurerestore важно зафиксировать значение generator — оно связывается с nonce, который устройство генерирует при загрузке. Если при попытке восстановления nonce не совпадёт с сохранённым, подпись не сработает. Детали зависят от чипа и версии iOS, поэтому сверяйтесь с документацией конкретного инструмента.
Типичные сценарии и что делать в каждом
Ниже — сводная таблица распространённых ситуаций на этапе запроса SHSH. Она помогает быстро сориентироваться, какая проверка нужна в первую очередь.
| Ситуация | Вероятная причина | Что проверить |
|---|---|---|
| Запрос зависает надолго | Сеть или перегрузка сервера | Соединение, повтор позже |
| Отказ в подписи | Версия iOS не подписывается | Статус подписи версии |
| Ошибка сразу при старте | Записи в hosts или блокировка | Файл hosts, брандмауэр |
| Ошибка на конкретном IPSW | Файл не от вашей модели | Идентификатор устройства |
| Blobs сохранены, но откат не работает | Несовместимость SEP/nonce | Документация инструмента |
Обратите внимание: единой универсальной инструкции нет, потому что поведение зависит от поколения чипа, версии iOS и используемого инструмента. Если ситуация не укладывается в таблицу, начинайте с самых безопасных проверок — сети и статуса подписи.
Безопасные шаги при ошибке запроса SHSH
Начните с обратимых действий, которые не затрагивают данные устройства. Проверьте интернет-соединение, временно отключите VPN и фильтрующее ПО, убедитесь, что файл hosts не содержит перенаправлений на домены Apple. Затем повторите попытку — временные сбои серверов подписи случаются, и повторный запрос нередко проходит.
Если цель — обычное восстановление на актуальную версию iOS, используйте штатные средства: iTunes на Windows или Finder на macOS. Сторонние инструменты оправданы только для специфических задач вроде работы с сохранёнными blobs, и там требуется точное следование документации конкретной утилиты.
Часто задаваемые вопросы
Можно ли обойти проверку SHSH и установить любую версию iOS?
Штатно — нет. Проверка подписи встроена в загрузчик устройства. Обход возможен только при наличии аппаратных уязвимостей в конкретных поколениях чипов и с помощью специализированных инструментов, что неприменимо к большинству современных устройств.
Что делать, если запрос SHSH зависает на долгое время?
Дождитесь разумного тайм-аута, затем проверьте интернет-соединение, отключите VPN и фильтрующее ПО, проверьте файл hosts и повторите попытку позже. Возможна временная перегрузка серверов Apple.
Где взять SHSH blobs для моего устройства?
Blobs нельзя скачать из интернета — они уникальны для каждого ECID. Их можно только сохранить самостоятельно, пока Apple подписывает нужную версию, с помощью соответствующих утилит.
Помогут ли сохранённые blobs откатиться на старую iOS?
Не гарантированно. Применимость blobs зависит от поколения устройства, совместимости SEP и baseband, а также от совпадения nonce. Для многих современных моделей откат с blobs невозможен или сильно ограничен.
Опасно ли прерывать процесс на этапе запроса SHSH?
Этап запроса подписи происходит до записи прошивки на устройство, поэтому прерывание на нём обычно безопасно. Опаснее прерывать процесс после того, как началась фактическая запись разделов.