Guida Salvare certificati per ripristino firmware su iPhone 4, 3GS, 3G, iPod Touch, iPad

Creato il 04 novembre 2010 da Giardiniblog @GiardiniBlog

La procedura descritta qui di seguito, è consigliata a tutti i possessori di iPhone, sia versione normale, sia jailbroken; è possibile salvare l’hash SHSH in entrambi i casi e resterà sempre conservato su un server (o in locale sul vostro computer) per quella determinata versione del firmware che avete attualmente sul dispositivo.

Prima di spiegare come salvarlo, cerchiamo di capire a cosa serve e perché viene utilizzato.

Apple e  il ripristino del firmware

Per combattere il jailbreak e aumentare la sicurezza dei propri dispositivi (iPhone, iPad, iPod Touch), Apple ha pensato di inserire una procedura di controllo, nel momento in cui l’utente vuole effettuare un ripristino del firmware per resettare il proprio telefono e riportarlo allo stato iniziale. Ogni ripristino del dispositivo, deve essere verificato e autorizzato online da Apple stessa.

Durante l’operazione di ripristino tramite iTunes, viene contattato il server Apple e inviata una sorta di impronta del firmware che si sta cercando di ripristinare; il server autorizza il ripristino firmando digitalmente l’informazione che ha ricevuto e restituendola ad iTunes, permettendo di completare la procedura. Ad ogni uscita di un nuovo firmware, il server si rifiuterà di firmare i firmware (“le impronte”) precedenti, obbligando di fatto l’utente a ripristinare all’ultimo firmware disponibile (che probabilmente non permetterà più il jailbreak).

Oltre a questo, il sistema è specifico per ogni dispositivo perché Apple usa un numero unico diverso per ogni iPhone, chiamato ECIDExclusive Chip ID” insieme all’impronta del firmware; E’ questa l’informazione che viene inviata al server per autorizzare il ripristino da iTunes. Il server Apple risponderà a sua volta con un hash della firma, chiamato SHSH. iTunes usarà tutte queste informazioni per personalizzare il firmware che si sta ripristinando, rendendolo specifico per il nostro iPhone. L’iPhone a sua volta verificherà il tutto e continuerà con il ripristino.

Conservare i certificati per firmware precedenti

Per conservare tutte le informazioni (ECID, hash SHSH, etc) che servono nel momento in cui si decide di ripristinare, sono stati creati dei server che salvano le risposte del server Apple e le conservano per noi. Se preferiamo, è possibile salvare anche in locale sul computer queste informazioni (vedi dopo). In questo modo, quando viene rilasciato un nuovo firmware ed Apple si rifiuta di autorizzare il ripristino ad un firmware precedente, possiamo simulare le risposte del server o contattare il server “fasullo” e continuare a ripristinare a firmware precedenti, avendo sempre l’autorizzazione a procedere.

In questo modo, è sempre possibile utilizzare una versione del firmware per cui è possibile il jailbreak oppure semplicemente possiamo tornare ad una versione precedente nel momento in cui non siamo soddisfatti delle prestazioni del firmware nuovo.

Andiamo ora a vedere effettivamente come salvare in remoto (su un server) oppure in locale (sul nostro computer) le informazioni che servono al ripristino.

Salvare hash SHSH in remoto tramite Cydia

Questa possibilità è riservata alle persone che hanno effettuato il jailbreak e quindi hanno Cydia installato sul proprio device. L’autore di Cydia, saurik, ha creato un server che provvederà ad effettuare per noi le richieste ad Apple e a salvare le risposte.

La procedura è automatica ed è facilissima; è sufficiente avviare Cydia sull’iPhone, per trovarsi davanti a questa schermata:

Premete vicino al cuore sulla scritta “Make my life easier, thanks!” per mandare una richiesta al server. Se non visualizzate la schermata sopra, avrete la stessa possibilità, sempre nella schermata principale di Cydia. Una volta mandata la richiesta, Cydia si occuperà del resto è ci informerà con una scritta “This device has a pending TSS request“, che la richiesta è in coda:

Quando avremo le info salvate (non è una cosa immediata), lo sapremo esattamente tramite la schermata principale di Cydia, che ci informerà anche dell’hash SHSH che abbiamo conservato e per quale versione del firmware iOS.

Salvare hash SHSH in locale con TinyUmbrella

Un altro modo di effettuare il salvataggio delle informazioni, valido anche per chi non ha il jailbreak, è il salvataggio delle info in locale sul proprio computer tramite TinyUmbrella.

Download TinyUmbrella 4.1.12 Windows

Download TinyUmbrella 4.1.12 MacOSX

Download TinyUmbrella 4.1.12 Linux

Scaricate la versione che vi serve e avviate il programma con l’iPhone collegato al computer tramite cavo USB.

Cliccate sul nome del vostro dispositivo nell’elenco sulla sinistra e poi su Save SHSH:

A questo punto verranno salvati i certificati non solo in locale sul vostro computer, ma anche sul server remoto di Cydia (lo stesso che si usa nella procedura fatta tramite Cydia). La schermata di sotto, confermerà quali hash SHSH sono a disposizione (in altre parole, quali firmware potrete mettere sul vostro iPhone).

Ripristinare qualsiasi firmware sull’iPhone

Qualsiasi firmware, di cui avete salvato le informazioni con TinyUmbrella e/o con Cydia, potrà essere ripristinato e installato sull’iPhone.

La procedura è molto semplice e verrà spiegata in dettaglio in una prossima guida; per il momento è possibile il jailbreak di tutti i dispositivi e tutti i firmware Jailbreak iOS 4.1 per iPhone 4, iPhone 3GS, iPad, iPod Touch e Jailbreak iOS 4.1 per iPhone 3G e iPod Touch 2G


Potrebbero interessarti anche :

Possono interessarti anche questi articoli :