Dans Android, toutes les applications ont un numéro d'identification d'utilisateur. Ces numéros d'identification permettent au système d'exploitation d'identifier les applications et les privilèges dont elles disposent et auxquels elles peuvent accéder.
Il existe un utilisateur spécial, dont le numéro d'identification est 0. Il s'agit de l'utilisateur Root, qui possède tous les privilèges et peut accéder à tout.
Quand vous Racine votre appareil, vous ajoutez un binaire qui permet à d'autres applications de fonctionner avec les privilèges de l'utilisateur root. La modération de ce binaire se fait généralement avec une application GUI comme SuperSU.
Des méthodes alternatives d'enracinement ont été inventées après qu'Android 6.0 a mis en œuvre de nouveaux correctifs de bogues qui empêchaient l'utilisation de la méthode traditionnelle.
En outre, avec l'introduction de SEAndroid, l'utilisateur Root peut lui aussi être contraint d'agir de telle sorte qu'il ne dispose plus d'un pouvoir illimité.