The below works for Nougat ROMs. I didn't have a chance to try with Oreo yet, sorry.
The ability to encrypt a device doesn’t depend on the presence of the stock recovery nor no-verity-opt-encrypt being flashed or not. It simple needs an unrooted boot.img at the moment the encryption is attempt. You do however need no-verity-opt-encrypt flashed to allow a custom ROM to boot. So the desired state to allow encryption from within a custom ROM is to have the stock boot.img with only no-verity-opt-encrypt applied to it.
The simplest sequence to archive a fully encrypted device with a custom ROM is the following:
- Flash (I recommend Dr. Ketan) ROM as always, but DISABLE ANY ROOTING in the installer
- Encrypt the device from the settings menu
- Flash the ROM one more time, this time WITH MAGISK ROOT. It will display a warning about /data not being mountable as it is now encrypted. That is ok as everything we need is already in place
If you didn’t choose fast encryption (which I recommend for security), download Trimmer (fstrim) from Play Store, tick all partitions and click Trim Now. This will free up all the sectors overwritten by the encryption process on the flash controller and makes your device work super smooth like before encryption.
This obviously only works that simple with ROMs that offer the ability to initially flash without root and if you’ve been on stock or a rootless ROM before. If that’s not the case you have the following options:
- Flash Magisk Uninstaller after initial ROM flash. You may have to reflash no-verity-opt-encrypt in TWRP again, in case it fails to boot now.
- Flash the stock book.img back in Odin and apply no-verity-opt-encrypt in TWRP. Use 7-Zip to create a tar only containing the stock BOOT.IMG and flash it in Odin using the AP slot.
- Flash back a TWRP backup taken of the boot partition before installing a root ROM, but after flashing no-verity-opt-encrypt.
Updating your ROM works no different then usual also. Just dirty flash over if it's the same ROM unless the release notes explicitly mention to factory reset. You don't need /data writable for a ROM update.
Enjoy your fully encrypted and rooted device.
The ability to encrypt a device doesn’t depend on the presence of the stock recovery nor no-verity-opt-encrypt being flashed or not. It simple needs an unrooted boot.img at the moment the encryption is attempt. You do however need no-verity-opt-encrypt flashed to allow a custom ROM to boot. So the desired state to allow encryption from within a custom ROM is to have the stock boot.img with only no-verity-opt-encrypt applied to it.
The simplest sequence to archive a fully encrypted device with a custom ROM is the following:
- Flash (I recommend Dr. Ketan) ROM as always, but DISABLE ANY ROOTING in the installer
- Encrypt the device from the settings menu
- Flash the ROM one more time, this time WITH MAGISK ROOT. It will display a warning about /data not being mountable as it is now encrypted. That is ok as everything we need is already in place
If you didn’t choose fast encryption (which I recommend for security), download Trimmer (fstrim) from Play Store, tick all partitions and click Trim Now. This will free up all the sectors overwritten by the encryption process on the flash controller and makes your device work super smooth like before encryption.
This obviously only works that simple with ROMs that offer the ability to initially flash without root and if you’ve been on stock or a rootless ROM before. If that’s not the case you have the following options:
- Flash Magisk Uninstaller after initial ROM flash. You may have to reflash no-verity-opt-encrypt in TWRP again, in case it fails to boot now.
- Flash the stock book.img back in Odin and apply no-verity-opt-encrypt in TWRP. Use 7-Zip to create a tar only containing the stock BOOT.IMG and flash it in Odin using the AP slot.
- Flash back a TWRP backup taken of the boot partition before installing a root ROM, but after flashing no-verity-opt-encrypt.
Updating your ROM works no different then usual also. Just dirty flash over if it's the same ROM unless the release notes explicitly mention to factory reset. You don't need /data writable for a ROM update.
Enjoy your fully encrypted and rooted device.
Last edited: