Difference between revisions of "CRR0"
Jump to navigation
Jump to search
Line 12: | Line 12: | ||
| 0x4 | | 0x4 | ||
| 0x4 | | 0x4 | ||
− | | | + | | Reserved |
|- | |- | ||
| 0x8 | | 0x8 | ||
Line 51: | Line 51: | ||
|- | |- | ||
| 0x348 | | 0x348 | ||
− | | | + | | 0x8 |
+ | | ? | ||
+ | |- | ||
+ | | 0x350 | ||
+ | | 0x4 | ||
+ | | Size of header, always 0x360 | ||
+ | |- | ||
+ | | 0x354 | ||
+ | | 0x4 | ||
| ? | | ? | ||
|- | |- |
Revision as of 03:52, 6 November 2012
Offset | Size | Description |
---|---|---|
0x0 | 0x4 | Magic "CRR0" |
0x4 | 0x4 | Reserved |
0x8 | 0x4 | Must be zero |
0xC | 0x4 | Must be zero |
0x10 | 0x10 | ? |
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, over the data starting at 0x340 with the size from 0x358 |
0x340 | 0x4 | Process UniqueID<<8, from the ProgramID |
0x344 | 0x4 | Size of the whole CRR0 file |
0x348 | 0x8 | ? |
0x350 | 0x4 | Size of header, always 0x360 |
0x354 | 0x4 | ? |
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.