Ошибка «unable to request SHSH»: причины и способы исправить

Ошибка unable to request SHSH появляется в TinyUmbrella, futurerestore и схожих утилитах в момент, когда программа отправляет запрос на сервер подписи Apple и не получает корректный ответ — в результате сохранить SHSH-сертификаты (блобы) для прошивки не удаётся. Чаще всего сбой связан с тем, что Apple уже прекратила подписывать запрошенную версию iOS, либо запрос блокируется на уровне сети, hosts-файла или устаревшей версии самой утилиты.

Проблема критична для тех, кто планирует даунгрейд или восстановление на неподписываемую версию iOS: без валидных SHSH-блобов такая операция невозможна в принципе. Ниже разберём, что означает эта ошибка, как отличить сетевой сбой от прекращения подписи и какие шаги реально помогают, а какие — пустая трата времени.

Что означает ошибка и как работает запрос SHSH

SHSH-сертификат — это цифровая подпись, которую сервер Apple выдаёт для конкретной связки «устройство + версия iOS». Утилиты вроде TinyUmbrella формируют специальный запрос (TSS-запрос), отправляют его на серверы Apple и сохраняют ответ в виде файла-«блоба». Сообщение unable to request SHSH означает, что на каком-то из этих этапов произошёл сбой: запрос не ушёл, сервер отклонил его или ответ не удалось обработать.

Важно понимать ключевое ограничение: Apple подписывает только актуальные версии iOS, и для закрытых версий сервер выдаёт отказ — это нормальное поведение, а не неисправность. Поэтому первое, что нужно установить, — подписывается ли вообще та прошивка, для которой вы запрашиваете сертификаты. Статус подписи проверяется через публичные сервисы мониторинга IPSW или непосредственно в интерфейсе утилиты.

Если версия подписывается, а ошибка всё равно возникает, причина почти всегда локальная: сеть, настройки системы или сама утилита. Дальнейшая диагностика строится именно вокруг этих трёх направлений.

Основные причины сбоя

Практика показывает, что список вероятных источников проблемы невелик. Стоит проверять их последовательно, от самых частых к редким:

  • 🔒 Версия iOS больше не подписывается — сервер Apple отклоняет запрос, и никакая настройка это не изменит.
  • 🌐 Проблемы с сетью или DNS — запрос не доходит до серверов Apple из-за провайдера, VPN, прокси или фильтрации трафика.
  • 📄 Модифицированный файл hosts — строки, перенаправляющие gs.apple.com на сторонние серверы (наследие старых джейлбрейк-инструкций), ломают запрос.
  • 🕐 Устаревшая версия утилиты — старые сборки TinyUmbrella могут не поддерживать новые устройства и форматы запросов.
  • 🔌 Некорректное определение устройства — неверно считанный ECID или нестабильное USB-подключение приводят к ошибочному запросу.
⚠️ Внимание: если вы когда-либо редактировали файл hosts для работы с серверами Cydia (например, добавляли строки с gs.apple.com), обязательно проверьте его в первую очередь. Активное перенаправление делает невозможным прямой запрос к серверам Apple.
📊 С чем связана ваша ошибка unable to request SHSH?
Версия iOS уже не подписывается
Проблемы с сетью или hosts
Ошибка появляется на всех версиях
Ещё не разобрался, ищу причину

Шаг 1. Проверка статуса подписи прошивки

Прежде чем копаться в настройках, убедитесь, что запрошенная версия iOS вообще подписывается. Откройте любой актуальный сервис проверки статуса IPSW, найдите свою модель устройства и посмотрите, какие версии отмечены как подписываемые (signed). Если нужная версия в списке закрытых — ошибка закономерна, и сохранить блобы для неё уже невозможно.

Для закрытых версий существует отдельный сценарий: если вы сохранили блобы раньше, пока прошивка подписывалась, их можно использовать с futurerestore при выполнении ряда условий (совместимость SEP и baseband, наличие валидного generator и т.д.). Но получить новые сертификаты задним числом не выйдет — это принципиальное ограничение механизма подписи.

Шаг 2. Проверка файла hosts и сетевых настроек

Если версия подписывается, переходите к локальной диагностике. На Windows файл hosts находится по пути C:\Windows\System32\drivers\etc\hosts, на macOS — /etc/hosts. Откройте его в текстовом редакторе с правами администратора и найдите все строки, содержащие gs.apple.com. Их нужно удалить или закомментировать символом # в начале строки, после чего сохранить файл.

Далее проверьте саму доступность серверов. В командной строке выполните:

ping gs.apple.com

Если пинг проходит, но утилита всё равно выдаёт ошибку, временно отключите VPN, прокси и сторонние файрволы — они могут перехватывать или модифицировать HTTPS-запросы. Также имеет смысл попробовать другую сеть (например, раздать интернет с телефона), чтобы исключить фильтрацию на стороне роутера или провайдера.

☑️ Диагностика ошибки unable to request SHSH

Выполнено: 0 / 6

Шаг 3. Обновление утилиты и проверка подключения устройства

Старые сборки TinyUmbrella давно не обновлялись и могут не знать о новых моделях iPhone и iPad — в этом случае запрос формируется некорректно. Для современных устройств чаще используют альтернативные инструменты сохранения блобов (например, веб-сервисы и утилиты на базе tsschecker), которые поддерживаются актуальными. Убедитесь, что используете свежую версию выбранного инструмента из официального источника.

Отдельный момент — идентификатор устройства. Для запроса SHSH нужен корректный ECID, а для новых устройств также параметры вроде ApNonce и BoardConfig. Если утилита считывает их с ошибкой или вы вводите ECID вручную в неверном формате (десятичный вместо шестнадцатеричного), сервер ответит отказом. Переподключите устройство другим кабелем, в другой USB-порт и сверьте ECID с данными, которые показывает само устройство или доверенная утилита.

Сравнение типичных сценариев ошибки

Соберём разбор причин в компактную таблицу, чтобы быстро сопоставить симптом с действием:

СимптомВероятная причинаДействие
Ошибка только для старой версии iOSВерсия больше не подписываетсяЗапрашивать блобы для актуальной версии
Ошибка для всех версий сразуСеть, hosts, VPN или файрволПроверить hosts и доступность gs.apple.com
Устройство не определяется утилитойУстаревшая версия программыОбновить инструмент или сменить утилиту
Сервер отклоняет запрос при ручном вводе данныхНеверный формат ECID или параметровСверить идентификаторы с данными устройства
Ошибка только в одной сетиФильтрация у провайдера или в роутереПроверить через другое подключение
⚠️ Внимание: не используйте «сохранённые» SHSH-файлы из непроверенных источников и чужих сборок. Блобы привязаны к конкретному ECID устройства — чужой сертификат физически не подойдёт вашему аппарату, а поддельный файл приведёт к сбою восстановления.

Когда ошибку исправить нельзя

Честный ответ: если Apple закрыла подпись нужной версии iOS, ошибка unable to request SHSH для неё неустранима никакими настройками. Механизм подписи работает на стороне сервера, и обойти его легальными средствами невозможно. Всё, что остаётся, — сохранять блобы для текущих подписываемых версий на будущее, чтобы при выходе следующих обновлений у вас была точка отката.

Для владельцев устройств с джейлбрейком существуют дополнительные механизмы (генераторы, ApNonce-совместимость), но они работают только с заранее сохранёнными блобами и имеют массу ограничений по версиям. Это отдельная тема, требующая изучения документации конкретных инструментов вроде futurerestore.

Почему нельзя сохранить SHSH «задним числом»

Сервер Apple подписывает прошивку только в ограниченное окно времени после её выхода. Как только выходит новая версия iOS, подпись предыдущей обычно закрывается в течение короткого срока. После этого сервер отвечает отказом на любой TSS-запрос для старой версии — именно этот отказ утилиты и показывают как unable to request SHSH.

Профилактика: как не потерять возможность отката

Единственная надёжная стратегия — регулярно сохранять блобы сразу после выхода каждой новой версии iOS, пока она подписывается. Это занимает несколько минут, но в будущем может дать возможность отката, которой иначе не будет.

  • 💾 Сохраняйте блобы для каждой новой версии iOS сразу после её релиза.
  • 📁 Храните файлы сертификатов в нескольких копиях — локально и в облаке.
  • 🔢 Записывайте ECID устройства заранее, чтобы не искать его в аварийной ситуации.
  • 🧹 Держите файл hosts чистым от записей gs.apple.com, если не используете их осознанно.

Часто задаваемые вопросы

Можно ли исправить ошибку, если версия iOS уже не подписывается?

Нет. Отказ сервера Apple обойти нельзя — для закрытых версий подходят только блобы, сохранённые ранее, пока прошивка подписывалась.

Помогает ли смена DNS при ошибке unable to request SHSH?

Иногда. Если провайдер некорректно резолвит адреса серверов Apple, смена DNS на публичный (например, 8.8.8.8) может помочь. Но чаще проблема оказывается в файле hosts или VPN.

Почему TinyUmbrella не видит мой новый iPhone?

Утилита давно не обновляется и не поддерживает современные модели. Для новых устройств используйте актуальные инструменты сохранения блобов на базе tsschecker или профильные веб-сервисы.

Подойдут ли SHSH-блобы с другого такого же устройства?

Нет. Сертификаты жёстко привязаны к ECID конкретного аппарата — чужие блобы бесполезны даже для идентичной модели.

Ошибка возникает на всех версиях iOS сразу — что проверять первым делом?

Начните с файла hosts и сетевых фильтров: удалите записи gs.apple.com, отключите VPN и файрвол, проверьте пинг до gs.apple.com. Если всё чисто — обновите или смените саму утилиту.