How-to Downgrade iPhone Firmware using Cydia

By
On December 4, 2010

Before downgrading iPhone firmware (i.e.: downgrade iOS 4.3 to 4.2.1) you must have the saved SHSH Blobs of the firmware version which you wish to downgrade to (i.e.: SHSH for iOS 4.2.1). Why do you need to save SHSH blobs before downgrade iPhone firmware?
It’s explained very well in this post: What is ECID SHSH Blobs
But the main point is, since Apple will need to send signature approval back to iTunes while restoring firmware process and Apple will deny to sign if the firmware is older than the current release. (i.e.: restore iOS 4.2.1 while the current release is iOS 4.3).
SHSH Blobs is signature files that has been approved by Apple, once you have saved it, you will not need to connect to Apple again while iTunes restoring firmware.

What do you need to downgrade iPhone firmware?

  • Saved SHSH Blobs on Cydia
  • How-to save iPhone SHSH?

    How-to Save ECID SHSH Blobs using Cydia (requires jailbreak)

    How-to check if you have any saved SHSH?
    Open Cydia app, you will see the saved SHSH on the top of Cydia home.

    In this picture, cydia says: SHSH: iOS 4.0.1, 4.0.2, 4.1, 4.2.1, 42b3
    It means that I can downgrade to iOS 4.0.1, 4.0.2, and so on. You will not be able to downgrade to firmware version which is not mentioned in cydia.

  • iPhone firmware file (.ipsw)
  • Download the firmware which you wanted to downgrade the version to.
    Where to download the iPhone firmware (IPSW file)? Direct Download iPhone Firmware (All Versions)

  • Install the latest version of iTunes
  • Get the latest version of iTunes here: Download iTunes latest version direct link

Get started to downgrade iPhone firmware.

  1. Open Notepad using Administrator’s rights. Start → All Programs → Accessories → right click Notepad → Run as Administrator.
  2. Click File → Open → browse to C:Windowssystem32driversetchosts

    /etc/hosts on Mac (run as root or use sudo)

  3. Add any of the following entries to the bottom of the line:
    Either add
    74.208.105.171 gs.apple.com
    Or
    74.208.10.249 gs.apple.com

    Both are IP addresses of Cydia Servers where your SHSH Blobs information will be saved. Add that line into your hosts file means that you are pointing gs.apple.com (Apple’s server –where shsh blobs information requested) to 74.208.105.171 or 74.208.10.249 (Cydia server –where your shsh blobs information saved).

  4. Save the changes by clicking File → Save or pressing Ctrl + S.

    To verify that you did it correctly, type ping gs.apple.com on command prompt and it must be resolved to 74.208.10.249 or 74.208.105.171.
    Example:

    C:>ping gs.apple.com

    Pinging gs.apple.com [74.208.10.249] with 32 bytes of data:
    Reply from 74.208.10.249: bytes=32 time=427ms TTL=49
    Reply from 74.208.10.249: bytes=32 time=429ms TTL=49
    Reply from 74.208.10.249: bytes=32 time=468ms TTL=49
    Reply from 74.208.10.249: bytes=32 time=447ms TTL=49

    Ping statistics for 74.208.10.249:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
    Minimum = 427ms, Maximum = 468ms, Average = 442ms

    C:>

    ping gs.apple.com 74.208.10.249

    All right, you are good to go.

  5. Open iTunes
  6. Put your iPhone into DFU mode.
  7. Restore the iPhone firmware using shift + restore method (Windows) / Option + Restore (Mac) (Read: How-to Update iPhone firmware using Shift + Restore method),
  8. Browse to desired firmware version and wait until the process finished.