Difference between revisions of "IPSW File Format"

From The iPhone Wiki
Jump to: navigation, search
m
(.)
Line 1: Line 1:
  +
{{redirect|IPSW|the component of XPwn|ipsw}}
'''IPSW''' ('''iP'''od<sup>1</sup> '''S'''oft'''W'''are or '''iP'''hone '''S'''oft'''W'''are) files have the Magic Number 504B0304 (PK\003\004) and thus are [[wikipedia:ZIP (file format)|ZIP]] archives. They can be modified with typical zip/unzip tools (i.e. change extension to .zip and double click). IPSWs are used to deliver the [[Apple TV]]/[[iPad]]/[[iPad mini]]/[[iPhone]]/[[iPod touch]] [[firmware]] to the end-user.
 
  +
'''IPSW''' ('''iP'''od<sup>1</sup> '''S'''oft'''w'''are) files have the Magic Number 504B0304 (PK\003\004) and thus are [[wikipedia:ZIP (file format)|ZIP]] archives. They can be modified with typical zip/unzip tools (i.e. change extension to .zip and double click). IPSWs are used to deliver the [[Apple TV]]/[[iPad]]/[[iPad mini]]/[[iPhone]]/[[iPod touch]] [[firmware]] to the end-user.
   
 
<sup>1</sup>IPSW files have been used since the very first iPod, though they have [http://www.freemyipod.org/wiki/Firmware a different format than] iOS-based devices.
 
<sup>1</sup>IPSW files have been used since the very first iPod, though they have [http://www.freemyipod.org/wiki/Firmware a different format than] iOS-based devices.
Line 5: Line 6:
 
== IPSW Contents ==
 
== IPSW Contents ==
 
* [[Restore Ramdisk]]
 
* [[Restore Ramdisk]]
* [[Update Ramdisk]] (Some firmwares don't contain this because of various reasons- Error 3002 means you are trying to update with an IPSW that is missing this)
+
* [[Update Ramdisk]] (some firmwares don't contain this because of various reasons)
 
* [[Disk Image Formats|Filesystem Ramdisk]] (the largest [[Apple Disk Image|.dmg]] file)
 
* [[Disk Image Formats|Filesystem Ramdisk]] (the largest [[Apple Disk Image|.dmg]] file)
* [[Device Tree]]
+
* [[Device Tree]] (model specific)
* [[Kernelcache|kernelcache.release.XXXXXXX file]] (application processor specific i.e [[S5L8900]], [[S5L8920]], [[S5L8720]], [[S5L8922]], [[S5L8930]] etc)
+
* [[Kernelcache]] (model specific; processor specific on pre-[[S5L8930|A4]])
* BuildManifest.plist (first appeared in firmware 3.0?)
+
* BuildManifest.plist (first appeared in [[iOS|iPhone OS]] 3.0b2)
* Restore.plist file
+
* Restore.plist
* ''Firmware\''
+
* ''Firmware/''
** ''all_flash\''
+
** ''all_flash/''
*** ''all_flash.XXXXX.production\'' (hardware specific i.e. [[M68ap]], [[N82ap]], etc.)
+
*** ''all_flash.XXXXX.production/'' (model specific i.e. [[m68ap]], [[n82ap]], etc.)
 
**** [[S5L File Formats#IMG2|IMG2]]/[[IMG3 File Format|IMG3]] files
 
**** [[S5L File Formats#IMG2|IMG2]]/[[IMG3 File Format|IMG3]] files
 
**** manifest
 
**** manifest
** \dfu (Folder)
+
** dfu/''
*** [[iBEC]].XXXXX.DFU (hardware specific i.e. [[M68ap]], [[N82ap]], etc.)
+
*** [[iBEC]].XXXXX.DFU (model specific i.e. [[m68ap]], [[n82ap]], etc.)
*** [[iBSS]].XXXXX.DFU (hardware specific i.e. [[M68ap]], [[N82ap]], etc.)
+
*** [[iBSS]].XXXXX.DFU
*** [[WTF]].XXXXX.DFU (hardware specific i.e. [[M68ap]], [[N82ap]], [[N45ap]], [[N72ap]] - currently not present in firmwares for the [[N88ap|iPhone 3GS]] and later, because it is mostly used to patch issues with the DFU mode that was burned into the bootrom)
+
*** [[WTF]].XXXXX.DFU (model specific and only for [[m68ap]], [[n82ap]], [[n45ap]], [[n72ap]]; currently not present in firmwares for the [[n88ap|iPhone 3GS]] and later, because it is mostly used to patch issues with the DFU mode that was burned into the bootrom)
  +
** [[Baseband Device|Baseband]] (may be one or many files depending on the model)
** ICE3_XX.XX.XX_BOOT_02.06.Release.bbfw (Contains the baseband and the bootloader. X stands for a number. This is the baseband version. 02.06 is the bootloader. Only in the iPhone 4 firmware.)
 
   
 
== Example ==
 
== Example ==

Revision as of 00:01, 8 November 2014

"IPSW" redirects here. For the component of XPwn, see ipsw.

IPSW (iPod1 Software) files have the Magic Number 504B0304 (PK\003\004) and thus are ZIP archives. They can be modified with typical zip/unzip tools (i.e. change extension to .zip and double click). IPSWs are used to deliver the Apple TV/iPad/iPad mini/iPhone/iPod touch firmware to the end-user.

1IPSW files have been used since the very first iPod, though they have a different format than iOS-based devices.

IPSW Contents

Example

This is a ls -alR of an extracted iPhone 3GS 3.0 Firmware IPSW.

total 608400
drwx------@ 11 m  staff        374 17 Jun 07:11 .
drwxrwxrwx   5 m  staff        170 18 Jul 07:34 ..
-rw-r--r--@  1 m  admin  281214976 22 Mai 17:10 018-5302-002.dmg
-rw-r--r--@  1 m  admin   12769604 22 Mai 16:59 018-5304-002.dmg
-rw-r--r--@  1 m  admin   12777796 22 Mai 16:59 018-5306-002.dmg
-rw-r--r--   1 m  admin      21097 22 Mai 17:29 BuildManifest.plist
drwxr-xr-x@  5 m  staff        170 17 Jun 07:11 Firmware
-rw-r--r--   1 m  admin       1763 22 Mai 17:10 Restore.plist
-rw-r--r--@  1 m  staff    4695492 22 Mai 14:32 kernelcache.release.s5l8920x

./Firmware:
total 16
drwxr-xr-x@  5 m  staff   170 17 Jun 07:11 .
drwx------@ 11 m  staff   374 17 Jun 07:11 ..
drwxr-xr-x@  4 m  staff   136 18 Jun 02:10 all_flash
drwxr-xr-x@  4 m  staff   136 22 Mai 13:39 dfu

./Firmware/all_flash:
total 16
drwxr-xr-x@  4 m  staff   136 18 Jun 02:10 .
drwxr-xr-x@  5 m  staff   170 17 Jun 07:11 ..
drwxr-xr-x@ 16 m  staff   544 22 Mai 13:43 all_flash.n88ap.production

./Firmware/all_flash/all_flash.n88ap.production:
total 1320
drwxr-xr-x@ 16 m  staff     544 22 Mai 13:43 .
drwxr-xr-x@  4 m  staff     136 18 Jun 02:10 ..
-rw-r--r--@  1 m  staff   44996 22 Mai 13:08 DeviceTree.n88ap.img3
-rw-r--r--@  1 m  staff   67908 22 Mai 13:12 LLB.n88ap.RELEASE.img3
-rw-r--r--@  1 m  staff    9604 22 Mai 13:15 applelogo.s5l8920x.img3
-rw-r--r--@  1 m  staff   19716 22 Mai 13:15 batterycharging0.s5l8920x.img3
-rw-r--r--@  1 m  staff   24900 22 Mai 13:16 batterycharging1.s5l8920x.img3
-rw-r--r--@  1 m  staff   76100 22 Mai 13:16 batteryfull.s5l8920x.img3
-rw-r--r--@  1 m  staff   56772 22 Mai 13:16 batterylow0.s5l8920x.img3
-rw-r--r--@  1 m  staff   65348 22 Mai 13:17 batterylow1.s5l8920x.img3
-rw-r--r--@  1 m  staff   20356 22 Mai 13:17 glyphcharging.s5l8920x.img3
-rw-r--r--@  1 m  staff   19332 22 Mai 13:18 glyphplugin.s5l8920x.img3
-rw-r--r--@  1 m  staff  178500 22 Mai 13:21 iBoot.n88ap.RELEASE.img3
-rw-r--r--@  1 m  staff     341 22 Mai 13:43 manifest
-rw-r--r--@  1 m  staff   20484 22 Mai 13:24 needservice.s5l8920x.img3
-rw-r--r--@  1 m  staff   47876 22 Mai 13:24 recoverymode.s5l8920x.img3

./Firmware/dfu:
total 416
drwxr-xr-x@ 4 m  staff     136 22 Mai 13:39 .
drwxr-xr-x@ 5 m  staff     170 17 Jun 07:11 ..
-rw-r--r--@ 1 m  staff  104772 22 Mai 13:30 iBEC.n88ap.RELEASE.dfu
-rw-r--r--@ 1 m  staff  104772 22 Mai 13:36 iBSS.n88ap.RELEASE.dfu