Jump to navigation Jump to search
Calculates a XTS Decrypt using the per console keys in keyring slot 0x502, and 0x503 for the tweak and decryption keys. It then calculates an HMAC using the keyring 0x504 to check the block passed in(mgmt_data). In theory, the first 0x10 bytes is the data and the last 0x10 bytes is the HMAC. The result is a 8 byte buffer (status and flags) returned in the main F00D packet.
Input data size is 0x28 bytes.
typedef struct input {
int status; // output
int char flags[4]; // output
char mgmt_data[0x20]; // input: read from NVS at offset 0
} input;
flags are used there<source lang="C">// SCE_SBL_SS_SNVS_FLAGS#define SCE_SBL_SS_SNVS_UPDATER_FLAG_INDEX 0</source> If flag[SCE_SBL_SS_SNVS_UPDATER_FLAG_INDEX] is not set, updater init is skipped:
<source lang="C">
if (((byte)flags & 1) == 0)


Navigation menu

MediaWiki spam blocked by CleanTalk.