SceSblAuthMgr: Difference between revisions
CelesteBlue (talk | contribs) |
CelesteBlue (talk | contribs) No edit summary |
||
Line 34: | Line 34: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 3.60 || 0xA9CD2A09 | | 0.990-3.60 || 0xA9CD2A09 | ||
|} | |} | ||
Line 46: | Line 46: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 3.60 || 0x026ACBAD | | 0.990-3.60 || 0x026ACBAD | ||
|} | |} | ||
Line 55: | Line 55: | ||
int sceSblAuthMgrStopSMForKernel(int ctx); | int sceSblAuthMgrStopSMForKernel(int ctx); | ||
</source> | </source> | ||
=== SceSblAuthMgrForKernel_CAA38DF7 === | |||
{| class="wikitable" | |||
! Version !! NID | |||
|- | |||
| 0.990 || 0xCAA38DF7 | |||
|} | |||
Creates a mutex. | |||
=== SceSblAuthMgrForKernel_6C1F5048 === | |||
{| class="wikitable" | |||
! Version !! NID | |||
|- | |||
| 0.990 || 0x6C1F5048 | |||
|} | |||
Deletes a mutex. | |||
=== sceSblAuthMgrAuthHeaderForKernel === | === sceSblAuthMgrAuthHeaderForKernel === | ||
Line 60: | Line 78: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 3.60 || 0xF3411881 | | 0.990-3.60 || 0xF3411881 | ||
|} | |} | ||
Line 80: | Line 98: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 3.60 || 0x89CCDA2C | | 0.990-3.60 || 0x89CCDA2C | ||
|} | |} | ||
Line 96: | Line 114: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 3.60 || 0xBC422443 | | 0.990-3.60 || 0xBC422443 | ||
|} | |} | ||
Line 131: | Line 149: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| | | 0.990-3.60 || 0xF2BB723E | ||
|} | |} | ||
Line 168: | Line 184: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| | | 0.990-3.60 || 0x868B9E9A | ||
|} | |} | ||
EKc | EKc means Encrypted Klicense (also called Key License). | ||
Issues [[F00D_Commands#0x40001_sceSblAuthMgrGetEKcForDriver|F00D command 0x40001]] | Issues [[F00D_Commands#0x40001_sceSblAuthMgrGetEKcForDriver|F00D command 0x40001]] | ||
Line 183: | Line 197: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.05 | | 1.05-3.60 || 0x41DAEA12 | ||
|} | |} | ||
Revision as of 17:13, 18 January 2019
Module
Known NIDs
Version | Name | World | Privilege | NID |
---|---|---|---|---|
1.69 | SceSblAuthMgr | Non-secure | Kernel | 0xEA5DFC93 |
3.57 | SceSblAuthMgr | Non-secure | Kernel | 0xA1BFE33C |
3.60 | SceSblAuthMgr | Non-secure | Kernel | 0x1773372D |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
1.69-3.60 | SceSblAuthMgrForKernel | Non-secure | Kernel | 0x7ABF5135 |
1.69-3.60 | SceSblAuthMgrForDriver | Non-secure | Kernel | 0x4EB2B1BB |
SceSblAuthMgrForKernel
These functions are used for SELF decryption.
sceSblAuthMgrInvokeSMForKernel
Version | NID |
---|---|
0.990-3.60 | 0xA9CD2A09 |
// if initialization is successful - ctx will be initialized to 1 int sceSblAuthMgrInvokeSMForKernel(int* ctx);
sceSblAuthMgrStopSMForKernel
Version | NID |
---|---|
0.990-3.60 | 0x026ACBAD |
Issued F00D command -1
// ctx - obtained with sceSblAuthMgrInvokeSMForKernel. Should equal 1 for successful deinit. int sceSblAuthMgrStopSMForKernel(int ctx);
SceSblAuthMgrForKernel_CAA38DF7
Version | NID |
---|---|
0.990 | 0xCAA38DF7 |
Creates a mutex.
SceSblAuthMgrForKernel_6C1F5048
Version | NID |
---|---|
0.990 | 0x6C1F5048 |
Deletes a mutex.
sceSblAuthMgrAuthHeaderForKernel
Version | NID |
---|---|
0.990-3.60 | 0xF3411881 |
Issues F00D command 0x10001
SceSblSmCommContext130
type is defined in SceKernelModulemgr.
Read caller SELF Info using sceKernelGetSelfAuthInfoForKernel then writes it to context_130->caller_self_auth_info.
Calls smc_137 and smc_134 that interact with F00D. F00D set context_130->called_self_auth_info.
//ctx - obtained with sceSblAuthMgrInvokeSMForKernel int sceSblAuthMgrAuthHeaderForKernel(int ctx, char *header, int header_size, SceSblSmCommContext130 *context_130);
sceSblAuthMgrLoadSegmentForKernel
Version | NID |
---|---|
0.990-3.60 | 0x89CCDA2C |
Temp name was sceSblAuthMgrLoadSelfSegmentForKernel.
Issues F00D command 0x20001
// ctx - obtained with sceSblAuthMgrInvokeSMForKernel int sceSblAuthMgrLoadSegmentForKernel(int ctx, int segment_number, int segment_size, void output_buffer, int program_size);
sceSblAuthMgrLoadSelfBlockForKernel
Version | NID |
---|---|
0.990-3.60 | 0xBC422443 |
Issues F00D command 0x30001
// ctx - obtained with sceSblAuthMgrInvokeSMForKernel int sceSblAuthMgrLoadSelfBlockForKernel(int ctx, char *buffer, int offset);
sceSblAuthMgrLoadSegmentInternalForKernel
Version | NID |
---|---|
0.990 | 0x15248FB4 |
sceSblAuthMgrSetDmac5KeyForKernel
Version | NID |
---|---|
1.05-3.60 | 0x122ACDEA |
Issues F00D command 0x50001
// key_size - in bytes int sceSblAuthMgrSetDmac5KeyForKernel(char *key, int key_size, int slot_id, int key_id);
sceSblAuthMgrClearDmac5KeyForKernel
Version | NID |
---|---|
0.990-3.60 | 0xF2BB723E |
Issues F00D command 0x60001
int sceSblAuthMgrClearDmac5KeyForKernel(int unk0, int unk1);
SceSblAuthMgrForKernel_2A83A012
Version | NID |
---|---|
3.60 | 0x2A83A012 |
Returns 0. May be an old function kept for compatibility.
int SceSblAuthMgrForKernel_2A83A012(void);
sceSblAuthMgrCompareSwVersionForKernel
Version | NID |
---|---|
3.60 | 0xABAB8466 |
Aligns version on 12 bits then compares to the hardcoded current firmware version (example: 0x03600000 or 0x03650000).
int sceSblAuthMgrCompareSwVersionForKernel(int version);
SceSblAuthMgrForDriver
sceSblAuthMgrGetEKcForDriver
Version | NID |
---|---|
0.990-3.60 | 0x868B9E9A |
EKc means Encrypted Klicense (also called Key License).
Issues F00D command 0x40001
int sceSblAuthMgrGetEKcForDriver(void* data, int size, int key_id);
sceSblAuthMgrDecBindDataForDriver
Version | NID |
---|---|
1.05-3.60 | 0x41DAEA12 |
Issues F00D command 0x70001
// request should contain pair of keys and rif data int sceSblAuthMgrDecBindDataForDriver(char* klicensee, int klicensee_len, char* request, int request_len, int zero);
sceSblAuthMgrVerifySpfsoCtxForDriver
Version | NID |
---|---|
3.60 | 0x24C4CE64 |
Used by sceSblPostSsMgrVerifySpfsoCtxForDriver
Issues F00D command 0x80001
int sceSblAuthMgrVerifySpfsoCtxForDriver(spsfo_ctx *ctx);