Kprx auth sm

From Vita Development Wiki
Jump to navigation Jump to search

Security module that authenticates and decrypts signed elf.

Teardown

kprx_auth_sm only authenticates and decrypts modules. Attr and caps checks call secure_kernel from swi 6 at the end of authentication.

functions

get_metainfo_ac_info

Version offset
3.60 0x80eb8a

check fself authid to get corresponding privileged attr/caps.

Supported authid
Privileged Authid
Game 0x2F00000000000001
Non-Game 0x2F00000000000002

Attempting to start fself with an unsupported authid eventually causes the system to get error code 0x800f0616.

This function itself returns error code 0x800f0624 for unsupported authid.

sceBigmacExec

Version offset
3.60 0x80EF46

typedef struct SceBigmacExecOption {
	int channel;
	int flags; // masked by 0xFFFFFCC0
} SceBigmacExecOption;

/*
 * key      - If option->flags not seted 0x80, pass to bigmac keyslot
 * key_size - 0:1:2:3, 64:128:192:256
 */
int sceBigmacExec(void *dst, const void *src, int size, const void *key, void *iv, int first_algo, int second_algo, int key_size, const SceBigmacExecOption *option);