Conceptos sobre el desbloqueo y liberación de un iPhone/iPod Touch
Apple ha puesto en el mercado 2 productos diferentes pero muy similares: el iPod Touch y el iPhone.
Inicialmente Apple lanzó el
iPod Touch, un dispositivo multimedia que nos permite escuchar música, visualizar vídeos, hacer fotos y acceder a internet, con unas interesantes
especificaciones técnicas que suponían un gran avance desde su predecesor, el
iPod Classic.
Posteriormente lanzó el
iPhone, que no era más que un iPod Touch con funciones de teléfono y unas completísimas
especificaciones técnicas. Este primer modelo de iPhone recibió el nombre de iPhone Classic. Posteriormente se lanzó (a bombo y platillo) la nueva generación de iPhone al que se le llamó iPhone 3G, y por coherencia al iPhone Classic se le rebautizó como iPhone 2G.
Las diferencias más destacables entre el iPhone 2G y el iPhone 3G radican en las tecnologías de comunicación
3G y
GPS que garantizan una mayor velocidad de acceso a internet y la geolocalización. El iPhone 2G usa la tecnología
EDGE (por eso a veces se le conoce como iPhone EDGE). A parte de estas y otras diferencias, podemos hablar hacer referencia al iPhone independientemente de si es 2G o 3G.
Imagínate que te compras un PC con Windows y al arrancarlo te das cuenta que solo puedes agregar programas si estos están registrados en una lista que maneja Microsoft... imagínate que no puedes ir a cualquier tienda y comprar el programa/juego que quieras, imagínate que no tienes ni siquiera el icono de Mi Pc para acceder a las carpetas y archivos de tu PC.... esta es la situación que nos encontramos con un iPhone/iPod Touch recién comprado.
Cuando adquieres un iPhone/iPod Touch viene con una serie de funciones y aplicaciones de serie, al igual que cuando compras un PC con Windows. Con el PC puedes agregar y quitar programas desde cualquier fuente (no estás obligado a comprar y/o adquirir los programas a Microsoft en exclusividad) y puede ser usado por múltiples personas. Sin embargo, el iPhone solo te permite agregar aplicaciones desde un único y oficial repositorio de aplicaciones llamado
AppStore, y no puedes usar la tarjeta SIM de cualquier operadora (solo la tuya).
De lo que se trata pues es de eliminar este tipo de restricciones. Estas restricciones reciben dos nombres bien diferenciados: Desbloquear (Jailbreak) y liberar (unlock). Desbloquear se refiere a abrir la posibilidad de instalar cualquier aplicación desde otras fuentes ajenas al AppStore así como
acceder libremente al sistema de archivos del iPhone, mientras que liberar se refiere a la posibilidad de usar el iPhone con otras operadoras (Movistar, Vodafone, T-Mobile, Claro, etc..). Dado que el iPod Touch no dispone de funciones de telefonía, no tiene sentido hablar de liberar un iPod Touch.
Nota: Actualmente el modelo iPhone 3G no puede ser liberado, tan solo puede desbloquearse. La explicación radica en dos términos bien diferentes y presentes en todo foro y guía: el firmware y el baseband.
Una vez realizado el desbloqueo, el sistema más habitual para realizar la instalación y desinstalación de aplicaciones es el uso de dos programas:
Cydia y App Installer.
Para entender en que consiste un desbloqueo o liberación hay que comprender algunos aspectos técnicos, en concreto 3 conceptos: firmware, baseband, y bootloader. En toda guía de desbloqueo y/o liberación hacen referencia a estros conceptos.
Arquitectura interna
El iPhone/iPod Touch es un pequeño ordenador, con su CPU (
ARM Core), su sistema operativo (Mac OS X reducida), su memoria RAM y si espacio de "disco duro". En el caso del iPhone adicionalmente tiene acoplado un teléfono, con su procesador, su memoria y su software.
Puedes consultar información más ampliada y precisa sobre las características internas en
este enlace.
El iPhone es por decirlo de alguna manera, la fusión de dos conceptos: un ordenador y un teléfono. Ambos requieren de un software y una circuitería específica para su funcionamiento.
Es importante que el software de ambos sistemas, ordenador y teléfono, estén en concordancia. Uno de los casos en que un iPhone tiene problemas tras una liberación y/o desbloqueo es la presencia de versiones incompatibles del software de ambos sistemas.
Firmware
El funcionamiento del iPhone/iPod Touch se realiza a través un software que incluye el sistema operativo entre otras cosas y al que se denomina (coloquialmente) firmware. Por poner un símil, el firmware es al iPhone lo que el windows es al PC. Este software se basa en una versión reducida o adaptada del sistema operativo Mac OS X llamada OS X iPhone™.
Realmente el firmware no es el sistema operativo, pero si lo contiene entre otras cosas (a veces puede contener una actualización del baseband). Un firmware es un archivo con extensión .ipsw que realmente es de formato zip, por lo cual si renombras la extensión del fichero y cambias el ipsw por zip podrás curiosear su contenido.
Como cualquier otro sistema operativo, el firmware es actualizado cada cierto tiempo, tanto para corregir fallos como para incorporar nuevas funcionalidades o mejoras. Por ello, al referirse a un firmware, suele indicarse la versión de este (2.0.2 por ejemplo).
El firmware es característico de cada modelo. El iPhone 2G tiene su propio firmware, al igual que el 3G o el iPod Touch. La razón es que el software, el sistema operativo ha de adaptarse al hardware específico de cada dispositivo.
Cada modelo de iPod Touch e iPhone tienen sus propios firmwares con sus correspondientes revisiones (actualizaciones). Las actualizaciones de firmware se realizan a través de un sistema de actualización automática usando el programa iTunes (
ver tutorial ). Los usuarios son libres de actualizar su dispositivo con la última actualización, cosa que suele aconsejarse ya que cada actualización corrige fallos de la anterior y eventualmente incorpora nuevas mejoras o funcionalidades.
En el contexto del firmware se nombran dos acciones: Upgrade y Downgrade. Estos procesos representan aquellas acciones que implican substituir el firmware por una versión superior (Upgrade) o por una inferior (Downgrade). El Upgrade es el habitual, de hecho cada vez que Apple lanza una nueva actualización del firmware lo que realmente se hace es un Upgrade.
El Downgrade generalmente se realiza cuando previamente se ha hecho un Upgrade con resultados poco satisfactorios, y por consecuencia hay que volver a una versión previa (inferior).
Baseband
El baseband (banda base o Modem Firmware) es el software que se encarga de gestionar todas las acciones relacionadas con la telefonía y las comunicaciones (3G, Wi-Fi, GPRS, llamadas de teléfono, etc....). Se encarga de controlar la interacción entre el sistema operativo (el firmware) y la parte telefónica del aparato.
El iPhone/iPod Touch usa el baseband cada vez que conecta con el operador sea para enviar voz o datos. En el caso del iPhone, el baseband es el responsable de comprobar que la tarjeta SIM es válida, por tanto, en el proceso de liberación del iPhone se modifica el baseband para que pueda conectarse a otros operadores.
Bootloader
Tanto el firmware como el baseband requieren de un proceso que al arrancar el dispositivo se encargue de ejecutarlos, al igual que cuando arrancamos un PC existe un pequeño programa que se encarga de arrancar el sistema operativo. Este pequeño programa es el bootloader. Tanto el firmware como el baseband tienen su propio bootloader (ARM Core Bootloader y Baseband Bootloader). Por poner un símil, un cohete de fuegos artificiales tiene la polvora dentro (firmware), pero sin la cerilla que lo prenda (bootloader) de nada sirve.
Al arrancar el dispositivo se inicia el ARM Core Bootloader, el cual hace arrancar el iPhone, y a continuación el el Baseband Bootloader se encarga de inciar los servicios de comunicaciones.
El bootloader raramente cambia (podemos usar cohetes más potentes, pero la cerilla es la misma). Cabe decir que si el ARM Core Bootloader está corrupto o no funciona el dispositivo no arrancará. Es una parte vital para el funcionamiento. Para cambiar el ARM Core Bootloader se requiere que el dispositivo funcione, es decir, que tenga un bootloader funcional.
Algunos procesos de liberación permiten cambiar el ARM Core Bootloader, y si no se realiza como toca el dispositivo se queda sin sistema de arranque convirtiendolo en lo que comunmente se denomina "ladrillos", que básicamente significa que no sirva para más que un pisapapeles.
La versión del Baseband Bootloader nos marcará mucho a la hora de seguir un proceso u otro para liberar nuestro teléfono puesto que cada uno ha de ser "vulnerado" de una forma diferente. Por el momento existen dos versiones diferentes del Baseband Bootloader (la 3.9 y la 4.6). La versión 3.9 permitía cargar un baseband modificado para una versión determinada del firmware. La versión 4.6 cambió esto y obliga a tener un baseband de una nueva versión de firmware. Por eso existe un falso bootloader 3.9 en blanco que permite cargar cualquier versión modificada del baseband.
Desbloqueo
El desbloqueo de un iPhone/iPod Touch no es más que alterar el firmware. Generalmente esta alteración se realiza substituyendo el firmware por otro. Este otro firmware no es uno cualquiera, generalmente corresponde a un firmware oficial que ha sido alterado mediante un programa para eliminar ciertas "puertas cerradas".
El firmware del iPhone/iPod Touch es un firmware cerrado, todo el sistema operativo está encerrado como en una jaula de seguridad. Por ello el proceso de desbloqueo se le denomina también JailBreak (romper la jaula).
En otras ocasiones el proceso no es la substitución, sino que se modifica in situ el firmware del dispositivo. Hay una gran diferencia entre substituir el firmware o modificarlo in situ. Al substituir el firmware se hace un borrado de toda la información del dispositivo (música, fotos, contactos, sms, etc...). En cambio el modificarlo insitu no provoca pérdida de información. Es por tanto habitual que antes de desbloquear un dispositivo mediante la técnica de substitución, previamente se haga una copia de seguridad de la información para posteriormente, tras desbloquearlo, restaurarla.
Para aquellos casos en que se usa el método de substitución de firmware, lo normal es que si tienes un iPhone 2G con un firmware 2.0.0, lo sustituyas por otro firmare 2.0.0 modificado. Sin embargo esto no siempre ocurre. A veces se le substituye por un firmware más reciente, combinando pues la acción de desbloquear y hacer un Upgrade en un único paso. En otras ocasiones el caso es el contrario, substituyéndose por un firmware inferior, que garantiza un desbloqueo en mejores circunstancias. Lo idóneo es disponer un iPhone/iPod Touch siempre
actualizado y desbloquearlo usando el mismo firmware, el más reciente.
Algunos desbloqueos que implican un upgrade o downgrade implican también un cambio de bootloader. Generalmente se refiere a desbloqueos de iPhones 2G o iPod Touch. Este proceso, como se ha indicado anteriormente, puede inutilizarte el dispositivo irreversiblemente.
En algunas ocasiones al actualizar oficialmente (
ver tutorial ) el iPhone, además de actualizar el firmware se puede actualizar también el baseband. Esto ocurre por ejemplo a al actulizar el iPhone 3G al firmware 2.0.1 o superior. Esto representa un cambio a destacar: cuanto más reciente sea tu versión del baseband, más dificultoso será el disponer de un software que te lo permita liberar, cosa que por el momento es imposible. En cambio, si en vez de actualizar el firmware mediante el método oficial, usas un software para desbloquear, substituyendo el firmware por otro superior, no se cambiará el baseband. El firmware puede ser "upgradeado" o "downgradeado", pero el baseband no puede cambiarse por una versión inferior. Esto significa que cuanto más antiguo sea el baseband que tengas en el iPhone 3G, más posibilidades en un futuro tendrás para liberarlo.
En el caso del iPhone 3G el desbloqueo es seguro, que no significa que puedas desbloquearlo sin problemas, sino que si no funciona, siempre puedes volver a tener el iPhone tal como te lo entregaron en la tienda. La razón es que no se requiere cambiar el ARM Core Bootloader y por tanto nos garantiza que podamos entrar en lo que denomina modo DFU.
Para poder realizar una substitución de firmware, el dispositivo ha de estar en un estado en particular al que se denomina modo DFU (Device Firmware Update). El iPhone/iPod Touch tiene 3 modos de funcionamiento:
Modo normal: El que nos permite usar el dispositivo.
Modo de recuperación o reparación: El firmware se encarga de facilitar la actualización del nuevo firmware. Se usa para restaurar el firmware cuando este no funciona correctamente.
Modo DFU: No se carga el firmware.
El modo DFU es un mecanismo por hardware que nos permite ignorar al software del dispositivo y realizar cambios en el. Es como una puerta trasera que al ser vía hardware es mucho más segura y fiable.
El proceso de desbloquear se traduce al final en un proceso en el cual, teniendo el dispositivo en modo DFU, se le cambia o substituye el firmware, y en según que ocasiones el ARM Core Bootloader. Esto por supuesto se realiza mediante un programa. ¿Cual? Hay unos cuantos, algunos más seguros que otros, otros más amigables e intuitivos... puedes haber escuchado diferentes nombres como ZiPhone, WinPwn, Pwnage Tool, QuickPwn entre otros. Cada uno es un mundo, pero por apostar, visto la experiencia de la gente, hay tres grandes apuestas:
Pwnage Tool (para MAC),
WinPwn (Win) y
QuickPwn (Win). Las dos primeras usan el sistema de substitución, mientras que la tercera usa el sistema de la modificación insitu. Recientemente se habla de un próximo candidato a ser considerado al cual se le denomina
XiPhone.
Puedes consultar un completo
tutorial de desbloqueo del iPhone 3G usando WinPwn en
este enlace.
Liberación
Liberar un iPhone consiste en cambiar el baseband, el cual, como se ha indicado anteriormente, tiene, entre otras funciones, la función de validad la tarjeta SIM. Un teléfono "libre" es aquel en el que su baseband no está restringido a SIM's de una operadora en particular. En nuestro caso, el baseband del iPhone si que bloquea el uso libre de cualquier tajeta SIM.
Aquí hay que hacer una reseña. Tanto el iPod Touch como el iPhone permiten el acceso a internet, tráfico de datos que al igual que las llamadas has de pagar, ya sea por consumo como por tarifa plana. Al liberar el dispositivo, recuerda que la nueva operadora que uses te va a cobrar el tráfico de datos, y generalmente no es nada barato. Considera esta consecuencia a la hora de liberarlo.
En ocasiones, el cambio del baseband implica además el cambio de Basedand Bootloader (recordamos que es el encargado de arrancar el baseband). La razón es que para cambiar el baseband, se requiere hacerlo "con el permiso" del baseband bootloader. Si este es "infranqueable" habrá que buscar otro bootloader que si se deje, y eso suele suponer un Downgrade del baseband bootloader.
El baseband bootloader esta protegido con encriptación y no se puede hacer actualizaciones al programa del baseband si no tienes el programa indicado y firmado digitalmente con la llave de encriptación Infineon (
Infineon son los fabricantes del baseband). Ahora, como había un error en la versión 3.9 del bootloader del baseband que habilitaba la reprogramación del baseband aún con una llave errónea, cualquier cosa fue posible con la versión 3.9. Sin embargo, con el nuevo bootloader 4.x, esta puerta trasera se cerró y ya no se pudo hacer nuevos desbloqueos, razón por la cual todavía no se ha podido liberar el iPhone 3G.
Para poder liberar un iPhone 2G (el 3G no se puede por el momento y el iPod Touch no es un teléfono), a veces hay que hacer muchas virgerías pues debido a que según el bootloader del baseband se tenga, hay que realizar un downgrade del bootloader previamente, algo que no es muy trivial. En el caso de disponer de un bootloader del baseband versión 3.9, el proceso es relativamente más sencillo.
Otros conceptos
Activación. Antes de poder usar el iPhone, debe ser activado. En países con presencia oficial del iPhone se realiza desde iTunes e incluye el alta con la operadora telefonía móvil asociada. En países sin presencia oficial debe usarse uno de los múltiple programas que permiten activarlo.
SSH/FTP/SFTP: File Transfer Protocol / Secure File
Transfer Protocol, con este puedes transferir datos inalámbricamente
desde tu PC/Mac a tu iPhone; existen varios programas de SFTP/SSH...
por ejemplo: WinSCP (PC), CuteFTP, Cyberduck (Mac), etc. Esta es una de
las herramientas principales en el jailbreak. Puedes consultar este
tutorial sobre el acceso al sistema de archivos del iPhone.
IMEI: (
International Mobile Equipment Identity) Es
un código que identifica tu teléfono a nivel mundial. No hay dos
teléfonos en el mundo con 2 IMEI iguales. En el IMEI se indica el país,
fabricante, un numero de serie y un dígito de control. (más
información )
ICCID: (
International Circuit Card ID) Al igual que el IMEI, el ICCID identifica unívocamente tu tarjeta SIM, es decir, es el número de serie de tu SIM. (más
información ).