CRR0: Difference between revisions

From 3dbrew
Jump to navigation Jump to search
No edit summary
No edit summary
Line 60: Line 60:
| 0x354
| 0x354
| 0x4
| 0x4
| ?
| Total hashes in the hash-table
|-
|-
| 0x358
| 0x358
| 0x4
| 0x4
| Size of the CRR0 file, excluding padding
| Offset to the plain region containing text tags, from the process [[NCCH#CXI|NCCH]]
|-
|-
| 0x35C
| 0x35C
| 0x4
| 0x4
| ?
| Size of plain region
|-
|-
| 0x360
| 0x360
Line 77: Line 77:
Each hash stored in the hash-table is over the corresponding executable [[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, however the beginning of the padding is the first two text tags from the process [[NCCH#CXI|NCCH]] plain region.
CRR0 files are usually stored under "romfs:/.crr/". The end of the file is aligned to a 0x1000-byte boundary with 0xCC bytes.

Revision as of 05:01, 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 Total hashes in the hash-table
0x358 0x4 Offset to the plain region containing text tags, from the process NCCH
0x35C 0x4 Size of plain region
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.