Revoke List: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
(Created page with "Category:Software Location: CoreOS package 3.56+ . (for decryption you also need keys ofc, its same as spp/pkg/any metadata decryption) contains includes/excludes to be chec...")
 
No edit summary
Line 3: Line 3:


contains includes/excludes to be checked by lv1/hypervisor.
contains includes/excludes to be checked by lv1/hypervisor.
so this is basically a list of additional checks for the hv.
example: if (sce type == 4 & authid = x) then do what flags tell, related with version etc.


See also: [[keys]]
See also: [[keys]]
Line 30: Line 32:
====Struct====
====Struct====


typedef info{
typedef info{
   uint32_t self_type;            /* app type
   uint32_t self_type;            /* app type
                                   * 1 level0,
                                   * 1 level0,
Line 44: Line 46:
   uint64_t authid;                /* auth id */
   uint64_t authid;                /* auth id */
   uint64_t unknown1;              /* enforce/block/ignore/whatever? */
   uint64_t unknown1;              /* enforce/block/ignore/whatever? */
} __attribute__((packed)) rvk_INFO;
} __attribute__((packed)) rvk_INFO;





Revision as of 22:37, 5 December 2011

Location: CoreOS package 3.56+ . (for decryption you also need keys ofc, its same as spp/pkg/any metadata decryption)

contains includes/excludes to be checked by lv1/hypervisor. so this is basically a list of additional checks for the hv. example: if (sce type == 4 & authid = x) then do what flags tell, related with version etc.

See also: keys SELF_File_Format_and_Decryption Authentication_IDs


Examples

3.56 prog.srvk

00000000  00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00000200  00 00 00 04 00 00 00 01 00 03 00 56 00 00 00 00  ...�...�.�.V....
00000210  00 00 00 06 00 00 00 00 00 00 00 00 00 00 00 00  ...�............
00000220  00 00 00 03 00 00 00 01 00 03 00 56 00 00 00 00  ...�...�.�.V....
00000230  00 00 00 00 00 00 00 02 FF FF FF FF FF FF FF FF  .......�ÿÿÿÿÿÿÿÿ
00000240  00 00 00 04 00 00 00 01 00 03 00 56 00 00 00 00  ...�...�.�.V....
00000250  10 70 00 05 FF 00 00 01 FF FF FF FF FF FF FF FF  �p.�ÿ..�ÿÿÿÿÿÿÿÿ
00000260  00 00 00 04 00 00 00 01 00 03 00 56 00 00 00 00  ...�...�.�.V....
00000270  10 70 00 05 FE 00 00 01 FF FF FF FF FF FF FF FF  �p.�þ..�ÿÿÿÿÿÿÿÿ
00000280  00 00 00 04 00 00 00 01 00 03 00 56 00 00 00 00  ...�...�.�.V....
00000290  10 70 00 05 FD 00 00 01 FF FF FF FF FF FF FF FF  �p.�ý..�ÿÿÿÿÿÿÿÿ
000002A0  00 00 00 04 00 00 00 01 00 03 00 56 00 00 00 00  ...�...�.�.V....
000002B0  10 70 00 05 FC 00 00 01 FF FF FF FF FF FF FF FF  �p.�ü..�ÿÿÿÿÿÿÿÿ
000002C0  00 00 00 04 00 00 00 03 00 01 00 00 00 00 00 00  ...�...�.�......
000002D0  10 70 00 04 00 00 00 01 FF FF FF FF FF FF FF FF  �p.�...�ÿÿÿÿÿÿÿÿ

Struct

typedef info{
 uint32_t self_type;             /* app type
                                  * 1 level0,
                                  * 2 level1,
                                  * 3 level2,
                                  * 4 application,
                                  * 5 isolated SPU module,
                                  * 6 secure loader,
                                  * 7 unknown, handled by appldr,
                                  * 8 NPDRM app */
 uint64_t flags;                 /* enforce/block/ignore/whatever? */
 uint64_t version;               /* app version */
 uint64_t authid;                /* auth id */
 uint64_t unknown1;              /* enforce/block/ignore/whatever? */
} __attribute__((packed)) rvk_INFO;


3.56 pkg.srvk

00000000  00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00000200  00 00 00 03 00 00 00 02 00 01 00 00 00 00 00 00  ...�...�.�......
00000210  00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00  ...�............
00000220  00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 02  ...�.......�...�
00000230  00 00 00 08 00 05 00 00 00 00 00 00 00 00 00 00  ...�.�..........