*POSSIBLE SOLUTION*
I received the same error as many of you -- "iTunes could not restore the iPhone <PHONE_NAME> because the backup was corrupt or not compatible with the iPhone that is being restored." -- and came across this thread looking for answers. Unfortunately none properly answered it, and about a day's worth of trial and error I have came to a solution that works for me. I hope it works for one or more of you.
I performed a Sync in iTunes before upgrading from iOS 7.0.6 to 7.1. For whatever reason, the upgrade process failed. A subsequent Restore iPhone process worked, however Restore From Backup (using the most recent backup) resulted in the error above. Additionally, my backups are encrypted with a password so that ruled out a number of tools from attempting to fix.
Note this process takes time, approximately 2 hours on an almost-full 32GB iPhone 4S. If you follow this guide, please do so carefully!
I also apologise for the poor formatting. It may be more readible, especially the indenting, in a text editor with Word Wrapping disabled.
Requirements:
- iTunes 11 (preferably the latest version available)
- iBackupBot (7-day trial version available)
- a recent iTunes backup from your prior iOS version
--- if it's been replaced by your new iOS version, you probably can't follow this guide
--- if it's still valid, I suggest manually creating a copy of it and giving it a new name
----- for example, on Windows 7:
------- browse to %APPDATA%\Apple Computer\MobileSync\Backup\
------- copy the folder name into the same folder (select folder, right-click, Copy; right-click blank part of window, Paste); it'll have " - Copy" appended to its name, which is fine
------- open this "Copy" folder, and open Info.plist in a text editor e.g. Notepad
------- search for text >Display Name<
------- on the line below, give your backup a new name (mine is now named "iPhone pre-iOS71-install" without quotes)
------- save/close Info.plist
Process:
Before proceeding, note this WILL wipe your iPhone. Proceeding is at YOUR risk!
- *IMPORTANT* ensure Find My iPhone is turned off (Settings > General)
--- if currently enabled, it requires internet access (3G/wifi) to disable
- close iTunes + open iBackupBot
- determine which partial backup (system items only) in iBackupBot which will complete without error
--- process (of elimination!)
----- right-click desired backup, click 'Restore to device'
----- enter encryption password if required
----- select Partial Restore
----- expand System Files, tick several items (note which you are selecting!!)
----- untick User App Files
----- click OK, and the restore will start
------- if the restore succeeds, nothing in the selected items was the problem; these can be deselected in the next process of elimination; repeat this process with a new selection
------- if the restore fails, within the small selection you had just selected, perform the process of elimination one by one
--------- in my case, Camera Roll is the culprit!
--------- in your case, you may have one or more culprits, so don't just stop when you've found one!
- after the above testing is complete, close iBackupBot
- unplug iPhone from host computer and erase iPhone via the iPhone itself
--- Settings > General > Reset > Erase All Content and Settings > Erase iPhone > Erase iPhone
--- provide your Apple ID if prompted
- once your iPhone has been erased and is at the "Welcome screen", plug it in to the host computer, and iTunes will most likely open
- in iTunes, after a couple of minutes of the iPhone appearing to be busy, it may advise it's been unlocked, and to press Continue; press Continue
- iTunes may ask to "Set up as new iPhone" or "Restore from this backup"; choose "Restore from this backup" and choose your desired backup to restore from, then click Continue
--- if it prompts to Use Newer Backup or Use Older Backup, choose Use Older Backup
--- enter encryption password if prompted
--- note, this will fail as it had previously (same error); click OK on the error message, the phone will eventually restart and be detected by iTunes, and iTunes starts the app/library transfer process
----- this could take a long time: for me, it took around 75 minutes for an almost full iPhone 4S 32GB
- once sync is complete, with your iPhone selected in iTunes, untick "Automatically sync when this iPhone is connected" then click Apply at the bottom
- close iTunes
- *IMPORTANT* ensure Find My iPhone is turned off (Settings > General)
--- if currently enabled, it requires internet access (3G/wifi) to disable
- go into Airplane Mode (to ensure nothing tries to be received by the iPhone, notifications, etc. - merely a precautionary measure)
--- if you get prompt advising Verification Failed, it is possible Find My iPhone did not properly verify and is still considered enabled; this will become a problem when attempting to restore
- open iBackupBot
- perform partial restore
--- right-click desired backup, click 'Restore to device'
--- enter encryption password if required
--- select Partial Restore
--- expand System Files, untick item/s that previously prevented a successful restore
----- in my case, Camera Roll
--- leave all User App Files items selected
--- click OK, and restore will start
- close iBackupBot
- *IMPORTANT* ensure Find My iPhone is turned off (Settings > General)
--- if currently enabled, it requires internet access (3G/wifi) to disable
- go into Airplane Mode (to ensure nothing tries to be received by the iPhone, notifications, etc. - merely a precautionary measure)
--- if you get prompt advising Verification Failed, it is possible Find My iPhone did not properly verify and is still considered enabled; this will become a problem when attempting to restore
- via your iPhone, confirm app data is present (open apps that you are normally logged into and/or have data e.g. messages/chats for WhatsApp)
- if data is present, good, you're probably done!
- if data is missing (was for me), try the following:
--- open iBackupBot
--- locate the backup you recently restored and expand it
--- click onto the User App Files folder
--- with all items listed in the right pane, select all (excluding items named com.apple.*)
----- first sort all by clicking onto the Name column header
----- highlight top record, scroll down to bottom, hold the SHIFY key and click the bottom record
----- (OPTIONAL) scroll back toward com.apple.* and, while holding CTRL, click each entry to deselect it
------- this is suggested as we don't know what changes, if any, have occurred on these locations with the change in iOS versions
--- click the Restore button at the top
--- enter password if required (it is for me!)
--- click OK
----- it will first extract items to a temp folder for restoration, then perform the restore
--- your iPhone will reboot post-restore
--- close iBackupBot
--- once again, confirm app data is present
----- by this stage, my data was present; for WhatsApp, I had to re-verify my phone, but the former chats had been restored!
Hopefully this works for you!
I also suggest renaming or deleting the backup in %APPDATA%\Apple Computer\MobileSync\Backup\ (not the one with "Copy") as it will still contain the corruption that caused backups to fail in the first place. Once done, perform a backup in iTunes.