6 dic 2012

Qué es un CFW? Para que sirve? Como se crea?

¿Qué es un CFW?

En esta ocasión trataré de explicar qué es un CustomFirmWare y su terminología.
Una traducción aproximada de el término "CustomFirmWare", seria "Firmware personalizado".
Esto es el software inicial de un "Smartphone" (o teléfono inteligente) pero modificado ó personalizado.
Dentro de este software inicial se incluyen todas las aplicaciones, comandos y ejecutables cargados de fábrica.



Principios de un CFW. "Empezando a cocinar".

Para conféccionar "ó cocinar" un CFW, lo 1º que se necesita es el firmware original y correspondiente de nuestro teléfono.
Una vez descargado y conseguido el firmware original, es cuando se inicia la confección de un CFW.

Confeccionando un CFW. "Cocinando".

En esta parte de un CFW, es cuando verdaderamente comienza la personalización y/o modificación de un CFW.
Básicamente, se trata de desempaquetar, "descomprimir" los archivos descargados, modificarlos y/o editarlos,
y volverlos a empaquetar, comprimir como haríamos con un comprimido zip, rar, iso, jar, etc.
Para esta operación, disponemos de aplicaciones para PC, del estilo de "Nokia Editor".
Más adelante veremos el glosario de terminos con una breve introducción.

Confección básica de un CFW, CFW básico.

La confección básica de un CFW es la más sencilla y la que menos riesgos conlleva.
Simplemente se trata de hacerle al firmware las modificaciones justas para conseguir evitar o burlar,
todas las restricciones iniciales con las que va cargado un firmware original.
Estas restricciones originales, son las encargadas de verificar los certificados de futuras instalaciones,
impedir modificaciones y acceso total del teléfono.
Para conseguir eliminar estas restricciones, disponemos de herramientas como "RomPatcher" ideado por ZoRn,
o el ejecutable "installserver.exe" modificado y editado por PNHT.
Esto último no es otra cosa que el famoso término anglosajon "Hacked", hachazo a las restricciones.

Finalización de un CFW. Instalación.

Editado, modificado y "hackeado" el CFW, seguidamente se procede a reempaquetar el firmware,preparado ya para su instalación.
Esta última operación es posiblemente la más delicada de un CFW, pues en ella podemos "matar" el teléfono.
Para la instalación de un CFW, disponemos de aplicaciones para PC, de nombres como "Jaf" o "Phoenix",
que son los encargados de facilitarnos la instalación del CFW a traves de una herramienta común, el "Flash".

A continuación detallaré un glosario de términos básicos utilizados más habitualmente.

- BTswitch ó BTswitcher; Botón rápido de inicio/apagado de Bluetooth, on/off.

- Caché; término con una muy amplia definición, detallaré únicamente la explicación más habitual referida a los CFW.
En los CFW, la caché más mencionada es la que se refiere a la caché web, la que almacena documentos web (es decir, páginas, imágenes, etcétera) para reducir el ancho de banda consumido, la carga de los servidores y el retardo en la descarga. Un caché web almacena copias de los documentos que pasan por él, de forma que subsiguientes peticiones pueden ser respondidas por el propio caché, si se cumplen ciertas condiciones.

- Flashear; la instalación propiamente dicha de un CFW, en la que a traves de aplicaciones para PC, como Jaf o Phoenix,disponemos de la herramienta "Flash", en cuya ejecución se instala el CFW.

- Firmware; el firmware es un bloque de instrucciones de programa para propósitos específicos, grabado en una
memoria de tipo no volátil (ROM, EEPROM, flash, etc), que establece la lógica de más bajo nivel que controla los
circuitos electrónicos de un dispositivo de cualquier tipo. Al estar integrado en la electrónica del dispositivo es en parte
hardware, pero también es software, ya que proporciona lógica y se dispone en algún tipo de lenguaje de
programación.

- Hackear; eliminar y/o parchear las restricciones instaladas por defecto en un firmware, referidas a la verificación de certificados de futuras instalaciones, y la imposibilidad de modificar comportamientos y/o aspéctos visuales con fines de personalización, mejoras y rendimiento. Para esta acción, en un CFW disponemos de básicamente 2 aplicaciones;
1ª RomPatcher; ideado en sus principios por ZoRn, y actualizado hoy en dia por ilSocio. Lanzadera de los responsables de parchear el teléfono, el parche "Installserver, con el cual podemos instalar todas las aplicaciones que queramos,
olvidándonos así de certificados, y el parche "Open4All", con el que disponemos de una mayor "apertura" de nuestro teléfono.
2ª Installserver.exe; archivo ejecutable editado y modificado por PNHT. Basado en el archivo original "installserver.exe", responsable de las restricciones relacionadas con futuras instalaciones, PNHT modificó este archivo para "burlar" el firmware.

- Phoenix; aplicación para PC, la cual nos ofrece la herramienta "Flash", para instalar un CFW.

- Mods; modificaciones. Dirigidas a mejoras de rendimiento, personalización ejecutable o visual. Customización.

- Navifirm; aplicación para PC, la cual nos facilita la descarga del firmware original para su posterior modificación.

- Nokia Cooker; aplicación para PC, la cual nos permite desempaquetar y empaquetar (comprimir/descomprimir) el firmware para su modificación y creación del CFW.

- RAM; la memoria de acceso aleatorio (en inglés: random-access memory, cuyo acrónimo es RAM) es la memoria desde donde el procesador recibe las instrucciones y guarda los resultados.

- Rofs1/2/3; archivos comprimidos y protegidos del teléfono, coincidentes con la memoria Z del teléfono.
Generalmente son los archivos a modificar y editar en un CFW.

- Startup; animación y sonido de saludo inicial.

- UDA; archivos comprimidos del teléfono, Corresponde a C:\ y no esta protegido. Como apunte, todo lo que se edita en la UDA se pierde al hacer hard resert.

Gracias por esta guía a: txusmari