Una vez que se inicia una computadora, el sistema operativo recibe un control exclusivo sobre los recursos del sistema (acceso al kernel). Después de que esto ocurra, si un programa quiere ejecutarse, debe pedirle al sistema operativo que lo deje funcionar. Antes de que iOS permita que se ejecute una aplicación, examina el código que se va a cargar en la memoria desde el binario y lo compara con un valor firmado que demuestra al sistema operativo que Apple ha revisado el contenido del binario y le ha dado el color verde. ligero. Solo después de que esta comprobación sea exitosa, el código puede ejecutarse.
Jailbreaking elimina esta comprobación al alterar el sistema operativo para que vea todas las aplicaciones como válidas y les permita ejecutarse. Dado que Apple no firmará una aplicación que realice estos cambios, las vulnerabilidades deben usarse en un código firmado de alto privilegio (normalmente el propio sistema operativo) para permitir que se introduzcan los cambios necesarios en el sistema.
El mismo tipo exacto de seguridad también podría implementarse en otros dispositivos (de hecho, es opcionalmente se puede activar en Android), sin embargo, no tener la opción de desactivarlo es altamente polémico en ese momento. Ya no es dueño de su propio hardware, ya que alguien más le está diciendo lo que puede y no puede hacer con él. Es bueno para evitar que las personas instalen accidentalmente cosas malas, pero mal desde la perspectiva de la libertad del usuario (que es la razón principal por la que no hemos visto esta tecnología expandirse a los escritorios a pesar de que es técnicamente posible hacerlo). / p>