Second Loader

From Vita Developer wiki
Revision as of 15:16, 27 October 2020 by Zecoxao (talk | contribs) (→‎MetaData Info)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

The main loader of the Secure Kernel. The header contained in it contains the following information:

Header Info[edit | edit source]

Offset Size Description Notes
0x0 4 Magic E5 C8 B2 64
0x4 4 Header Size Little Endian (0x2C0)
0x8 4 Entry Point Little Endian (0x100)
0xC 4 Padding Zeroes
0x10 0x10 Payload Size Little Endian (e.g 0xCE00)
0x20 0x20 SHA256 of the decrypted payload
0x40 0x10 Versioning Ascii 0000360000000000
0x50 0x90 Padding Zeroes
0xE0 0xE0 MetaData
0x1C0 0x100 RSA Header Signature
0x2C0 0xCE00 Payload
0xD0C0 0x100 RSA Footer Signature
0xD1C0 0x140 Random Padding Must be filled to multiple of 0x200 bytes

MetaData Info[edit | edit source]

Offset Size Description Notes
0x0 0xC0 MetaData Body Contains Keyslot Fail Keys up to certain point (3.69), Non Fail Keys afterwards (3.70+)
0xC0 0x20 HDR+ MetaData SHA256HMAC SHA256 of hdr plus metadata (HMAC)

MetaData Body[edit | edit source]

Offset Size Description Notes
0x0 0x20 KeySlot 1
0x20 0x20 Keyslot 2
0x40 0x20 Keyslot 3
0x60 0x20 Keyslot 4
0x80 0x20 Keyslot 5
0xA0 0x20 Keyslot 6