Preventing Baseband Update
Swap Ramdisks Method
Step 1: Swap Ramdisks
Step 2: Edit options.plist
- Unpack custom IPSW
- Decrypt Restore Ramdisk using xpwntool and mount it
- Navigate to /usr/local/share/restore
- Edit options.plist on the restore ramdisk
(Ignore the SystemPartitionSize in your plist file and leave it)
- Reencrypt the restore ramdisk
- Repack the IPSW
- Prepare device for custom firmware using redsn0w
- Restore IPSW to iTunes in pwned DFU Mode
TinyUmbrella/Cydia Method for iPhone 4
The iPhone 4 requires a AT+NONCE key signature from Apple in order to update the baseband. Pointing the hosts file to Cydia Server or running TinyUmbrella will allow this request for signature to be ignored, thus preventing a baseband update.
- This only works if Cydia/TinyUmbrella accepts the firmware's SHSH.
- This method 'works' with iOS 4.2.1, but in the restore ramdisk there is a baseband version check. If it doesn't match, it will not boot. The usual 'Kick out of recovery mode' methods won't work, so this method is actually not useful for iOS 4.2.1.
- Edit the hosts file and add the line "126.96.36.199 gs.apple.com" without the quotes, or run TinyUmbrella after saving the firmware's SHSH. If Cydia Server hasn't got your SHSH, but you have it locally, use TSS Server method in TinyUmbrella.
- Use the "Restore" button in iTunes to update. you will get error 1013 on 4.2.1 when trying to restore thought the restore ramdisk
- If downgrading from a later firmware to a firmware that performs baseband checks, you will get error 1015. The only way to bypass this is to either update to the firmware version that matches your baseband version or downgrade (if possible) to an earlier firmware that doesn't perform the baseband version checks.
User IH8sn0w mentioned a new method in this tweet (an upgrade-only option in Sn0wbreeze). He confirmed that his method is not the same as the above mentioned methods. To get more details, someone would have to compare the generated ipsw content.