Quickly fix the iTunes Error 21 on iPhone / iPad / iPod during IPSW restore with this simple guide. If you are trying to restore your iPhone using a custom firmware created by Sn0wbreeze, Redsn0w or any other jailbreaking software, then you should check if your iPhone or iPad was actually in DFU mode when you tried restoring.
First, let me differentiate between Recovery mode and DFU mode
Recovery mode is a state where your iPhone loads iBoot which makes sure that whatever IPSW firmware you are restoring with is either equal or greater than the firmware you currently have on your iPhone.
On the other hand, DFU mode does not load iBoot and this allows you to restore, downgrade or upgrade your iPhone firmware to any version of choice whether its an equal, greater or lower version.
TIP: Do not use RecBoot to put your iPhone in recovery mode as this actually puts it in recovery mode. To put your iPhone in DFU mode, you have to do it manually using the instructions below:
Step 1: Turn off your iPhone, then connect it to your computer using a USB cable.
Step 2: Open iTunes.
Step 3: Press and hold both the Power (corner) button and the Home (bottom center) button together for 10 seconds.
Step 4: Without releasing the home button, let go of the Power button, but keep holding the Home button for another 10 seconds or until iTunes displays a message saying it has detected an iPhone in recovery mode.
Ok, your iPhone screen should now be blank.
NOTE that iTunes detects your iPhone in “recovery mode” but in actual fact it is in DFU mode.
Now you can go ahead and restore your device via iTunes without getting any errors.
Update: If you encounter an iTunes error 1600, 1601, 1602, 1603 or 1604, this means that your device needs to be in Pwned DFU mode before you restore. You can put your iPhone in Pwned DFU mode using Redsn0w. From the Redsn0w software, go to Extras => Pwned DFU. Then try restoring again while in Pwned DFU mode.