Difference between revisions of "CRR0"

From 3dbrew
Jump to navigation Jump to search
(Created page with "Category:File formats {| class="wikitable" border="1" ! Offset ! Size ! Description |- | 0x0 | 0x4 | Magic "CRR0" |- | 0x4 | 0x1C | ? |- | 0x20 | 0x20 | ? |- | 0x40 | 0x1...")
 
Line 36: Line 36:
 
| 0x358
 
| 0x358
 
| 0x4
 
| 0x4
| Size of the whole CRR0 file
+
| Size of the CRR0 file, excluding padding
 
|-
 
|-
 
| 0x35C
 
| 0x35C
Line 47: Line 47:
 
|}
 
|}
  
Each hash stored in the hash-table is over the corresponding [[CRO0]] hash-table.
+
Each hash stored in the hash-table is over the corresponding executable [[CRO0]] hash-table.
  
CRR0 files are usually stored under "romfs:/.crr/". The end of the file is aligned to a 0x1000-byte boundary with 0xCC bytes.
+
CRR0 files are usually stored under "romfs:/.crr/". The end of the file is aligned to a 0x1000-byte boundary with 0xCC bytes, however the beginning of the padding is the first two text tags from the process [[NCCH#CXI|NCCH]] plain region.

Revision as of 02:46, 6 November 2012


Offset Size Description
0x0 0x4 Magic "CRR0"
0x4 0x1C ?
0x20 0x20 ?
0x40 0x100 RSA-2048 modulo
0x140 0x100 RSA-2048 signature signed by Nintendo, starting at offset 0x20 with size 0x120
0x240 0x100 RSA-2048 signature verified with the above modulo, starting with the data payload header
0x340 0x18 Data payload header
0x358 0x4 Size of the CRR0 file, excluding padding
0x35C 0x4 ?
0x360 SHA-256 hash-table

Each hash stored in the hash-table is over the corresponding executable CRO0 hash-table.

CRR0 files are usually stored under "romfs:/.crr/". The end of the file is aligned to a 0x1000-byte boundary with 0xCC bytes, however the beginning of the padding is the first two text tags from the process NCCH plain region.