CRR0

CRR0

OffsetSizeDescription
0x00x4Magic “CRR0”
0x40x4Reserved
0x80x4Next loaded CRR (Must be zero in file, set by RO during loading)
0xC0x4Previous loaded CRR (Must be zero in file, set by RO during loading)
0x100x4Debug Info Offset
0x140x4Debug Info Size
0x180x8Reserved
0x200x4UniqueID Mask
0x240x4UniqueID Pattern
0x280x18Reserved
0x400x100RSA-2048 modulo
0x1400x100RSA-2048 signature signed by Nintendo, starting at offset 0x20 with size 0x120
0x2400x100RSA-2048 signature verified with the above modulo, over the data starting at 0x340 with the size from 0x358
0x3400x4Process UniqueID<<8, from the ProgramID
0x3440x4Size of the whole CRR0 file
0x3480x8Reserved
0x3500x4Hash-table Offset
0x3540x4Total hashes in the hash-table
0x3580x4Offset to the plain region containing text tags, from the process NCCH
0x35C0x4Size of plain region
0x360SHA-256 hash-table

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

CRR0 files must be stored under “romfs:/.crr/”. The end of the file is aligned to a 0x1000-byte boundary with 0xCC bytes.

Category:File formats