Starting in Android 4.4, Google implemented verified boot (known as dm-verity) in the Android kernel to prevent malware from hiding in your device. This was all behind the scenes until Android 6.0 Marshmallow—that's when Google started alerting users to system integrity. In Android 7.0, it's going a step further. In Nougat, verified boot will be "strictly enforcing" and won't allow your device to boot if the software has been compromised. Android will also be able to correct errors, but this will cause some headaches for modders.

When your phone starts up, the dm-verity kernel driver checks each block against a signed hash tree to make sure there's no corruption. A phone with errors running Nougat won't boot up, but will offer the user an option to boot into a limited functionality mode (possibly safe mode, which has existed for years). Google says that devices shipping with 7.0 will have this feature, but strictly enforced mode will only be active on bootloader locked devices.

So, let's say you want to root or install Xposed. As long as your device is bootloader unlocked, that should still work. A device with a locked bootloader will (probably) fail the hash check and won't boot normally. There are some devices where the bootloader can't be unlocked, but it may still be possible to root. That's where you may run into problems with Nougat. That kind of modification is indistinguishable from data corruption to dm-verity.


In addition to strict verified boot, all Android 7.0 devices will have a feature called forward error correction. Android will include parity blocks (i.e. redundant code) that can be used to repair errors on your device. That should mean fewer instances where a phone fails to boot because of corruption.

The more recovery blocks you include, the more errors you can correct, but Google doesn't want to take up too much space with error correction code. Using some clever tweaks to forward error correction, Google says it can fix significant corruption with just 0.8% space overhead. You can get all the details on that process in Google's blog post.