(this is probably legit, but should only be used as a means of last resort, so the stakes are fairly low; it is only for iOS 7.1 through 10.3.3; please send me reports of any issues)

Running this tool will destroy all of your data: this is the goal. Do not run this unless you want to destroy all data.

(So, you should make a backup first. After using this tool, you will have to re-activate your device. If you are logged in to iCloud, you will need to have your Apple ID password to get access to your device after it reboots.)

(Also: if you happen to have a copy of the full XML/plist of com_apple_MobileAsset_SoftwareUpdate.xml for iOS 10 beta 1, the file which includes details on the OTA update f05a449f8f58b3f4c218d9e8894804e787162633, please send a copy of this to me: I missed that particular file :/.)

(It has now been over a year since I've posted that request, so I'm assuming no one has this file. Since then, making matters worse, I hadn't noticed that Apple decided--for some totally opaque-to-me reason--to start changing the URL of this file in recent versions of iOS, and even between "developer" and "public" beta builds :/... so I'm essentially missing tons of information about beta builds of iOS 10/11.)

(Please: if you are one of the many people scraping these URLs, don't just copy a few bits from the file and post the zip file URLs... store the entire file. That's the only way to have a copy of Apple's asset manifest signature, and it is what actually gets processed by the update check logic on the phone. I have on many occasions gone back through my archive of the actual XML files to re-process them over again to obtain different kinds of information from them; I don't understand how I'm the only person logging them.)

Cydia Impactor is a device management suite that runs on "full" computers (Windows, Linux, and Mac OS X). It was released in 2013 with one popular feature: to jailbreak Android devices using the "Master Key" exploit.

Cydia Eraser is a tool which has only one feature: to remove and revert all changes made to the device and return it to "stock" Apple iOS software without updating to a new version of iOS.

Originally, Cydia Eraser was released under the name Cydia Impactor, as "unjailbreak device" was slated to be a feature of the full tool, and the mobile implementation was built from the same codebase. However, I never finished this feature for the full version of Impactor.

Meanwhile, some of the stranger technology decisions in the original versions of Eraser that made it seem almost neccessary to have unified naming were actually changed before the tool was ever released, but I forgot to go back and re-evalulate the decision to overlap the names.

Now, newer versions of Impactor are being released and still do not have a built in version of Eraser, and so I really needed to get around to pushing the build with the name change (which was itself ready a long time ago, but was waiting on other upgrades which I also never did).

(FWIW, it is highly likely that at some point there will be multiple apps inside of this package, the package will get renamed back to Cydia Impactor, but the apps will not be named that. I don't know. I take solace in the well-known fact that the Mac OS X version of iTunes makes no sense.)

(Essentially, all of this might very well make sense if only it were done, but in these half-way stages of things only sort of being partially done on all sides it barely even makes sense to me, and I have at least some concept of the vision. It probably looks like insanity to you all :/.)

This will remind some of a tool called iLEX RAT, which was compatible with iOS 4 through iOS 6, as well as Semi-Restore, a desktop tool like iLEX RAT that came out a month later (in 2013).

However, this tool is different: after the tool finishes, damaged/lost files will be repaired (back to Apple stock) and the device will no longer be "jailbroken".

There are two main reasons someone might want to do this: 1) you want to sell your device to someone else, but you don't want to upgrade it (as the ability to jailbreak the device is more valuable), but you also want to delete all of your data; 2) you are noticing problems with your setup, and you've already tried ordinary troubleshooting steps, and you want to just start over again with a reasonably fresh install.

(This section is all technical information only for those curious: feel free to skip.)

Eraser uses the firmware archives provided by Apple for its "over the air" update feature. These files are ~2GB large, so Eraser goes to extreme lengths to minimize the amount of data it needs to download: most recoveries will require less than 10MB of transfer.

First, the update's "bill of materials" is compared against the files on your device, generating a list of changes.

Then, all files on your device that have been modified or otherwise destroyed are downloaded directly from Apple.

In a series of carefully calculated file migrations, all new files are moved to the user partition, and all system data is moved back to the system partition.

Up until this point, the idea is that no changes to your system have been made that are "unsafe": at any point, if Eraser fails/crashes or your device reboots, you can just run it again later.

Finally, all of the staged changes to the filesystem are "committed", all user data is deleted, and iOS is told to run its "reset all content and settings".

The idea is that this "critical window" lasts only the final few seconds of a process that lasts for multiple minutes.

(That said, I still highly recommend not at all "messing with" the app while it is running, and maybe if you have a lot of data this will take longer than I expect.)

When the device reboots, it will look as it did when you first turned it on; it will also no longer be "jailbroken": if you want to jailbreak it, you will need to do so using a desktop jailbreaking tool.

For more information on the format of OTA updates, I recommend this article by Jonathan Levin, an online update to his book, Mac OS X and iOS Internals.