Saturday, 6 August 2016

What is the future of rooting in Android? Is Google planning to eliminate rooting from Android?

technuclear.com
Rooting is a process that allows user to gain administrative rights on their Android device just like they would on a Windows or Linux machine except rooting can sometimes be a much more complicated process.

Rooting is all code, the process is performed with one goal in mind, to overcome the complications and limitations the carriers and OEMs have put on devices or to install custom firmware by unlocking the bootloader.

Here is a sneak peak at the history of rooting in Android.



A BRIEF HISTORY OF ROOTING IN ANDROID



The term rooting is derived from having "root" or super user access on Linux based machines, rooting gives similar type of permissions as one gets on a Linux or any other Unix-like machine. Rooting has gone hand in hand with the first commercial release of Android which was Cupcake 1.5 and the first device to run Android HTC Dream. Since Android is based on Linux kernel, developers knew it was entirely possible to gain root access on HTC Dream and run scripts and do modifications that would otherwise be impossible to do without root access. Rooting has since become way easier with one-click rooting methods. I remember my first Android device HTC Wildfire S and rooting it was the hardest part, running scripts on Command prompt and goldcard and stuff.



The OEMs started to encrypt the devices with locked bootloaders because apparently they couldn't stop the people from gaining root access. So why not lock the bootloader and rob them of their freedom. So what is a bootloader? Bootloader is simply a piece of code that executes before system start-up and check for originality of the software installed on the device. Though, it is possible to root your device with locked bootloader but you can't install custom software (which is actually the point of all the hardship, to install custom software and to taste the latest Android from Google or install custom recovery like CWM or TWRP) as long as your bootloader is locked. OEMs like HTC and Sony provide the user with an option to unlock the bootloader but not on carrier-locked devices and that is where it gets trickier as most of the carriers do not allow the unlocking of bootloader and in countires like US, most of the users buy carrier-locked phones.

There are always ways to get stuff done when you are in Android, so there came unofficial ways to unlock the bootloader but they were not official and very risky to say the least and often you would end up bricking your device.



WHAT PEOPLE USE ROOTING FOR?


People simply root their devices to make changes to their devices, first and foremost, to install custom firmware, to taste the latest Android version on their old device. To perform actions that are otherwise impossible on non-rooted devices, for example, overlocking the processor, deleting useless system or carrier-installed apps to make space or free-up the RAM. I once rooted an LG Optimus G to get rid of useless AT&T apps that they somehow thought would be useful to the user. I replaced the official software on my HTC Wildfire S to install Cyanogenmod 10 which performed much better than HTC Sense ever did. Why people root their devices? Because they want full control, they want to make the device feel like their own, to do whatever they want and root provides them.



GOOGLE'S (AND HARDWARE MANUFACTURER'S) CASE AGAINST ROOTING


Hardware manufacturers including Google have added features to Android that would only be available to rooted devices in the past just to minimize the need for rooting like taking screenshots and using VPNs.

Android uses Linux's security model in which no app can access another app's data and runs in its own unique ID and is isolated from every other app installed on your device. This all changes when an app is run with root privileges, this specific app can now access any app's data. This is the reason why apps like Greenify, Xposed and Titanium Backup runs so well and why they require root privileges and this is completely against Android's security model.

If you have root access on your device, this means that any potential malware can exploit your device using root and cause much greater damage than it would normally do or you could accidentally delete any important system file and could make your OS corrupted playing with root and plus there are warranty concerns as well..


STRICTLY ENFORCED VERIFIED BOOT


It seems as that Google and top OEMs are in a joint venture to close the chapter of rooting once and for all and after the enforcement of strict verified boot, they are closer than ever.After the launch of Android 7.0 Nougat, Google has announced that it will enforce strict boot verification in which whole system will will be checked for errors against a signed hash tree during the boot and won't boot if it detects any errors in the system. Previously, I have discussed strict boot verification in detail. This big step coming from none other than Google is not very encouraging at all. It will not get simpler going forward with Android Nougat and flashing custom kernels just to get root will be the norm.



WHAT DOES IT MEAN FOR THE FUTURE OF ROOTING GOING FORWARD?


The future of rooting is very blurry and nothing points to the favor of rooting and it it is obvious enough already, Google is moving forward towards an era with no rooting. I am not sure what good will it do to either Google or the end-user but it seems OEMs and Google have a common attitude towards third party development of Android.


ROOTING WILL HOPEFULLY STAY FOR NOW BUT NOT FOR LONG.


Rooting will hopefully stay for now but not for long and rootless era will happen not immediately but definitely. As we have seen, Google is slowly incorporating anti-root features in Android since Jellybean 4.3.

If you ask me, I am not surprised at all, it is only a matter of time before the freedom that we have all enjoyed will be gone forever as OEMs and carriers start to realize that excessive power to the user is not good for their business.

They are trying to make rooting less necessary for the user by adding features that would only be available after rooting and installing custom ROM but there is nothing quite like having full control over your phone.


No comments: