tsschecker

January 2, 2018 · View on GitHub

tsschecker is a powerful tool to check tss signing status of various devices and iOS versions.

Latest compiled version can be found here:
(macOS & Windows)
https://github.com/encounter/tsschecker/releases

Features

  • Allows you to get lists of all devices and all iOS/OTA versions for a specific device.
  • Can check signing status for default iOS versions and beta ipsws (by specifying a BuildManifest.plist)
  • Works without specifying any device relevant values to check signing status, but can be used to save blobs when given an ECID and the option --print-tss-response (although there are better tools to do this).

tsschecker is not only meant to be used to check signing status, but also to explore Apple's tss servers. By using all of its customization possibilities, you might discover a combination of devices and iOS versions that is now getting signed but wasn't getting signed before.

Dependencies

Those don't need to be installed manually

tsschecker help

(might become outdated):

Usage: tsschecker [OPTIONS]

option (short)option (long)description
-d--device MODELspecify device by its MODEL (eg. iPhone4,1)
-i--ios VERSIONspecify iOS version (eg. 6.1.3)
--buildid BUILDIDspecific buildid instead of iOS version (eg. 13C75)
--boardconfig BOARDspecific boardconfig instead of iPhone model (eg. n61ap)
-h--helpprints usage information
-o--otacheck OTA signing status, instead of normal restore
-b--no-basebanddon't check baseband signing status. Request a ticket without baseband
-m--build-manifest MANIFESTmanually specify buildmanifest. (can be used with -d)
-s--savesave fetched shsh blobs (mostly makes sense with -e)
-l--latestuse latest public iOS version instead of manually specifying one
especially useful with -s and -e for saving blobs
--apnonce NONCEmanually specify APNONCE instead of using random one (not required for saving blobs)
--sepnonce NONCEmanually specify SEPNONCE instead of using random one (not required for saving blobs)
--save-path PATHspecify path for saving blobs
-e --ecid ECIDmanually specify an ECID to be used for fetching blobs, instead of using random ones.
ECID must be either dec or hex eg. 5482657301265 or ab46efcbf71
--betarequest ticket for beta instead of normal release (use with -o)
--list-deviceslist all known devices
--list-ioslist all known iOS versions
--nocacheignore caches and re-download required files
--print-tss-requestprints tss request that will be sent (plist)
--print-tss-responseprints tss response that come from Apple (plist)