ErikPshat

PSP keys collection - Table tags and keys

Oct 19th, 2014 (edited)
974
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 83.83 KB | None | 0 0
  1. ////////// Decryption 1 //////////
  2.  
  3. // use pre-calculated keys (step1 results)
  4.  
  5. /* 0x42 0x00000000 1.xx systems fw files */
  6. u32 g_key00[] = {
  7.   0x7B21F3BE, 0x299C5E1D, 0x1C9C5E71, 0x96CB4645, 0x3C9B1BE0, 0xEB85DE3D,
  8.   0x4A7F2022, 0xC2206EAA, 0xD50B3265, 0x55770567, 0x3C080840, 0x981D55F2,
  9.   0x5FD8F6F3, 0xEE8EB0C5, 0x944D8152, 0xF8278651, 0x2705BAFA, 0x8420E533,
  10.   0x27154AE9, 0x4819AA32, 0x59A3AA40, 0x2CB3CF65, 0xF274466D, 0x3A655605,
  11.   0x21B0F88F, 0xC5B18D26, 0x64C19051, 0xD669C94E, 0xE87035F2, 0x9D3A5909,
  12.   0x6F4E7102, 0xDCA946CE, 0x8416881B, 0xBAB097A5, 0x249125C6, 0xB34C0872,
  13. };
  14. /* 0x45 0x02000000 1.xx modules and library fw files */
  15. u32 g_key02[] = {
  16.   0xCCFDA932, 0x51C06F76, 0x046DCCCF, 0x49E1821E, 0x7D3B024C, 0x9DDA5865,
  17.   0xCC8C9825, 0xD1E97DB5, 0x6874D8CB, 0x3471C987, 0x72EDB3FC, 0x81C8365D,
  18.   0xE161E33A, 0xFC92DB59, 0x2009B1EC, 0xB1A94CE4, 0x2F03696B, 0x87E236D8,
  19.   0x3B2B8CE9, 0x0305E784, 0xF9710883, 0xB039DB39, 0x893BEA37, 0xE74D6805,
  20.   0x2A5C38BD, 0xB08DC813, 0x15B32375, 0x46BE4525, 0x0103FD90, 0xA90E87A2,
  21.   0x52ABA66A, 0x85BF7B80, 0x45E8CE63, 0x4DD716D3, 0xF5E30D2D, 0xAF3AE456,
  22. };
  23. /* 0x46 0x03000000 1.xx usersystemlib.prx */
  24. u32 g_key03[] = {
  25.   0xA6C8F5CA, 0x6D67C080, 0x924F4D3A, 0x047CA06A, 0x08640297, 0x4FD4A758,
  26.   0xBD685A87, 0x9B2701C2, 0x83B62A35, 0x726B533C, 0xE522FA0C, 0xC24B06B4,
  27.   0x459D1CAC, 0xA8C5417B, 0x4FEA62A2, 0x0615D742, 0x30628D09, 0xC44FAB14,
  28.   0x69FF715E, 0xD2D8837D, 0xBEED0B8B, 0x1E6E57AE, 0x61E8C402, 0xBE367A06,
  29.   0x543F2B5E, 0xDB3EC058, 0xBE852075, 0x1E7E4DCC, 0x1564EA55, 0xEC7825B4,
  30.   0xC0538CAD, 0x70F72C7F, 0x49E8C3D0, 0xEDA97EC5, 0xF492B0A4, 0xE05EB02A,
  31. };
  32. /* 0x47 0x04000000 OK! */
  33. u32 g_key04[] = {
  34.   0x64729CAF, 0x3F3451F5, 0x6559EBD2, 0xC3CBFA21, 0x8A780196, 0x1C749BC9,
  35.   0xC5A99155, 0xFA85E422, 0x82E004FB, 0xEA65BD10, 0x20A96148, 0x0E46EEE0,
  36.   0x68EDD594, 0xA466FF1A, 0x764CB496, 0x51884D6A, 0x9A0F2EF9, 0x0AFCBF1D,
  37.   0x75A46057, 0xC205F3D7, 0xDD326F34, 0x0C10CF75, 0x7A60A3F5, 0x52483851,
  38.   0x824673A8, 0xA16975CA, 0x0468574A, 0xC2D94194, 0xC8414EAA, 0xC8C6DCC9,
  39.   0xFA7029CE, 0xAA203837, 0x6C94EC06, 0xCBD0719C, 0x7CFD62C8, 0xB551EBB4,
  40. };
  41. /* 0x48 0x05000000 OK! */
  42. u32 g_key05[] = {
  43.   0xF00AB649, 0x3DC93A44, 0x47CD63CF, 0x03767816, 0x593AAE9F, 0xF7F9CC8A,
  44.   0x9DB5DA91, 0x9E67B676, 0x28DBE9E8, 0xB388EDDB, 0x6D26FB21, 0x7CE9C56A,
  45.   0xC158EF21, 0xEA73BAFD, 0x057C8350, 0xEE9920DB, 0xE2D8A595, 0x0A848D9E,
  46.   0x3BE5F557, 0x428FA065, 0xE64EBE93, 0x517A240A, 0xDBE9916C, 0xE4E129C3,
  47.   0x103F362A, 0xAB906310, 0x4A124DFA, 0xFD015D42, 0x64991E5C, 0xBC60C13C,
  48.   0x98937BF8, 0x0D29756C, 0xB5FE1ED7, 0x19C242FF, 0x8911F8A6, 0xDD1C3CBA,
  49. };
  50. /* 0x49 0x06000000 OK! */
  51. u32 g_key06[] = {
  52.   0x499E8617, 0x6F83909F, 0x388D9D19, 0xE82C3CCC, 0xC318ECEB, 0xAC7985E8,
  53.   0x41376431, 0x29DCBDA5, 0xD5D327C7, 0xD2B3E4BD, 0x835F549D, 0xB8FD557D,
  54.   0x4731EF1C, 0xA9E2DB95, 0xC5BF55BF, 0x40B9291E, 0xD470AF4B, 0xD44D096A,
  55.   0xA9EBDF7B, 0xECD1D3E8, 0xD50EDB47, 0x8502CE1F, 0x8E87A3E5, 0x21D20C8A,
  56.   0x0C4BB1D6, 0x342DD7B8, 0xBD1A3231, 0xF32BB408, 0x66CFDFD1, 0x367F9951,
  57.   0xEBD037A9, 0x0DADBAA1, 0x2701FFE2, 0x8844AE3F, 0x8D1ACA23, 0x32049549,
  58. };
  59. /* 0x4A 0x07000000 OK! */
  60. u32 g_key07[] = {
  61.   0x76CB00AF, 0x111CE62F, 0xB7B27E36, 0x6D8DE8F9, 0xD54BF16A, 0xD9E90373,
  62.   0x7599D982, 0x51F82B0E, 0x636103AD, 0x8E40BC35, 0x2F332C94, 0xF513AAE9,
  63.   0xD22AFEE9, 0x04343987, 0xFC5BB80C, 0x12349D89, 0x14A481BB, 0x25ED3AE8,
  64.   0x7D500E4F, 0x43D1B757, 0x7B59FDAD, 0x4CFBBF34, 0xC3D17436, 0xC1DA21DB,
  65.   0xA34D8C80, 0x962B235D, 0x3E420548, 0x09CF9FFE, 0xD4883F5C, 0xD90E9CB5,
  66.   0x00AEF4E9, 0xF0886DE9, 0x62A58A5B, 0x52A55546, 0x971941B5, 0xF5B79FAC,
  67. };
  68. /* 0x4B 0x08000000 1.xx game EBOOT.BIN (for example WipEout PurE UCES-00001) */
  69. u32 g_key08[] = {
  70.   0x18CB69EF, 0x158E8912, 0xDEF90EBB, 0x4CB0FB23, 0x3687EE18, 0x868D4A6E,
  71.   0x19B5C756, 0xEE16551D, 0xE7CB2D6C, 0x9747C660, 0xCE95143F, 0x2956F477,
  72.   0x03824ADE, 0x210C9DF1, 0x5029EB24, 0x81DFE69F, 0x39C89B00, 0xB00C8B91,
  73.   0xEF2DF9C2, 0xE13A93FC, 0x8B94A4A8, 0x491DD09D, 0x686A400D, 0xCED4C7E4,
  74.   0x96C8B7C9, 0x1EAADC28, 0xA4170B84, 0x505D5DDC, 0x5DA6C3CF, 0x0E5DFA2D,
  75.   0x6E7919B5, 0xCE5E29C7, 0xAAACDB94, 0x45F70CDD, 0x62A73725, 0xCCE6563D,
  76. };
  77. /* 0x4C 0x09000000 OK! gameshare */
  78. u32 g_key09[] = {
  79.   0x721B53E8, 0xFC3E31C6, 0xF85BA2A2, 0x3CF0AC72, 0x54EEA7AB, 0x5959BFCB,
  80.   0x54B8836B, 0xBC431313, 0x989EF2CF, 0xF0CE36B2, 0x98BA4CF8, 0xE971C931,
  81.   0xA0375DC8, 0x08E52FA0, 0xAC0DD426, 0x57E4D601, 0xC56E61C7, 0xEF1AB98A,
  82.   0xD1D9F8F4, 0x5FE9A708, 0x3EF09D07, 0xFA0C1A8C, 0xA91EEA5C, 0x58F482C5,
  83.   0x2C800302, 0x7EE6F6C3, 0xFF6ABBBB, 0x21100DD0, 0xD3297A88, 0x980012D3,
  84.   0xDC59C87B, 0x7FDC5792, 0xDB3F5DA6, 0xFC23B787, 0x22698ED3, 0xB680E812,
  85. };
  86. /* 0x4D 0x0A000000 OK! */
  87. u32 g_key0A[] = {
  88.   0x26DB83C4, 0x4BF4E7E7, 0xBFF54E61, 0xFEB5E83C, 0x49D0502F, 0x7676A194,
  89.   0x457EF3EF, 0xF8FF292C, 0x1D22EE76, 0xC51FD7AE, 0xDC93E1B3, 0xA295BDA7,
  90.   0xE8B906A0, 0x681C2D0E, 0xE46F46E0, 0x9AE49C1A, 0x08777693, 0x810E9D06,
  91.   0xD6B2DBAB, 0x3CA3E3D1, 0xE13DD704, 0xFA1560D1, 0xA425B3A9, 0xDEA1D27F,
  92.   0xE8F95068, 0x2A305A10, 0xCC711917, 0xF13246C5, 0x04D61DAF, 0x0D6F461D,
  93.   0x897861B4, 0xA2AC7AEB, 0xD323093B, 0xA2544FB8, 0x279E9162, 0x321E93C7,
  94. };
  95. /* 0x4E 0x0B000000 updaters key DATA.PSP */
  96. u32 g_key0B[] = {
  97.   0xA5603CBF, 0xD7482441, 0xF65764CC, 0x1F90060B, 0x4EA73E45, 0xE551D192,
  98.   0xE7B75D8A, 0x465A506E, 0x40FB1022, 0x2C273350, 0x8096DA44, 0x9947198E,
  99.   0x278DEE77, 0x745D062E, 0xC148FA45, 0x832582AF, 0x5FDB86DA, 0xCB15C4CE,
  100.   0x2524C62F, 0x6C2EC3B1, 0x369BE39E, 0xF7EB1FC4, 0x1E51CE1A, 0xD70536F4,
  101.   0xC34D39D8, 0x7418FB13, 0xE3C84DE1, 0xB118F03C, 0xA2018D4E, 0xE6D8770D,
  102.   0x5720F390, 0x17F96341, 0x60A4A68F, 0x1327DD28, 0x05944C64, 0x0C2C4C12,
  103. };
  104. /* 0x4F 0x0C000000 Game Demos 2.71 DATA.PSP key - Locoroco, Kazuo */
  105. u32 g_key0C[] = {
  106.   0x1ABF102F, 0xD596D071, 0x6FC552B2, 0xD4F2531F, 0xF025CDD9, 0xAF9AAF03,
  107.   0xE0CF57CF, 0x255494C4, 0x7003675E, 0x907BC884, 0x002D4EE4, 0x0B687A0D,
  108.   0x9E3AA44F, 0xF58FDA81, 0xEC26AC8C, 0x3AC9B49D, 0x3471C037, 0xB0F3834D,
  109.   0x10DC4411, 0xA232EA31, 0xE2E5FA6B, 0x45594B03, 0xE43A1C87, 0x31DAD9D1,
  110.   0x08CD7003, 0xFA9C2FDF, 0x5A891D25, 0x9B5C1934, 0x22F366E5, 0x5F084A32,
  111.   0x695516D5, 0x2245BE9F, 0x4F6DD705, 0xC4B8B8A1, 0xBC13A600, 0x77B7FC3B,
  112. };
  113. /* 0x50 0x0D000000 OK! */
  114. u32 g_key0D[] = {
  115.   0x3B45E6FD, 0x6246E3DC, 0xBAEA4F91, 0x42854D9E, 0x1529D135, 0xDFD0B7F6,
  116.   0xFCA48679, 0x1916A435, 0x0CC52DB5, 0x68C00C9C, 0xFF23AA16, 0x6897DFE9,
  117.   0x91328106, 0x421EF140, 0xDE746F8F, 0xCF04DCE1, 0xB95B7B66, 0xA9BDFFC8,
  118.   0x8894BA38, 0xD7D36158, 0x7E7538CA, 0x709B5021, 0x4A07AF69, 0xC54872C8,
  119.   0xF070CC24, 0xF715D693, 0xB5E92F9C, 0x204CFBD0, 0x752D6960, 0xB3538CC5,
  120.   0xED1BDE56, 0x897D1AC1, 0x51AEA81F, 0xFE37B72D, 0x1A9C0DE9, 0x2FD95F8F,
  121. };
  122. /* 0x51 0x0E000000 OK! */
  123. u32 g_key0E[] = {
  124.   0x95FF0CA0, 0x7ED02497, 0x3163071F, 0x6E26FBC0, 0xF9CC9C87, 0xA69D3ED2,
  125.   0xF004C647, 0x0156A37F, 0x9F3D338B, 0x75E41C30, 0xE6BE144B, 0x35F6355B,
  126.   0x81662E13, 0xDB6695B5, 0xCBBD0916, 0xABA4909A, 0x921FF555, 0x8904E655,
  127.   0x64E60EC3, 0x8537997C, 0xFF785ED3, 0x0F77D11C, 0x47E1E82D, 0x7A346190,
  128.   0xD56FC4E6, 0xE9AB0EE4, 0x2F2EA61E, 0x74387C37, 0x735397DB, 0x594CB6DB,
  129.   0x5324753B, 0x0D88768C, 0xE32C2B41, 0x1E94EEBA, 0x175DCF73, 0x1A14F0B6,
  130. };
  131. /* 0x52 0x0F000000 2.50 meimg and me_sdimg */
  132. u32 g_key0F[] = {
  133.   0xA381FEBC, 0x99B9D5C9, 0x6C560A8D, 0x30309F95, 0x792646CC, 0x82B64E5E,
  134.   0x1A3951AD, 0x0A182EC4, 0xC46131B4, 0x77C50C8A, 0x325F16C6, 0x02D1942E,
  135.   0x0AA38AC4, 0x2A940AC6, 0x67034726, 0xE52DB133, 0xD2EF2107, 0x85C81E90,
  136.   0xC8D164BA, 0xC38DCE1D, 0x948BA275, 0x0DB84603, 0xE2473637, 0xCD74FCDA,
  137.   0x588E3D66, 0x6D28E822, 0x891E548B, 0xF53CF56D, 0x0BBDDB66, 0xC4B286AA,
  138.   0x2BEBBC4B, 0xFC261FF4, 0x92B8E705, 0xDCEE6952, 0x5E0442E5, 0x8BEB7F21,
  139. };
  140. /* 0x52 0x862648D1 2.60 meimg and me_sdimg */
  141. u32 g_key86[] = {
  142.   0x11BFD698, 0xD7F9B324, 0xDD524927, 0x16215B86, 0x504AC36D, 0x5843B217,
  143.   0xE5A0DA47, 0xBB73A1E7, 0x2915DB35, 0x375CFD3A, 0xBB70A905, 0x272BEFCA,
  144.   0x2E960791, 0xEA0799BB, 0xB85AE6C8, 0xC9CAF773, 0x250EE641, 0x06E74A9E,
  145.   0x5244895D, 0x466755A5, 0x9A84AF53, 0xE1024174, 0xEEBA031E, 0xED80B9CE,
  146.   0xBC315F72, 0x5821067F, 0xE8313058, 0xD2D0E706, 0xE6D8933E, 0xD7D17FB4,
  147.   0x505096C4, 0xFDA50B3B, 0x4635AE3D, 0xEB489C8A, 0x422D762D, 0x5A8B3231,
  148. };
  149. /* 0x59 0x4467415d 2.xx systems and drivers fw files */
  150. u32 g_key44[] = {
  151.   0xEF80E005, 0x3A54689F, 0x43C99CCD, 0x1B7727BE, 0x5CB80038, 0xDD2EFE62,
  152.   0xF369F92C, 0x160F94C5, 0x29560019, 0xBF3C10C5, 0xF2CE5566, 0xCEA2C626,
  153.   0xB601816F, 0x64E7481E, 0x0C34DEBD, 0x98F29CB0, 0x3FC504D7, 0xC8FB39F0,
  154.   0x0221B3D8, 0x63F936A2, 0x9A3A4800, 0x6ECC32E3, 0x8E120CFD, 0xB0361623,
  155.   0xAEE1E689, 0x745502EB, 0xE4A6C61C, 0x74F23EB4, 0xD7FA5813, 0xB01916EB,
  156.   0x12328457, 0xD2BC97D2, 0x646425D8, 0x328380A5, 0x43DA8AB1, 0x4B122AC9,
  157. };
  158. /* 0x5A 0x207BBF2F 2.xx vsh fw files */
  159. u32 g_key20[] = {
  160.   0x33B50800, 0xF32F5FCD, 0x3C14881F, 0x6E8A2A95, 0x29FEEFD5, 0x1394EAE3,
  161.   0xBD6BD443, 0x0821C083, 0xFAB379D3, 0xE613E165, 0xF5A754D3, 0x108B2952,
  162.   0x0A4B1E15, 0x61EADEBA, 0x557565DF, 0x3B465301, 0xAE54ECC3, 0x61423309,
  163.   0x70C9FF19, 0x5B0AE5EC, 0x989DF126, 0x9D987A5F, 0x55BC750E, 0xC66EBA27,
  164.   0x2DE988E8, 0xF76600DA, 0x0382DCCB, 0x5569F5F2, 0x8E431262, 0x288FE3D3,
  165.   0x656F2187, 0x37D12E9C, 0x2F539EB4, 0xA492998E, 0xED3958F7, 0x39E96523,
  166. };
  167. /* 0x5B 0x3ACE4DCE 2.xx modules and library fw files */
  168. u32 g_key3A[] = {
  169.   0x67877069, 0x3ABD5617, 0xC23AB1DC, 0xAB57507D, 0x066A7F40, 0x24DEF9B9,
  170.   0x06F759E4, 0xDCF524B1, 0x13793E5E, 0x0359022D, 0xAAE7E1A2, 0x76B9B2FA,
  171.   0x9A160340, 0x87822FBA, 0x19E28FBB, 0x9E338A02, 0xD8007E9A, 0xEA317AF1,
  172.   0x630671DE, 0x0B67CA7C, 0x865192AF, 0xEA3C3526, 0x2B448C8E, 0x8B599254,
  173.   0x4602E9CB, 0x4DE16CDA, 0xE164D5BB, 0x07ECD88E, 0x99FFE5F8, 0x768800C1,
  174.   0x53B091ED, 0x84047434, 0xB426DBBC, 0x36F948BB, 0x46142158, 0x749BB492,
  175. };
  176. /* 0x5C 0xB818624D */
  177. u32 g_keyB8[] = {
  178.   0x51FA7415, 0x538411BA, 0x58171A2E, 0x0FA0B35C, 0xBBFFA1F3, 0xB0386FBF,
  179.   0x0633DF2A, 0x26CE46AD, 0xA25E64EE, 0x3937B415, 0x5E4BAF55, 0x507BBE43,
  180.   0xBBAC0050, 0xEA310152, 0xC700099B, 0x73B75192, 0xE09049C3, 0x20209748,
  181.   0x4304EF85, 0xB0BAC80C, 0x78674127, 0x32502F65, 0x6B71CF23, 0xE3E85B8B,
  182.   0x7D045F52, 0x074C24A9, 0x9325371C, 0x09F586B7, 0x4F6DA2F2, 0xD808C1AE,
  183.   0x64115E1B, 0x53553C04, 0xC012CE52, 0xE998C929, 0x63B09F11, 0xCF54F7E4,
  184. };
  185. /* 0x5D 0xC0CB167C 2.xx+ game eboot.bin */
  186. u32 g_keyC0[] = {
  187.   0xDA8E36FA, 0x5DD97447, 0x76C19874, 0x97E57EAF, 0x1CAB09BD, 0x9835BAC6,
  188.   0x03D39281, 0x03B205CF, 0x2882E734, 0xE714F663, 0xB96E2775, 0xBD8AAFC7,
  189.   0x1DD3EC29, 0xECA4A16C, 0x5F69EC87, 0x85981E92, 0x7CFCAE21, 0xBAE9DD16,
  190.   0xE6A97804, 0x2EEE02FC, 0x61DF8A3D, 0xDD310564, 0x9697E149, 0xC2453F3B,
  191.   0xF91D8456, 0x39DA6BC8, 0xB3E5FEF5, 0x89C593A3, 0xFB5C8ABC, 0x6C0B7212,
  192.   0xE10DD3CB, 0x98D0B2A8, 0x5FD61847, 0xF0DC2357, 0x7701166A, 0x0F5C3B68,
  193. };
  194. /* 0x5E 0xBB67C59F gameshare 2.xx */
  195. u32 g_keyBB[] = {
  196.   0x94A757C7, 0x9FD39833, 0xF8508371, 0x328B0B29, 0x2CBCB9DA, 0x2918B9C6,
  197.   0x944C50BA, 0xF1DCE7D0, 0x640C3966, 0xC90B3D08, 0xF4AD17BA, 0x6CA0F84B,
  198.   0xF7767C67, 0xA4D3A55A, 0x4A085C6A, 0x6BB27071, 0xFA8B38FB, 0x3FDB31B8,
  199.   0x8B7196F2, 0xDB9BED4A, 0x51625B84, 0x4C1481B4, 0xF684F508, 0x30B44770,
  200.   0x93AA8E74, 0x90C579BC, 0x246EC88D, 0x2E051202, 0xC774842E, 0xA185D997,
  201.   0x7A2B3ADD, 0xFE835B6D, 0x508F184D, 0xEB4C4F13, 0x0E1993D3, 0xBA96DFD2,
  202. };
  203. /* 0x5F 0x4C74CBA9 Updater */
  204. u32 g_key4C[] = {
  205.   0x05A838BD, 0x81DE7645, 0xD53D505D, 0x9D6F0F7E, 0x4D863816, 0xC94795B9,
  206.   0x1E3D925E, 0xEBDB398C, 0x77FA188D, 0xD4E34688, 0xE337FCF1, 0xD5E9DD10,
  207.   0xD635B768, 0x4038A375, 0x33A6A599, 0xE537DBC5, 0x65637369, 0x905BC1C5,
  208.   0xBE7A739E, 0xB69F4CD4, 0x24546705, 0x0FAD6036, 0xF3C01ECF, 0x84095A9D,
  209.   0x81147182, 0x508DF151, 0xE46B6B92, 0x9C45B85C, 0x1669DF78, 0xB0ED16B2,
  210.   0x6CF3AF47, 0xCF8B5475, 0x414E54EC, 0xAFA16FA9, 0x54132B7F, 0xE4093930,
  211. };
  212. /* 0x60 0x7F24BDCD Demo Games */
  213. u32 g_key7F[] = {
  214.   0x2A5282B4, 0x8706DDA5, 0x4C88EC1C, 0xD504708E, 0x72634DD2, 0xDD2E2F60,
  215.   0xE3D5FDB5, 0xE050637D, 0x295C69AC, 0x7B61F57D, 0x594412B0, 0x13D925CE,
  216.   0x2A6BE8DD, 0xBC9594E6, 0x1F4A8A39, 0xC56B5909, 0x52CFB2F7, 0x03EE089F,
  217.   0x5CA57A21, 0xDB64090F, 0x5E9A56F3, 0x13C56633, 0xD9C48D1D, 0xCDA05972,
  218.   0xD09E13B2, 0x7DEDD3DF, 0x364387BB, 0xCB207488, 0xBEC14B3F, 0x7C9C0D11,
  219.   0x9916ED40, 0x65909519, 0xC55BB1B3, 0xE997E084, 0xB483438B, 0xB8A2D255,
  220. };
  221. /* 0x61 0x1BC8D12B 1seg */
  222. u32 g_key1B[] = {
  223.   0x7DC1B266, 0x5B45FF43, 0x5CF9FAA6, 0x7945DA40, 0x6937FDA2, 0x4E54B274,
  224.   0x0CC3F5EC, 0xCA7AB768, 0xF9C8D518, 0xC8ABBF41, 0xEC175D91, 0x59ABFEC5,
  225.   0x6422AC33, 0x8FAD686E, 0xF22281C9, 0xB5F311B5, 0x1090EF17, 0x971EE73D,
  226.   0xF74659A7, 0xDF62E802, 0x617CAED2, 0xDD73A68D, 0x7E21F118, 0x86FABA9D,
  227.   0x77FA7101, 0xDB5BFBE4, 0x4A6FA578, 0x8C3EF59A, 0x19EDFCD8, 0x54C96A8B,
  228.   0x8D7AD098, 0xD406BE03, 0x3397EE1E, 0x36DA4F21, 0x4DF9F731, 0xF0B6CF60,
  229. };
  230.  
  231. typedef struct
  232. {
  233.     u32 tag;      // 4 byte value at offset 0xD0 in the PRX file
  234.     u8* key;      // "step1_result" use for XOR step
  235.     u8 code;      // Code for scramble
  236.     u8 codeExtra; // Extra code for ExtraV2Mangle
  237. } TAG_INFO;
  238.  
  239. // tags and corresponding keys & scramble codes
  240. static const TAG_INFO g_tagInfo[] =
  241. {
  242.     /* 1.00 FW */
  243.     { 0x00000000, (u8*)g_key00, 0x42 }, //1.00 Kernel system and driver fw
  244.     { 0x02000000, (u8*)g_key02, 0x45 }, //1.00 User module and library fw
  245.  
  246.     /* 1.50 FW */
  247.     { 0x03000000, (u8*)g_key03, 0x46 }, //1.50 Library
  248.     { 0x04000000, (u8*)g_key04, 0x47 }, //1.50
  249.     { 0x05000000, (u8*)g_key05, 0x48 }, //1.50
  250.     { 0x06000000, (u8*)g_key06, 0x49 }, //1.50
  251.     { 0x07000000, (u8*)g_key07, 0x4A }, //1.50 index.dat
  252.     { 0x08000000, (u8*)g_key08, 0x4B }, //1.50 Game EBOOT.BIN
  253.     { 0x09000000, (u8*)g_key09, 0x4C }, //1.50 Gameshare
  254.     { 0x0A000000, (u8*)g_key0A, 0x4D }, //1.50
  255.     { 0x0B000000, (u8*)g_key0B, 0x4E }, //1.50 DATA.PSP Updater
  256.     { 0x0C000000, (u8*)g_key0C, 0x4F }, //1.50 DATA.PSP Demo Game (locoroco, kazue, etc)
  257.     { 0x0D000000, (u8*)g_key0D, 0x50 }, //1.50
  258.     { 0x0E000000, (u8*)g_key0E, 0x51 }, //1.50
  259.     { 0x0F000000, (u8*)g_key0F, 0x52 }, //1.50 meimg and me_sdimg
  260.  
  261.     /* 2.60 FW */
  262.     { 0x862648D1, (u8*)g_key86, 0x52, 0x52 }, //2.60 meimg and me_sdimg
  263.  
  264.     /* 2.00 FW */
  265.     { 0x4467415D, (u8*)g_key44, 0x59, 0x59 }, //2.00 Kernel system and driver fw
  266.     { 0x207BBF2F, (u8*)g_key20, 0x5A, 0x5A }, //2.00 User vsh
  267.     { 0x3ACE4DCE, (u8*)g_key3A, 0x5B, 0x5B }, //2.00 User module and library fw
  268.     { 0xB818624D, (u8*)g_keyB8, 0x5C, 0x5C }, //2.00 index.dat
  269.     { 0xC0CB167C, (u8*)g_keyC0, 0x5D, 0x5D }, //2.00 Game EBOOT.BIN
  270.     { 0xBB67C59F, (u8*)g_keyBB, 0x5E, 0x5E }, //2.00 Gameshare
  271.     { 0x4C74CBA9, (u8*)g_key4C, 0x5F, 0x5F }, //2.00 Updater
  272.     { 0x7F24BDCD, (u8*)g_key7F, 0x60, 0x60 }, //2.00 Demo Games
  273.     { 0x1BC8D12B, (u8*)g_key1B, 0x61, 0x61 }, //2.00 1seg
  274. };
  275.  
  276.  
  277. //////////Decryption2//////////
  278.  
  279. /* 0x42 1.x PRX [16 byte] */
  280. u8 key_00000000[16] = {0x6A,0x19,0x71,0xF3,0x18,0xDE,0xD3,0xA2,0x6D,0x3B,0xDE,0xC7,0xBE,0x98,0xE2,0x4C}; //[old 144]
  281.  
  282. /* 0x43 Kernel modules fw keys */
  283. u8 key_01000000[16] = {0x50,0xCC,0x03,0xAC,0x3F,0x53,0x1A,0xFA,0x0A,0xA4,0x34,0x23,0x86,0x61,0x7F,0x97};
  284. u8 key_4C940AF0[16] = {0xA8,0xB1,0x47,0x77,0xDC,0x49,0x6A,0x6F,0x38,0x4C,0x4D,0x96,0xBD,0x49,0xEC,0x9B};
  285. u8 key_4C940BF0[16] = {0x3B,0x9B,0x1A,0x56,0x21,0x80,0x14,0xED,0x8E,0x8B,0x08,0x42,0xFA,0x2C,0xDC,0x3A};
  286. u8 key_4C940CF0[16] = {0xEC,0x3B,0xD2,0xC0,0xFA,0xC1,0xEE,0xB9,0x9A,0xBC,0xFF,0xA3,0x89,0xF2,0x60,0x1F};
  287. u8 key_4C940DF0[16] = {0x3C,0x2B,0x51,0xD4,0x2D,0x85,0x47,0xDA,0x2D,0xCA,0x18,0xDF,0xFE,0x54,0x09,0xED};
  288. u8 key_4C940FF0[16] = {0x80,0x02,0xC0,0xBF,0x00,0x0A,0xC0,0xBF,0x40,0x03,0xC0,0xBF,0x40,0x00,0x00,0x00}; //???
  289. u8 key_4C9410F0[16] = {0x31,0x1F,0x98,0xD5,0x7B,0x58,0x95,0x45,0x32,0xAB,0x3A,0xE3,0x89,0x32,0x4B,0x34};
  290. u8 key_4C9412F0[16] = {0x26,0x38,0x0A,0xAC,0xA5,0xD8,0x74,0xD1,0x32,0xB7,0x2A,0xBF,0x79,0x9E,0x6D,0xDB};
  291. u8 key_4C9413F0[16] = {0x53,0xE7,0xAB,0xB9,0xC6,0x4A,0x4B,0x77,0x92,0x17,0xB5,0x74,0x0A,0xDA,0xA9,0xEA};
  292. u8 key_4C9414F0[16] = {0x45,0xEF,0x5C,0x5D,0xED,0x81,0x99,0x84,0x12,0x94,0x8F,0xAB,0xE8,0x05,0x6D,0x7D};
  293. u8 key_4C9415F0[16] = {0x70,0x1B,0x08,0x25,0x22,0xA1,0x4D,0x3B,0x69,0x21,0xF9,0x71,0x0A,0xA8,0x41,0xA9};
  294. u8 key_4C9416F0[16] = {0xEB,0x1B,0x53,0x0B,0x62,0x49,0x32,0x58,0x1F,0x83,0x0A,0xF4,0x99,0x3D,0x75,0xD0};
  295. u8 key_4C9417F0[16] = {0xBA,0xE2,0xA3,0x12,0x07,0xFF,0x04,0x1B,0x64,0xA5,0x11,0x85,0xF7,0x2F,0x99,0x5B};
  296. u8 key_4C9418F0[16] = {0x2E,0x8E,0x97,0xA2,0x85,0x42,0x70,0x73,0x18,0xDA,0xA0,0x8A,0xF8,0x62,0xA2,0xB0};
  297. u8 key_4C9419F0[16] = {0x58,0x2A,0x4C,0x69,0x19,0x7B,0x83,0x3D,0xD2,0x61,0x61,0xFE,0x14,0xEE,0xAA,0x11};
  298. u8 key_4C941AF0[16] = {0X9F,0XFD,0X4C,0X28,0X20,0XB1,0X3E,0X76,0X36,0X4A,0XAB,0X1C,0X54,0XBC,0X3B,0XDC}; //keys555_k1 0x43 zecoxao
  299. u8 key_4C941BF0[16] = {0xEB,0x1B,0x53,0x0B,0x62,0x49,0x32,0x58,0x1F,0x83,0x0A,0xF4,0x99,0x3D,0x75,0xD0};
  300. u8 key_4C941CF0[16] = {0xD6,0xBD,0xCE,0x1E,0x12,0xAF,0x9A,0xE6,0x69,0x30,0xDE,0xDA,0x88,0xB8,0xFF,0xFB};
  301. u8 key_4C941DF0[16] = {0x1D,0x13,0xE9,0x50,0x04,0x73,0x3D,0xD2,0xE1,0xDA,0xB9,0xC1,0xE6,0x7B,0x25,0xA7};
  302. u8 key_4C941EF0[16] = {0xE3,0x52,0x39,0x97,0x3B,0x84,0x41,0x1C,0xC3,0x23,0xF1,0xB8,0xA9,0x09,0x4B,0xF0};
  303. u8 key_4C941FF0[16] = {0x2C,0x8E,0xAF,0x1D,0xFF,0x79,0x73,0x1A,0xAD,0x96,0xAB,0x09,0xEA,0x35,0x59,0x8B};
  304. u8 key_4C9420F0[16] = {0xEB,0x1B,0x53,0x0B,0x62,0x49,0x32,0x58,0x1F,0x83,0x0A,0xF4,0x99,0x3D,0x75,0xD0};
  305. u8 key_4C9421F0[16] = {0xEB,0x1B,0x53,0x0B,0x62,0x49,0x32,0x58,0x1F,0x83,0x0A,0xF4,0x99,0x3D,0x75,0xD0};
  306. u8 key_4C9422F0[16] = {0xE1,0x45,0x93,0x2C,0x53,0xE2,0xAB,0x06,0x6F,0xB6,0x8F,0x0B,0x66,0x91,0xE7,0x1E};
  307. u8 key_4C9428F0[16] = {0xF1,0xBC,0x17,0x07,0xAE,0xB7,0xC8,0x30,0xD8,0x34,0x9D,0x40,0x6A,0x8E,0xDF,0x4E};
  308. u8 key_4C9429F0[16] = {0x6D,0x72,0xA4,0xBA,0x7F,0xBF,0xD1,0xF1,0xA9,0xF3,0xBB,0x07,0x1B,0xC0,0xB3,0x66};
  309. u8 key_4C942AF0[16] = {0x41,0x8A,0x35,0x4F,0x69,0x3A,0xDF,0x04,0xFD,0x39,0x46,0xA2,0x5C,0x2D,0xF2,0x21};
  310. u8 key_4C9480F0[16] = {0x94,0x3A,0x70,0x73,0x44,0x24,0xBB,0x76,0x4A,0xFD,0xEB,0x98,0x2E,0xD0,0xBF,0x20}; //keys630_k0 0x43 zecoxao
  311. u8 key_4C9484F0[16] = {0x36,0xB0,0xDC,0xFC,0x59,0x2A,0x95,0x1D,0x80,0x2D,0x80,0x3F,0xCD,0x30,0xA0,0x1B};
  312. u8 key_4C9485F0[16] = {0x23,0x8D,0x3D,0xAE,0x41,0x50,0xA0,0xFA,0xF3,0x2F,0x32,0xCE,0xC7,0x27,0xCD,0x50};
  313. u8 key_4C9486F0[16] = {0x8D,0xDB,0xDC,0x5C,0xF2,0x70,0x2B,0x40,0xB2,0x3D,0x00,0x09,0x61,0x7C,0x10,0x60};
  314. u8 key_4C9487F0[16] = {0x81,0xD1,0x12,0x89,0x35,0xC8,0xEA,0x8B,0xE0,0x02,0x2D,0x2D,0x6A,0x18,0x67,0xB8};
  315. u8 key_4C948AF0[16] = {0x07,0xE3,0x08,0x64,0x7F,0x60,0xA3,0x36,0x6A,0x76,0x21,0x44,0xC9,0xD7,0x06,0x83};
  316. u8 key_4C948BF0[16] = {0x91,0xF2,0x02,0x9E,0x63,0x32,0x30,0xA9,0x1D,0xDA,0x0B,0xA8,0xB7,0x41,0xA3,0xCC};
  317. u8 key_4C948CF0[16] = {0x01,0x7B,0xF0,0xE9,0xBE,0x9A,0xDD,0x54,0x37,0xEA,0x0E,0xC4,0xD6,0x4D,0x8E,0x9E};
  318. u8 key_4C948DF0[16] = {0x98,0x43,0xFF,0x85,0x68,0xB2,0xDB,0x3B,0xD4,0x22,0xD0,0x4F,0xAB,0x5F,0x0A,0x31};
  319. u8 key_4C9490F0[16] = {0xFA,0x79,0x09,0x36,0xE6,0x19,0xE8,0xA4,0xA9,0x41,0x37,0x18,0x81,0x02,0xE9,0xB3};
  320. u8 key_4C9491F0[16] = {0x85,0x93,0x1F,0xED,0x2C,0x4D,0xA4,0x53,0x59,0x9C,0x3F,0x16,0xF3,0x50,0xDE,0x46};
  321. u8 key_4C9492F0[16] = {0xD2,0x83,0xCC,0x63,0xBB,0x10,0x15,0xE7,0x7B,0xC0,0x6D,0xEE,0x34,0x9E,0x4A,0xFA};
  322. u8 key_4C9493F0[16] = {0xC8,0xA0,0x70,0x98,0xAE,0xE6,0x2B,0x80,0xD7,0x91,0xE6,0xCA,0x4C,0xA9,0x78,0x4E};
  323. u8 key_4C9494F0[16] = {0x76,0xF2,0x6C,0x0A,0xCA,0x3A,0xBA,0x4E,0xAC,0x76,0xD2,0x40,0xF5,0xC3,0xBF,0xF9};
  324. u8 key_4C9495F0[16] = {0x7A,0x3E,0x55,0x75,0xB9,0x6A,0xFC,0x4F,0x3E,0xE3,0xDF,0xB3,0x6C,0xE8,0x2A,0x82};
  325. u8 key_4C9496F0[16] = {0xEB,0xD9,0x1E,0x05,0x3C,0xAE,0xAB,0x62,0xE3,0xB7,0x1F,0x37,0xE5,0xCD,0x68,0xC3};
  326. u8 key_4C9497F0[16] = {0xBF,0xF8,0x34,0x02,0x84,0x47,0xBD,0x87,0x1C,0x52,0x03,0x23,0x79,0xBB,0x59,0x81};
  327. u8 key_4C949AF0[16] = {0x48,0x58,0xAA,0x38,0x78,0x9A,0x6C,0x0D,0x42,0xEA,0xC8,0x19,0x23,0x34,0x4D,0xF0};
  328. u8 key_4C949BF0[16] = {0x20,0x00,0x5B,0x67,0x48,0x77,0x02,0x60,0xCF,0x0C,0xAB,0x7E,0xAE,0x0C,0x55,0xA1};
  329. u8 key_4C949CF0[16] = {0x3F,0x67,0x09,0xA1,0x47,0x71,0xD6,0x9E,0x27,0x7C,0x7B,0x32,0x67,0x0E,0x65,0x8A};
  330.  
  331. /* 0x49 */
  332. u8 key_E42C2303[16] = {0x6D,0x79,0xF2,0xF6,0x37,0x3D,0xB7,0xBE,0xA2,0x73,0xA1,0xAE,0x88,0x70,0xC9,0xA3};
  333.  
  334. /* 0x51 Filetable and IPL pre-decryption keys */
  335. u8 key_63BAB403[16] = {0x02,0x2B,0x67,0x21,0xE7,0x86,0xAD,0x91,0x73,0xBC,0xC9,0xDE,0xC5,0x7A,0x13,0xA4};
  336. u8 key_D82310F0[16] = {0x9D,0x09,0xFD,0x20,0xF3,0x8F,0x10,0x69,0x0D,0xB2,0x6F,0x00,0xCC,0xC5,0x51,0x2E};
  337. u8 key_D8231EF0[16] = {0x4F,0x44,0x5C,0x62,0xB3,0x53,0xC4,0x30,0xFC,0x3A,0xA4,0x5B,0xEC,0xFE,0x51,0xEA};
  338. u8 key_D82328F0[16] = {0x5D,0xAA,0x72,0xF2,0x26,0x60,0x4D,0x1C,0xE7,0x2D,0xC8,0xA3,0x2F,0x79,0xC5,0x54};
  339.  
  340. /* 0x52 meimg.img and me_sdimg.img */
  341. u8 key_1B11FD03[16] = {0x71,0x39,0xAD,0x80,0xA1,0x07,0xDC,0xA1,0xE4,0xE5,0x59,0x97,0xEB,0xB3,0xFF,0x48};
  342. u8 key_D13B05F0[16] = {0xE7,0x47,0x33,0x64,0xF9,0x67,0xFE,0xDE,0x61,0x7C,0xE4,0x06,0x13,0x60,0xAD,0x6D};
  343. u8 key_D13B06F0[16] = {0xB2,0xDB,0x96,0xD9,0x8B,0x7E,0x13,0x95,0x45,0x55,0x1C,0xA3,0xCB,0x7E,0x2E,0xAB};
  344. u8 key_D13B08F0[16] = {0x03,0xBC,0x7A,0x54,0xFB,0x42,0xDF,0xC4,0x4E,0x1E,0x0C,0xE1,0xDB,0xF6,0x5B,0xF3};
  345. u8 key_D13B10F0[16] = {0xD6,0xCC,0x05,0x5B,0x46,0x88,0xAF,0x32,0x01,0xA2,0x42,0xA6,0x5A,0x2A,0x7E,0x90};
  346. u8 key_D13B1EF0[16] = {0x04,0x81,0xA4,0x19,0x06,0x54,0x7B,0x6B,0xF0,0x2A,0x89,0xFD,0x7A,0x11,0x7E,0x54};
  347. u8 key_D13B28F0[16] = {0x16,0x6F,0x8A,0x89,0x93,0x67,0xF2,0x47,0xEB,0x3D,0xE5,0x05,0xB9,0x96,0xEA,0xEA};
  348.  
  349. /* 0x59 2.XX [16 byte] */
  350. u8 key_4467415D[16] = {0x66,0x0F,0xCB,0x3B,0x30,0x75,0xE3,0x10,0x0A,0x95,0x65,0xC7,0x3C,0x93,0x87,0x22};
  351.  
  352. /* 0x5A vshmain.prx keys */
  353. u8 key_0F037303[16] = {0x72,0xB4,0x39,0xFF,0x34,0x9B,0xAE,0x82,0x30,0x34,0x4A,0x1D,0xA2,0xD8,0xB4,0x3C};
  354. u8 key_380205F0[16] = {0x03,0xA7,0xCC,0x4A,0x5B,0x91,0xC2,0x07,0xFF,0xFC,0x26,0x25,0x1E,0x42,0x4B,0xB5};
  355. u8 key_380206F0[16] = {0x56,0x3B,0x69,0xF7,0x29,0x88,0x2F,0x4C,0xDB,0xD5,0xDE,0x80,0xC6,0x5C,0xC8,0x73};
  356. u8 key_380208F0[16] = {0xE7,0x5C,0x85,0x7A,0x59,0xB4,0xE3,0x1D,0xD0,0x9E,0xCE,0xC2,0xD6,0xD4,0xBD,0x2B};
  357. u8 key_38020AF0[16] = {0xAB,0x82,0x25,0xD7,0x43,0x6F,0x6C,0xC1,0x95,0xC5,0xF7,0xF0,0x63,0x73,0x3F,0xE7};
  358. u8 key_380210F0[16] = {0x32,0x2C,0xFA,0x75,0xE4,0x7E,0x93,0xEB,0x9F,0x22,0x80,0x85,0x57,0x08,0x98,0x48};
  359. u8 key_38021EF0[16] = {0xE0,0x61,0x5B,0x37,0xA4,0xA2,0x47,0xB2,0x6E,0xAA,0x4B,0xDE,0x77,0x33,0x98,0x8C};
  360. u8 key_380228F0[16] = {0xF2,0x8F,0x75,0xA7,0x31,0x91,0xCE,0x9E,0x75,0xBD,0x27,0x26,0xB4,0xB4,0x0C,0x32};
  361. u8 key_380280F0[16] = {0x97,0x09,0x12,0xD3,0xDB,0x02,0xBD,0xD8,0xE7,0x74,0x51,0xFE,0xF0,0xEA,0x6C,0x5C};
  362. u8 key_380281F0[16] = {0xE9,0x9D,0xBF,0xAD,0x61,0x30,0xD3,0xC5,0x62,0xB4,0xE2,0xEF,0xA3,0x85,0x73,0x1C};
  363. u8 key_380282F0[16] = {0xC4,0x0B,0x2B,0x1D,0x97,0xC4,0xEC,0x27,0xCD,0x2B,0x9B,0x39,0x0E,0xD0,0xE3,0x09};
  364. u8 key_380283F0[16] = {0x34,0x20,0x0C,0x8E,0xA1,0x86,0x79,0x84,0xAF,0x13,0xAE,0x34,0x77,0x6F,0xEA,0x89};
  365. u8 key_380290F0[16] = {0xF9,0x4A,0x6B,0x96,0x79,0x3F,0xEE,0x0A,0x04,0xC8,0x8D,0x7E,0x5F,0x38,0x3A,0xCF};
  366. u8 key_380291F0[16] = {0x86,0xA0,0x7D,0x4D,0xB3,0x6B,0xA2,0xFD,0xF4,0x15,0x85,0x70,0x2D,0x6A,0x0D,0x3A};
  367. u8 key_380292F0[16] = {0xD1,0xB0,0xAE,0xC3,0x24,0x36,0x13,0x49,0xD6,0x49,0xD7,0x88,0xEA,0xA4,0x99,0x86};
  368. u8 key_380293F0[16] = {0xCB,0x93,0x12,0x38,0x31,0xC0,0x2D,0x2E,0x7A,0x18,0x5C,0xAC,0x92,0x93,0xAB,0x32};
  369. u8 key_38029AF0[16] = {0xF9,0x4A,0x6B,0x96,0x79,0x3F,0xEE,0x0A,0x04,0xC8,0x8D,0x7E,0x5F,0x38,0x3A,0xCF};
  370.  
  371. u8 key_628905F0[16] = {0x8E,0xBF,0x51,0xF8,0x91,0x5D,0x96,0x37,0x8C,0x6C,0xB0,0xD7,0x5C,0xDE,0x14,0x3B};
  372. u8 key_628906F0[16] = {0xDB,0x23,0xF4,0x45,0xE3,0x44,0x7B,0x7C,0xA8,0x45,0x48,0x72,0x84,0xC0,0x97,0xFD};
  373. u8 key_628910F0[16] = {0xBF,0x34,0x67,0xC7,0x2E,0xB2,0xC7,0xDB,0xEC,0xB2,0x16,0x77,0x15,0x94,0xC7,0xC6};
  374. u8 key_62891EF0[16] = {0x6D,0x79,0xC6,0x85,0x6E,0x6E,0x13,0x82,0x1D,0x3A,0xDD,0x2C,0x35,0xAF,0xC7,0x02};
  375. u8 key_628928F0[16] = {0x7F,0x97,0xE8,0x15,0xFB,0x5D,0x9A,0xAE,0x06,0x2D,0xB1,0xD4,0xF6,0x28,0x53,0xBC};
  376.  
  377. /* 0x5B User modules fw keys */
  378. u8 key_76202403[16] = {0xF3,0xAC,0x6E,0x7C,0x04,0x0A,0x23,0xE7,0x0D,0x33,0xD8,0x24,0x73,0x39,0x2B,0x4A};
  379. u8 key_457B05F0[16] = {0x40,0x9B,0xC6,0x9B,0xA9,0xFB,0x84,0x7F,0x72,0x21,0xD2,0x36,0x96,0x55,0x09,0x74};
  380. u8 key_457B06F0[16] = {0x15,0x07,0x63,0x26,0xDB,0xE2,0x69,0x34,0x56,0x08,0x2A,0x93,0x4E,0x4B,0x8A,0xB2};
  381. u8 key_457B08F0[16] = {0xA4,0x60,0x8F,0xAB,0xAB,0xDE,0xA5,0x65,0x5D,0x43,0x3A,0xD1,0x5E,0xC3,0xFF,0xEA};
  382. u8 key_457B0AF0[16] = {0xE8,0xBE,0x2F,0x06,0xB1,0x05,0x2A,0xB9,0x18,0x18,0x03,0xE3,0xEB,0x64,0x7D,0x26};
  383. u8 key_457B0BF0[16] = {0x7B,0x94,0x72,0x27,0x4C,0xCC,0x54,0x3B,0xAE,0xDF,0x46,0x37,0xAC,0x01,0x4D,0x87};
  384. u8 key_457B0CF0[16] = {0xAC,0x34,0xBA,0xB1,0x97,0x8D,0xAE,0x6F,0xBA,0xE8,0xB1,0xD6,0xDF,0xDF,0xF1,0xA2};
  385. u8 key_457B10F0[16] = {0x71,0x10,0xF0,0xA4,0x16,0x14,0xD5,0x93,0x12,0xFF,0x74,0x96,0xDF,0x1F,0xDA,0x89};
  386. u8 key_457B1EF0[16] = {0xA3,0x5D,0x51,0xE6,0x56,0xC8,0x01,0xCA,0xE3,0x77,0xBF,0xCD,0xFF,0x24,0xDA,0x4D};
  387. u8 key_457B28F0[16] = {0xB1,0xB3,0x7F,0x76,0xC3,0xFB,0x88,0xE6,0xF8,0x60,0xD3,0x35,0x3C,0xA3,0x4E,0xF3};
  388. u8 key_457B80F0[16] = {0xD4,0x35,0x18,0x02,0x29,0x68,0xFB,0xA0,0x6A,0xA9,0xA5,0xED,0x78,0xFD,0x2E,0x9D};
  389. u8 key_457B81F0[16] = {0xAA,0xA1,0xB5,0x7C,0x93,0x5A,0x95,0xBD,0xEF,0x69,0x16,0xFC,0x2B,0x92,0x31,0xDD};
  390. u8 key_457B82F0[16] = {0x87,0x37,0x21,0xCC,0x65,0xAE,0xAA,0x5F,0x40,0xF6,0x6F,0x2A,0x86,0xC7,0xA1,0xC8};
  391. u8 key_457B83F0[16] = {0x77,0x1C,0x06,0x5F,0x53,0xEC,0x3F,0xFC,0x22,0xCE,0x5A,0x27,0xFF,0x78,0xA8,0x48};
  392. u8 key_457B8AF0[16] = {0x47,0xEC,0x60,0x15,0x12,0x2C,0xE3,0xE0,0x4A,0x22,0x6F,0x31,0x9F,0xFA,0x97,0x3E};
  393. u8 key_457B90F0[16] = {0xBA,0x76,0x61,0x47,0x8B,0x55,0xA8,0x72,0x89,0x15,0x79,0x6D,0xD7,0x2F,0x78,0x0E};
  394. u8 key_457B91F0[16] = {0xC5,0x9C,0x77,0x9C,0x41,0x01,0xE4,0x85,0x79,0xC8,0x71,0x63,0xA5,0x7D,0x4F,0xFB};
  395. u8 key_457B92F0[16] = {0x92,0x8C,0xA4,0x12,0xD6,0x5C,0x55,0x31,0x5B,0x94,0x23,0x9B,0x62,0xB3,0xDB,0x47};
  396. u8 key_457B93F0[16] = {0x88,0xAF,0x18,0xE9,0xC3,0xAA,0x6B,0x56,0xF7,0xC5,0xA8,0xBF,0x1A,0x84,0xE9,0xF3};
  397. u8 key_457B9AF0[16] = {0x08,0x57,0xC2,0x49,0x15,0xD6,0x2C,0xDB,0x62,0xBE,0x86,0x6C,0x75,0x19,0xDC,0x4D};
  398.  
  399. u8 key_8B9B05F0[16] = {0xEB,0x3E,0x0B,0xCF,0x30,0xA4,0xF5,0x2A,0xDF,0x48,0xDB,0xAA,0x5A,0xBA,0x72,0xAF};
  400. u8 key_8B9B06F0[16] = {0xBE,0xA2,0xAE,0x72,0x42,0xBD,0x18,0x61,0xFB,0x61,0x23,0x0F,0x82,0xA4,0xF1,0x69};
  401. u8 key_8B9B10F0[16] = {0xDA,0xB5,0x3D,0xF0,0x8F,0x4B,0xA4,0xC6,0xBF,0x96,0x7D,0x0A,0x13,0xF0,0xA1,0x52};
  402. u8 key_8B9B1EF0[16] = {0x08,0xF8,0x9C,0xB2,0xCF,0x97,0x70,0x9F,0x4E,0x1E,0xB6,0x51,0x33,0xCB,0xA1,0x96};
  403. u8 key_8B9B28F0[16] = {0x1A,0x16,0xB2,0x22,0x5A,0xA4,0xF9,0xB3,0x55,0x09,0xDA,0xA9,0xF0,0x4C,0x35,0x28};
  404.  
  405. /* 0x5C INDEX.DAT (encrypted version.txt) */
  406. u8 key_495BE403[16] = {0xE4,0x98,0x8E,0x93,0x5B,0x94,0xAF,0x19,0xEA,0x30,0x6C,0xEA,0x6F,0x1F,0x11,0x59};
  407. u8 key_0B2B05F0[16] = {0xC3,0x1A,0x78,0xC5,0xF5,0xBE,0xC6,0x92,0xF9,0xEF,0x94,0xEA,0x51,0xE5,0x57,0x11};
  408. u8 key_0B2B06F0[16] = {0x96,0x86,0xDD,0x78,0x87,0xA7,0x2B,0xD9,0xDD,0xC6,0x6C,0x4F,0x89,0xFB,0xD4,0xD7};
  409. u8 key_0B2B08F0[16] = {0x27,0xE1,0x31,0xF5,0xF7,0x9B,0xE7,0x88,0xD6,0x8D,0x7C,0x0D,0x99,0x73,0xA1,0x8F};
  410. u8 key_0B2B0AF0[16] = {0x6B,0x3F,0x91,0x58,0xED,0x40,0x68,0x54,0x93,0xD6,0x45,0x3F,0x2C,0xD4,0x23,0x43};
  411. u8 key_0B2B0BF0[16] = {0xF8,0x15,0xCC,0x79,0x10,0x89,0x16,0xD6,0x25,0x11,0x00,0xEB,0x6B,0xB1,0x13,0xE2};
  412. u8 key_0B2B0CF0[16] = {0x2F,0xB5,0x04,0xEF,0xCB,0xC8,0xEC,0x82,0x31,0x26,0xF7,0x0A,0x18,0x6F,0xAF,0xC7};
  413. u8 key_0B2B10F0[16] = {0xF2,0x91,0x4E,0xFA,0x4A,0x51,0x97,0x7E,0x99,0x31,0x32,0x4A,0x18,0xAF,0x84,0xEC};
  414. u8 key_0B2B11F0[16] = {0x1A,0x26,0xFD,0x16,0x32,0x0E,0x71,0xD0,0xDC,0xD1,0x3C,0xE5,0x53,0xD5,0x44,0x99};
  415. u8 key_0B2B12F0[16] = {0xE5,0xB6,0xDC,0x83,0x94,0xD1,0x76,0xEA,0x99,0x2D,0x22,0x16,0xE8,0x03,0xA2,0x03};
  416. u8 key_0B2B1EF0[16] = {0x20,0xDC,0xEF,0xB8,0x0A,0x8D,0x43,0x27,0x68,0xB9,0xF9,0x11,0x38,0x94,0x84,0x28};
  417. u8 key_0B2B1FF0[16] = {0xEF,0x00,0x79,0x32,0xCE,0x70,0x71,0x21,0x06,0x0C,0xA3,0xA0,0x7B,0xA8,0x96,0x53};
  418. u8 key_0B2B28F0[16] = {0x32,0x32,0xC1,0x28,0x9F,0xBE,0xCA,0x0B,0x73,0xAE,0x95,0xE9,0xFB,0x13,0x10,0x96};
  419. u8 key_0B2B80F0[16] = {0x57,0xB4,0xA6,0x5C,0x75,0x2D,0xB9,0x4D,0xE1,0x67,0xE3,0x31,0xBF,0x4D,0x70,0xF8};
  420. u8 key_0B2B81F0[16] = {0x29,0x20,0x0B,0x22,0xCF,0x1F,0xD7,0x50,0x64,0xA7,0x50,0x20,0xEC,0x22,0x6F,0xB8};
  421. u8 key_0B2B82F0[16] = {0x04,0xB6,0x9F,0x92,0x39,0xEB,0xE8,0xB2,0xCB,0x38,0x29,0xF6,0x41,0x77,0xFF,0xAD};
  422. u8 key_0B2B83F0[16] = {0xF4,0x9D,0xB8,0x01,0x0F,0xA9,0x7D,0x11,0xA9,0x00,0x1C,0xFB,0x38,0xC8,0xF6,0x2D};
  423. u8 key_0B2B90F0[16] = {0x39,0xF7,0xDF,0x19,0xD7,0x10,0xEA,0x9F,0x02,0xDB,0x3F,0xB1,0x10,0x9F,0x26,0x6B};
  424. u8 key_0B2B91F0[16] = {0x46,0x1D,0xC9,0xC2,0x1D,0x44,0xA6,0x68,0xF2,0x06,0x37,0xBF,0x62,0xCD,0x11,0x9E};
  425. u8 key_0B2B92F0[16] = {0x11,0x0D,0x1A,0x4C,0x8A,0x19,0x17,0xDC,0xD0,0x5A,0x65,0x47,0xA5,0x03,0x85,0x22};
  426. u8 key_0B2B93F0[16] = {0x0B,0x2E,0xA6,0xB7,0x9F,0xEF,0x29,0xBB,0x7C,0x0B,0xEE,0x63,0xDD,0x34,0xB7,0x96};
  427. u8 key_0B2B9AF0[16] = {0x8B,0xD6,0x7C,0x17,0x49,0x93,0x6E,0x36,0xE9,0x70,0xC0,0xB0,0xB2,0xA9,0x82,0x28};
  428.  
  429. u8 key_5A5C10F0[16] = {0xA6,0x66,0x13,0xD5,0x85,0x9C,0xB9,0x21,0x03,0x8C,0xE5,0xE4,0x0C,0x6D,0xB9,0x50};
  430. u8 key_5A5C1EF0[16] = {0x74,0x2B,0xB2,0x97,0xC5,0x40,0x6D,0x78,0xF2,0x04,0x2E,0xBF,0x2C,0x56,0xB9,0x94};
  431. u8 key_5A5C28F0[16] = {0x66,0xC5,0x9C,0x07,0x50,0x73,0xE4,0x54,0xE9,0x13,0x42,0x47,0xEF,0xD1,0x2D,0x2A};
  432.  
  433. /* 0x5D Game EBOOT.BIN keys */
  434. u8 key_8004FD03[16] = {0xF4,0xAE,0xF4,0xE1,0x86,0xDD,0xD2,0x9C,0x7C,0xC5,0x42,0xA6,0x95,0xA0,0x83,0x88};
  435. u8 key_D91605F0[16] = {0xB8,0x8C,0x45,0x8B,0xB6,0xE7,0x6E,0xB8,0x51,0x59,0xA6,0x53,0x7C,0x5E,0x86,0x31};
  436. u8 key_D91606F0[16] = {0xED,0x10,0xE0,0x36,0xC4,0xFE,0x83,0xF3,0x75,0x70,0x5E,0xF6,0xA4,0x40,0x05,0xF7};
  437. u8 key_D91608F0[16] = {0x5C,0x77,0x0C,0xBB,0xB4,0xC2,0x4F,0xA2,0x7E,0x3B,0x4E,0xB4,0xB4,0xC8,0x70,0xAF};
  438. u8 key_D91609F0[16] = {0xD0,0x36,0x12,0x75,0x80,0x56,0x20,0x43,0xC4,0x30,0x94,0x3E,0x1C,0x75,0xD1,0xBF};
  439. u8 key_D9160AF0[16] = {0x10,0xA9,0xAC,0x16,0xAE,0x19,0xC0,0x7E,0x3B,0x60,0x77,0x86,0x01,0x6F,0xF2,0x63};
  440. u8 key_D9160BF0[16] = {0x83,0x83,0xF1,0x37,0x53,0xD0,0xBE,0xFC,0x8D,0xA7,0x32,0x52,0x46,0x0A,0xC2,0xC2};
  441. u8 key_D91610F0[16] = {0x89,0x07,0x73,0xB4,0x09,0x08,0x3F,0x54,0x31,0x87,0x00,0xF3,0x35,0x14,0x55,0xCC};
  442. u8 key_D91611F0[16] = {0x61,0xB0,0xC0,0x58,0x71,0x57,0xD9,0xFA,0x74,0x67,0x0E,0x5C,0x7E,0x6E,0x95,0xB9};
  443. u8 key_D91612F0[16] = {0x9E,0x20,0xE1,0xCD,0xD7,0x88,0xDE,0xC0,0x31,0x9B,0x10,0xAF,0xC5,0xB8,0x73,0x23};
  444. u8 key_D91613F0[16] = {0xEB,0xFF,0x40,0xD8,0xB4,0x1A,0xE1,0x66,0x91,0x3B,0x8F,0x64,0xB6,0xFC,0xB7,0x12};
  445. u8 key_D91614F0[16] = {0xFD,0xF7,0xB7,0x3C,0x9F,0xD1,0x33,0x95,0x11,0xB8,0xB5,0xBB,0x54,0x23,0x73,0x85};
  446. u8 key_D91615F0[16] = {0xC8,0x03,0xE3,0x44,0x50,0xF1,0xE7,0x2A,0x6A,0x0D,0xC3,0x61,0xB6,0x8E,0x5F,0x51};
  447. u8 key_D91616F0[16] = {0x53,0x03,0xB8,0x6A,0x10,0x19,0x98,0x49,0x1C,0xAF,0x30,0xE4,0x25,0x1B,0x6B,0x28};
  448. u8 key_D91617F0[16] = {0x02,0xFA,0x48,0x73,0x75,0xAF,0xAE,0x0A,0x67,0x89,0x2B,0x95,0x4B,0x09,0x87,0xA3};
  449. u8 key_D91618F0[16] = {0x96,0x96,0x7C,0xC3,0xF7,0x12,0xDA,0x62,0x1B,0xF6,0x9A,0x9A,0x44,0x44,0xBC,0x48};
  450. u8 key_D91619F0[16] = {0xE0,0x32,0xA7,0x08,0x6B,0x2B,0x29,0x2C,0xD1,0x4D,0x5B,0xEE,0xA8,0xC8,0xB4,0xE9};
  451. u8 key_D9161AF0[16] = {0x27,0xE5,0xA7,0x49,0x52,0xE1,0x94,0x67,0x35,0x66,0x91,0x0C,0xE8,0x9A,0x25,0x24};
  452. u8 key_D9161EF0[16] = {0x5B,0x4A,0xD2,0xF6,0x49,0xD4,0xEB,0x0D,0xC0,0x0F,0xCB,0xA8,0x15,0x2F,0x55,0x08};
  453. u8 key_D91620F0[16] = {0x52,0x1C,0xB4,0x5F,0x40,0x3B,0x9A,0xDD,0xAC,0xFC,0xEA,0x92,0xFD,0xDD,0xF5,0x90};
  454. u8 key_D91621F0[16] = {0xD1,0x91,0x2E,0xA6,0x21,0x14,0x29,0x62,0xF6,0xED,0xAE,0xCB,0xDD,0xA3,0xBA,0xFE};
  455. u8 key_D91622F0[16] = {0x59,0x5D,0x78,0x4D,0x21,0xB2,0x01,0x17,0x6C,0x9A,0xB5,0x1B,0xDA,0xB7,0xF9,0xE6};
  456. u8 key_D91623F0[16] = {0xAA,0x45,0xEB,0x4F,0x62,0xFB,0xD1,0x0D,0x71,0xD5,0x62,0xD2,0xF5,0xBF,0xA5,0x2F};
  457. u8 key_D91624F0[16] = {0x61,0xB7,0x26,0xAF,0x8B,0xF1,0x41,0x58,0x83,0x6A,0xC4,0x92,0x12,0xCB,0xB1,0xE9};
  458. u8 key_D91628F0[16] = {0x49,0xA4,0xFC,0x66,0xDC,0xE7,0x62,0x21,0xDB,0x18,0xA7,0x50,0xD6,0xA8,0xC1,0xB6};
  459. u8 key_D91680F0[16] = {0x2C,0x22,0x9B,0x12,0x36,0x74,0x11,0x67,0x49,0xD1,0xD1,0x88,0x92,0xF6,0xA1,0xD8};
  460. u8 key_D91681F0[16] = {0x52,0xB6,0x36,0x6C,0x8C,0x46,0x7F,0x7A,0xCC,0x11,0x62,0x99,0xC1,0x99,0xBE,0x98};
  461. u8 key_D91690F0[16] = {0x42,0x61,0xE2,0x57,0x94,0x49,0x42,0xB5,0xAA,0x6D,0x0D,0x08,0x3D,0x24,0xF7,0x4B};
  462.  
  463. /* 0x5E Gameshare */
  464. u8 key_0A35EA03[16] = {0xF9,0x48,0x38,0x0C,0x96,0x88,0xA7,0x74,0x4F,0x65,0xA0,0x54,0xC2,0x76,0xD9,0xB8};
  465. u8 key_7B0505F0[16] = {0x2D,0x86,0x77,0x3A,0x56,0xA4,0x4F,0xDD,0x3C,0x16,0x71,0x93,0xAA,0x8E,0x11,0x43};
  466. u8 key_7B0506F0[16] = {0x78,0x1A,0xD2,0x87,0x24,0xBD,0xA2,0x96,0x18,0x3F,0x89,0x36,0x72,0x90,0x92,0x85};
  467. u8 key_7B0508F0[16] = {0xC9,0x7D,0x3E,0x0A,0x54,0x81,0x6E,0xC7,0x13,0x74,0x99,0x74,0x62,0x18,0xE7,0xDD};
  468. u8 key_7B0510F0[16] = {0x1C,0x0D,0x41,0x05,0xE9,0x4B,0x1E,0x31,0x5C,0xC8,0xD7,0x33,0xE3,0xC4,0xC2,0xBE};
  469. u8 key_7B051EF0[16] = {0xCE,0x40,0xE0,0x47,0xA9,0x97,0xCA,0x68,0xAD,0x40,0x1C,0x68,0xC3,0xFF,0xC2,0x7A};
  470. u8 key_7B0528F0[16] = {0xDC,0xAE,0xCE,0xD7,0x3C,0xA4,0x43,0x44,0xB6,0x57,0x70,0x90,0x00,0x78,0x56,0xC4};
  471.  
  472. u8 key_EFD205F0[16] = {0xD3,0xF5,0xE8,0x83,0x98,0xD2,0x10,0x38,0x63,0x94,0xBC,0x8B,0xE3,0xA4,0x99,0xDC};
  473. u8 key_EFD206F0[16] = {0x86,0x69,0x4D,0x3E,0xEA,0xCB,0xFD,0x73,0x47,0xBD,0x44,0x2E,0x3B,0xBA,0x1A,0x1A};
  474. u8 key_EFD210F0[16] = {0xE2,0x7E,0xDE,0xBC,0x27,0x3D,0x41,0xD4,0x03,0x4A,0x1A,0x2B,0xAA,0xEE,0x4A,0x21};
  475. u8 key_EFD21EF0[16] = {0x30,0x33,0x7F,0xFE,0x67,0xE1,0x95,0x8D,0xF2,0xC2,0xD1,0x70,0x8A,0xD5,0x4A,0xE5};
  476. u8 key_EFD228F0[16] = {0x22,0xDD,0x51,0x6E,0xF2,0xD2,0x1C,0xA1,0xE9,0xD5,0xBD,0x88,0x49,0x52,0xDE,0x5B};
  477.  
  478. /* 0x5F Updater */
  479. u8 key_6AB7CC03[16] = {0x4B,0x2B,0xCE,0x96,0xC9,0x4A,0x65,0xB0,0x0C,0x32,0x2A,0xC6,0xC3,0x8C,0x73,0x2D};
  480. u8 key_A6E305F0[16] = {0x13,0x2B,0x33,0x61,0x59,0x81,0x47,0xCF,0xD8,0x0F,0x1C,0xE6,0x0E,0xD2,0x43,0x78};
  481. u8 key_A6E306F0[16] = {0x46,0xB7,0x96,0xDC,0x2B,0x98,0xAA,0x84,0xFC,0x26,0xE4,0x43,0xD6,0xCC,0xC0,0xBE};
  482. u8 key_A6E308F0[16] = {0xF7,0xD0,0x7A,0x51,0x5B,0xA4,0x66,0xD5,0xF7,0x6D,0xF4,0x01,0xC6,0x44,0xB5,0xE6};
  483. u8 key_A6E310F0[16] = {0x22,0xA0,0x05,0x5E,0xE6,0x6E,0x16,0x23,0xB8,0xD1,0xBA,0x46,0x47,0x98,0x90,0x85};
  484. u8 key_A6E31EF0[16] = {0xF0,0xED,0xA4,0x1C,0xA6,0xB2,0xC2,0x7A,0x49,0x59,0x71,0x1D,0x67,0xA3,0x90,0x41};
  485. u8 key_A6E328F0[16] = {0xE2,0x03,0x8A,0x8C,0x33,0x81,0x4B,0x56,0x52,0x4E,0x1D,0xE5,0xA4,0x24,0x04,0xFF};
  486.  
  487. /* 0x60 Demo Game keys DATA.PSP */
  488. u8 key_D67B3303[16] = {0xC9,0x03,0x4F,0x3C,0xDD,0x4F,0xE8,0xD0,0x9A,0xDD,0xED,0x74,0x64,0xDC,0x5C,0x35};
  489. u8 key_ADF305F0[16] = {0x12,0x99,0x70,0x5E,0x24,0x07,0x6C,0xD0,0x2D,0x06,0xFE,0x7E,0xB3,0x0C,0x11,0x26};
  490. u8 key_ADF306F0[16] = {0x47,0x05,0xD5,0xE3,0x56,0x1E,0x81,0x9B,0x09,0x2F,0x06,0xDB,0x6B,0x12,0x92,0xE0};
  491. u8 key_ADF308F0[16] = {0xF6,0x62,0x39,0x6E,0x26,0x22,0x4D,0xCA,0x02,0x64,0x16,0x99,0x7B,0x9A,0xE7,0xB8};
  492. u8 key_ADF310F0[16] = {0x23,0x12,0x46,0x61,0x9B,0xE8,0x3D,0x3C,0x4D,0xD8,0x58,0xDE,0xFA,0x46,0xC2,0xDB};
  493. u8 key_ADF31EF0[16] = {0xF1,0x5F,0xE7,0x23,0xDB,0x34,0xE9,0x65,0xBC,0x50,0x93,0x85,0xDA,0x7D,0xC2,0x1F};
  494. u8 key_ADF328F0[16] = {0xE3,0xB1,0xC9,0xB3,0x4E,0x07,0x60,0x49,0xA7,0x47,0xFF,0x7D,0x19,0xFA,0x56,0xA1};
  495.  
  496. /* 0x61 1SEG Comic Reader */
  497. u8 key_D66DF703[16] = {0x22,0x43,0x57,0x68,0x2F,0x41,0xCE,0x65,0x4C,0xA3,0x7C,0xC6,0xC4,0xAC,0xF3,0x60};
  498. u8 key_279D05F0[16] = {0x23,0xDC,0x3B,0xB5,0xA9,0x82,0xD6,0xEA,0x63,0xA3,0x6E,0x2B,0x2B,0xE9,0xE1,0x54};
  499. u8 key_279D06F0[16] = {0x76,0x40,0x9E,0x08,0xDB,0x9B,0x3B,0xA1,0x47,0x8A,0x96,0x8E,0xF3,0xF7,0x62,0x92};
  500. u8 key_279D08F0[16] = {0xC7,0x27,0x72,0x85,0xAB,0xA7,0xF7,0xF0,0x4C,0xC1,0x86,0xCC,0xE3,0x7F,0x17,0xCA};
  501. u8 key_279D10F0[16] = {0x12,0x57,0x0D,0x8A,0x16,0x6D,0x87,0x06,0x03,0x7D,0xC8,0x8B,0x62,0xA3,0x32,0xA9};
  502. u8 key_279D1EF0[16] = {0xC0,0x1A,0xAC,0xC8,0x56,0xB1,0x53,0x5F,0xF2,0xF5,0x03,0xD0,0x42,0x98,0x32,0x6D};
  503. u8 key_279D28F0[16] = {0xD2,0xF4,0x82,0x58,0xC3,0x82,0xDA,0x73,0xE9,0xE2,0x6F,0x28,0x81,0x1F,0xA6,0xD3};
  504.  
  505. /* 0x62 kernel modules & reboot.bin keys */
  506. u8 key_16D59E03[16] = {0xC3,0x24,0x89,0xD3,0x80,0x87,0xB2,0x4E,0x4C,0xD7,0x49,0xE4,0x9D,0x1D,0x34,0xD1};
  507. u8 key_CFEF05F0[16] = {0xCA,0xFB,0xBF,0xC7,0x50,0xEA,0xB4,0x40,0x8E,0x44,0x5C,0x63,0x53,0xCE,0x80,0xB1};
  508. u8 key_CFEF06F0[16] = {0x9F,0x67,0x1A,0x7A,0x22,0xF3,0x59,0x0B,0xAA,0x6D,0xA4,0xC6,0x8B,0xD0,0x03,0x77};
  509. u8 key_CFEF07F0[16] = {0x7B,0xA1,0xE2,0x5A,0x91,0xB9,0xD3,0x13,0x77,0x65,0x4A,0xB7,0xC2,0x8A,0x10,0xAF};
  510. u8 key_CFEF08F0[16] = {0x2E,0x00,0xF6,0xF7,0x52,0xCF,0x95,0x5A,0xA1,0x26,0xB4,0x84,0x9B,0x58,0x76,0x2F};
  511. u8 key_CFEF09F0[16] = {0xA2,0x41,0xE8,0x39,0x66,0x5B,0xFA,0xBB,0x1B,0x2D,0x6E,0x0E,0x33,0xE5,0xD7,0x3F};
  512.  
  513. /* 0x67 1seg ms_application_main.prx */
  514. u8 key_3C2A08F0[16] = {0x1E,0x2E,0x38,0x49,0xDA,0xD4,0x16,0x08,0x27,0x2E,0xF3,0xBC,0x37,0x75,0x80,0x93};
  515. u8 key_3C2A10F0[16] = {0xCB,0x5E,0x47,0x46,0x67,0x1E,0x66,0xFE,0x68,0x92,0xBD,0xFB,0xB6,0xA9,0xA5,0xF0};
  516. u8 key_3C2A1EF0[16] = {0x19,0x13,0xE6,0x04,0x27,0xC2,0xB2,0xA7,0x99,0x1A,0x76,0xA0,0x96,0x92,0xA5,0x34};
  517. u8 key_3C2A28F0[16] = {0x0B,0xFD,0xC8,0x94,0xB2,0xF1,0x3B,0x8B,0x82,0x0D,0x1A,0x58,0x55,0x15,0x31,0x8A};
  518.  
  519. ///* Real tags and keys OK! (0x?? - Unknown scrambler) *///
  520. u8 key_0276EA03[16] = {0x72,0x02,0xFA,0xCD,0x6A,0x1B,0x9E,0x96,0xBF,0x0A,0xED,0x4E,0xB7,0x88,0x45,0x4B};
  521. u8 key_8110A703[16] = {0xF4,0xF1,0x5B,0xD6,0xE5,0x3E,0xD0,0x46,0xA0,0x68,0x61,0x62,0x1E,0x8B,0xA4,0x88};
  522. u8 key_C3650F03[16] = {0x38,0xBD,0xD7,0xC4,0xB1,0x65,0xB9,0xD9,0x34,0xEC,0x5C,0x50,0x37,0x45,0xA1,0x32};
  523.  
  524. /* scePauth NID */
  525. u8 key_4E3A1105[16] = {0x37,0xF9,0xB1,0x58,0xA1,0x4B,0xDA,0xD6,0x72,0x7C,0x53,0x4C,0x79,0x70,0xE9,0x77};
  526.  
  527.  
  528.  
  529. typedef struct
  530. {
  531.     u32 tag;  // 4 byte value at offset 0xD0 in the PRX file
  532.     u8* key; // 16 bytes keys
  533.     u8 code;  // code for scramble
  534.     u8 type;
  535. } TAG_INFO2;
  536.  
  537. static TAG_INFO2 g_tagInfo2[] =
  538. {
  539.     /* scePauth NID */
  540.     { 0x4E3A1105, key_4E3A1105, 0x70 }, //5.00
  541.  
  542.     /* Real tags and keys OK! (0x70 - Unknown scrambler) */
  543.     { 0xC3650F03, key_C3650F03, 0x70 }, //2.60
  544.     { 0x8110A703, key_8110A703, 0x70 }, //2.60
  545.     { 0x0276EA03, key_0276EA03, 0x70 }, //2.60
  546.    
  547.     /* 0x67 1seg ms_application_main.prx */
  548.     { 0x3C2A28F0, key_3C2A28F0, 0x67 }, //5.70 PSPgo
  549.     { 0x3C2A1EF0, key_3C2A1EF0, 0x67 }, //5.00 PSP-3000
  550.     { 0x3C2A10F0, key_3C2A10F0, 0x67 }, //3.60
  551.     { 0x3C2A08F0, key_3C2A08F0, 0x67 }, //3.10
  552.    
  553.     /* 0x62 kernel modules & reboot.bin keys */
  554.     { 0xCFEF09F0, key_CFEF09F0, 0x62 }, //3.10
  555.     { 0xCFEF08F0, key_CFEF08F0, 0x62 }, //3.10
  556.     { 0xCFEF07F0, key_CFEF07F0, 0x62 }, //3.03
  557.     { 0xCFEF06F0, key_CFEF06F0, 0x62 }, //3.00
  558.     { 0xCFEF05F0, key_CFEF05F0, 0x62 }, //2.80
  559.     { 0x16D59E03, key_16D59E03, 0x62 }, //2.60
  560.    
  561.     /* 0x61 1SEG */
  562.     { 0x279D28F0, key_279D28F0, 0x61 }, //5.70 PSPgo
  563.     { 0x279D1EF0, key_279D1EF0, 0x61 }, //5.00 PSP-3000
  564.     { 0x279D10F0, key_279D10F0, 0x61 }, //3.60
  565.     { 0x279D08F0, key_279D08F0, 0x61 }, //3.10 Comic Reader v1.10
  566.     { 0x279D06F0, key_279D06F0, 0x61 }, //3.00
  567.     { 0x279D05F0, key_279D05F0, 0x61 }, //2.80
  568.     { 0xD66DF703, key_D66DF703, 0x61 }, //2.60
  569.    
  570.     /* 0x60 Demo Game keys DATA.PSP */
  571.     { 0xADF328F0, key_ADF328F0, 0x60 }, //5.70 PSPgo
  572.     { 0xADF31EF0, key_ADF31EF0, 0x60 }, //5.00 PSP-3000
  573.     { 0xADF310F0, key_ADF310F0, 0x60 }, //3.60
  574.     { 0xADF308F0, key_ADF308F0, 0x60 }, //3.10
  575.     { 0xADF306F0, key_ADF306F0, 0x60 }, //3.00
  576.     { 0xADF305F0, key_ADF305F0, 0x60 }, //2.80 Sukkiri etc
  577.     { 0xD67B3303, key_D67B3303, 0x60 }, //2.60
  578.    
  579.     /* 0x5F Updater */
  580.     { 0xA6E328F0, key_A6E328F0, 0x5F }, //5.70 PSPgo
  581.     { 0xA6E31EF0, key_A6E31EF0, 0x5F }, //5.00 PSP-3000
  582.     { 0xA6E310F0, key_A6E310F0, 0x5F }, //3.60
  583.     { 0xA6E308F0, key_A6E308F0, 0x5F }, //3.10
  584.     { 0xA6E306F0, key_A6E306F0, 0x5F }, //3.00
  585.     { 0xA6E305F0, key_A6E305F0, 0x5F }, //2.80
  586.     { 0x6AB7CC03, key_6AB7CC03, 0x5F }, //2.60
  587.  
  588.     /* 0x5E Gameshare */
  589.     { 0xEFD228F0, key_EFD228F0, 0x5E }, //5.70 PSPgo
  590.     { 0xEFD21EF0, key_EFD21EF0, 0x5E }, //5.00 PSP-3000
  591.     { 0xEFD210F0, key_EFD210F0, 0x5E }, //3.60
  592.     { 0xEFD206F0, key_EFD206F0, 0x5E }, //3.00
  593.     { 0xEFD205F0, key_EFD205F0, 0x5E }, //2.80
  594.  
  595.     { 0x7B0528F0, key_7B0528F0, 0x5E }, //5.70 PSPgo
  596.     { 0x7B051EF0, key_7B051EF0, 0x5E }, //5.00 PSP-3000
  597.     { 0x7B0510F0, key_7B0510F0, 0x5E }, //3.60
  598.     { 0x7B0508F0, key_7B0508F0, 0x5E }, //3.10
  599.     { 0x7B0506F0, key_7B0506F0, 0x5E }, //3.00
  600.     { 0x7B0505F0, key_7B0505F0, 0x5E }, //2.80
  601.     { 0x0A35EA03, key_0A35EA03, 0x5E }, //2.60, 2.71
  602.    
  603.     /* 0x5D Game EBOOT.BIN keys */
  604.     { 0xD91690F0, key_D91690F0, 0x5D }, //6.60
  605.     { 0xD91681F0, key_D91681F0, 0x5D, 3 }, //6.50?
  606.     { 0xD91680F0, key_D91680F0, 0x5D, 3 }, //6.30
  607.     { 0xD91628F0, key_D91628F0, 0x5D }, //5.70 PSPgo
  608.     { 0xD91624F0, key_D91624F0, 0x5D },
  609.     { 0xD91623F0, key_D91623F0, 0x5D },
  610.     { 0xD91622F0, key_D91622F0, 0x5D },
  611.     { 0xD91621F0, key_D91621F0, 0x5D },
  612.     { 0xD91620F0, key_D91620F0, 0x5D },
  613.     { 0xD9161EF0, key_D9161EF0, 0x5D }, //5.00 PSP-3000
  614.     { 0xD9161AF0, key_D9161AF0, 0x5D },
  615.     { 0xD91619F0, key_D91619F0, 0x5D },
  616.     { 0xD91618F0, key_D91618F0, 0x5D },
  617.     { 0xD91617F0, key_D91617F0, 0x5D },
  618.     { 0xD91616F0, key_D91616F0, 0x5D },
  619.     { 0xD91615F0, key_D91615F0, 0x5D },
  620.     { 0xD91614F0, key_D91614F0, 0x5D },
  621.     { 0xD91613F0, key_D91613F0, 0x5D },
  622.     { 0xD91612F0, key_D91612F0, 0x5D },
  623.     { 0xD91611F0, key_D91611F0, 0x5D }, //6.00
  624.     { 0xD91610F0, key_D91610F0, 0x5D }, //3.60
  625.     { 0xD9160BF0, key_D9160BF0, 0x5D }, //5.55
  626.     { 0xD9160AF0, key_D9160AF0, 0x5D }, //5.05
  627.     { 0xD91609F0, key_D91609F0, 0x5D }, //5.00
  628.     { 0xD91608F0, key_D91608F0, 0x5D }, //3.10
  629.     { 0xD91606F0, key_D91606F0, 0x5D }, //3.00
  630.     { 0xD91605F0, key_D91605F0, 0x5D }, //2.80
  631.     { 0x8004FD03, key_8004FD03, 0x5D }, //2.60
  632.  
  633.     /* 0x5C INDEX.DAT (encrypted version.txt) */
  634.     { 0x5A5C28F0, key_5A5C28F0, 0x5C }, //5.70 PSPgo  
  635.     { 0x5A5C1EF0, key_5A5C1EF0, 0x5C }, //5.00 PSP-3000
  636.     { 0x5A5C10F0, key_5A5C10F0, 0x5C }, //3.60
  637.  
  638.     { 0x0B2B9AF0, key_0B2B9AF0, 0x5C }, //1.6x PSVita
  639.     { 0x0B2B93F0, key_0B2B93F0, 0x5C }, //6.60 PSPgo
  640.     { 0x0B2B92F0, key_0B2B92F0, 0x5C }, //6.60 PSP-3000
  641.     { 0x0B2B91F0, key_0B2B91F0, 0x5C }, //6.60 PSP-2000
  642.     { 0x0B2B90F0, key_0B2B90F0, 0x5C }, //6.60 PSP-1000
  643.     { 0x0B2B83F0, key_0B2B83F0, 0x5C, 3 }, //6.30 PSPgo
  644.     { 0x0B2B82F0, key_0B2B82F0, 0x5C, 3 }, //6.30 PSP-3000 03g, 04g, 07g, 09g
  645.     { 0x0B2B81F0, key_0B2B81F0, 0x5C, 3 }, //6.30 PSP-2000
  646.     { 0x0B2B80F0, key_0B2B80F0, 0x5C, 3 }, //6.30 PSP-1000
  647.     { 0x0B2B28F0, key_0B2B28F0, 0x5C }, //5.70 PSPgo
  648.     { 0x0B2B1FF0, key_0B2B1FF0, 0x5C }, //6.00 PSP-3000 03g, 04g
  649.     { 0x0B2B1EF0, key_0B2B1EF0, 0x5C }, //5.00 PSP-3000
  650.     { 0x0B2B12F0, key_0B2B12F0, 0x5C }, //6.00 PSP-2000
  651.     { 0x0B2B11F0, key_0B2B11F0, 0x5C }, //3.70 PSP-2000
  652.     { 0x0B2B10F0, key_0B2B10F0, 0x5C }, //3.60
  653.     { 0x0B2B0CF0, key_0B2B0CF0, 0x5C }, //6.00 PSP-1000
  654.     { 0x0B2B0BF0, key_0B2B0BF0, 0x5C }, //3.70 PSP-1000
  655.     { 0x0B2B0AF0, key_0B2B0AF0, 0x5C }, //3.30
  656.     { 0x0B2B08F0, key_0B2B08F0, 0x5C }, //3.10
  657.     { 0x0B2B06F0, key_0B2B06F0, 0x5C }, //3.00
  658.     { 0x0B2B05F0, key_0B2B05F0, 0x5C }, //2.80
  659.     { 0x495BE403, key_495BE403, 0x5C }, //2.60
  660.  
  661.     /* 0x5B User modules fw keys */
  662.     { 0x8B9B28F0, key_8B9B28F0, 0x5B }, //5.70 PSPgo
  663.     { 0x8B9B1EF0, key_8B9B1EF0, 0x5B }, //5.00 PSP-3000
  664.     { 0x8B9B10F0, key_8B9B10F0, 0x5B }, //3.60
  665.     { 0x8B9B06F0, key_8B9B06F0, 0x5B }, //3.00
  666.     { 0x8B9B05F0, key_8B9B05F0, 0x5B }, //2.80
  667.  
  668.     { 0x457B9AF0, key_457B9AF0, 0x5B }, //1.6x PSVita
  669.     { 0x457B93F0, key_457B93F0, 0x5B }, //6.60 PSPgo
  670.     { 0x457B92F0, key_457B92F0, 0x5B }, //6.60 PSP-3000
  671.     { 0x457B91F0, key_457B91F0, 0x5B }, //6.60 PSP-2000
  672.     { 0x457B90F0, key_457B90F0, 0x5B }, //6.60 PSP-1000
  673.     { 0x457B8AF0, key_457B8AF0, 0x5B, 3 }, //6.36
  674.     { 0x457B83F0, key_457B83F0, 0x5B, 3 }, //6.30 PSPgo
  675.     { 0x457B82F0, key_457B82F0, 0x5B, 3 }, //6.30 PSP-3000 03g, 04g, 07g, 09g
  676.     { 0x457B81F0, key_457B81F0, 0x5B, 3 }, //6.30 PSP-2000
  677.     { 0x457B80F0, key_457B80F0, 0x5B, 3 }, //6.30 PSP-1000
  678.     { 0x457B28F0, key_457B28F0, 0x5B }, //5.70 PSPgo
  679.     { 0x457B1EF0, key_457B1EF0, 0x5B }, //5.00 PSP-3000 | pops_04g.prx 6.20
  680.     { 0x457B10F0, key_457B10F0, 0x5B }, //3.60
  681.     { 0x457B0CF0, key_457B0CF0, 0x5B }, //6.00
  682.     { 0x457B0BF0, key_457B0BF0, 0x5B }, //5.05
  683.     { 0x457B0AF0, key_457B0AF0, 0x5B }, //3.30
  684.     { 0x457B08F0, key_457B08F0, 0x5B }, //3.10
  685.     { 0x457B06F0, key_457B06F0, 0x5B }, //3.00
  686.     { 0x457B05F0, key_457B05F0, 0x5B }, //2.80
  687.     { 0x76202403, key_76202403, 0x5B }, //2.60
  688.  
  689.     /* 0x5A vshmain.prx keys */
  690.     { 0x628928F0, key_628928F0, 0x5A }, //5.70 PSPgo
  691.     { 0x62891EF0, key_62891EF0, 0x5A }, //5.00 PSP-3000
  692.     { 0x628910F0, key_628910F0, 0x5A }, //3.60
  693.     { 0x628906F0, key_628906F0, 0x5A }, //3.00
  694.     { 0x628905F0, key_628905F0, 0x5A }, //2.80
  695.  
  696.     { 0x38029AF0, key_38029AF0, 0x5A }, //1.6x PSVita
  697.     { 0x380293F0, key_380293F0, 0x5A }, //6.60 PSPgo
  698.     { 0x380292F0, key_380292F0, 0x5A }, //6.60 PSP-3000
  699.     { 0x380291F0, key_380291F0, 0x5A }, //6.60 PSP-2000
  700.     { 0x380290F0, key_380290F0, 0x5A }, //6.60 PSP-1000
  701.     { 0x380283F0, key_380283F0, 0x5A, 3 }, //6.30 PSPgo
  702.     { 0x380282F0, key_380282F0, 0x5A, 3 }, //6.30 PSP-3000 03g, 04g, 07g, 09g
  703.     { 0x380281F0, key_380281F0, 0x5A, 3 }, //6.30 PSP-2000
  704.     { 0x380280F0, key_380280F0, 0x5A, 3 }, //6.30 PSP-1000
  705.     { 0x380228F0, key_380228F0, 0x5A }, //5.70 PSPgo
  706.     { 0x38021EF0, key_38021EF0, 0x5A }, //5.00 PSP-3000
  707.     { 0x380210F0, key_380210F0, 0x5A }, //3.60
  708.     { 0x38020AF0, key_38020AF0, 0x5A }, //3.30-6.20
  709.     { 0x380208F0, key_380208F0, 0x5A }, //3.10
  710.     { 0x380206F0, key_380206F0, 0x5A }, //3.00
  711.     { 0x380205F0, key_380205F0, 0x5A }, //2.80
  712.     { 0x0F037303, key_0F037303, 0x5A }, //2.60
  713.  
  714.     /* 0x59 2.XX [16 byte] */
  715.     { 0x4467415D, key_4467415D, 0x59 }, //2.XX (old_144)
  716.  
  717.     /* 0x52 meimg.img and me_sdimg.img */
  718.     { 0xD13B28F0, key_D13B28F0, 0x52 }, //5.70 PSPgo
  719.     { 0xD13B1EF0, key_D13B1EF0, 0x52 }, //5.00 PSP-3000
  720.     { 0xD13B10F0, key_D13B10F0, 0x52 }, //3.60
  721.     { 0xD13B08F0, key_D13B08F0, 0x52 }, //3.10
  722.     { 0xD13B06F0, key_D13B06F0, 0x52 }, //3.00
  723.     { 0xD13B05F0, key_D13B05F0, 0x52 }, //2.80
  724.     { 0x1B11FD03, key_1B11FD03, 0x52 }, //2.60
  725.  
  726.     /* 0x51 Filetable and IPL pre-decryption keys */
  727.     { 0xD82328F0, key_D82328F0, 0x51 }, //5.70 PSPgo
  728.     { 0xD8231EF0, key_D8231EF0, 0x51 }, //5.00 PSP-3000
  729.     { 0xD82310F0, key_D82310F0, 0x51 }, //3.60
  730.     { 0x63BAB403, key_63BAB403, 0x51 }, //2.60
  731.  
  732.     /* 0x49 */
  733.     { 0xE42C2303, key_E42C2303, 0x49 }, //2.60
  734.  
  735.     /* 0x43 Kernel modules fw keys */
  736.     { 0x4C949CF0, key_4C949CF0, 0x43 }, //2.10 psvita
  737.     { 0x4C949BF0, key_4C949BF0, 0x43 }, //2.02 psvita
  738.     { 0x4C949AF0, key_4C949AF0, 0x43 }, //1.6x PSVita
  739.     { 0x4C9497F0, key_4C9497F0, 0x43 }, //6.60 PSPgo
  740.     { 0x4C9496F0, key_4C9496F0, 0x43 }, //6.60 PSP-3000
  741.     { 0x4C9495F0, key_4C9495F0, 0x43 }, //6.60 PSP-2000
  742.     { 0x4C9494F0, key_4C9494F0, 0x43 }, //6.60 PSP-1000
  743.     { 0x4C9493F0, key_4C9493F0, 0x43 }, //6.50 ?
  744.     { 0x4C9492F0, key_4C9492F0, 0x43 }, //6.50 ?
  745.     { 0x4C9491F0, key_4C9491F0, 0x43 }, //6.50 ?
  746.     { 0x4C9490F0, key_4C9490F0, 0x43 }, //6.50 ? lib, np, net
  747.     { 0x4C948DF0, key_4C948DF0, 0x43, 3 }, //6.37 PSPgo
  748.     { 0x4C948CF0, key_4C948CF0, 0x43, 3 }, //6.36 PSP-3000 03g, 04g, 07g, 09g
  749.     { 0x4C948BF0, key_4C948BF0, 0x43, 3 }, //6.36 PSP-2000
  750.     { 0x4C948AF0, key_4C948AF0, 0x43, 3 }, //6.36 PSP-1000
  751.     { 0x4C9487F0, key_4C9487F0, 0x43, 3 }, //6.30 PSPgo
  752.     { 0x4C9486F0, key_4C9486F0, 0x43, 3 }, //6.30 PSP-3000 03g, 04g, 07g, 09g
  753.     { 0x4C9485F0, key_4C9485F0, 0x43, 3 }, //6.30 PSP-2000
  754.     { 0x4C9484F0, key_4C9484F0, 0x43, 3 }, //6.30 PSP-1000
  755.     { 0x4C9480F0, key_4C9480F0, 0x43, 3 }, //6.30 keys630_k0 zecoxao
  756.     { 0x4C942AF0, key_4C942AF0, 0x43 }, //PSPgo 6.XX
  757.     { 0x4C9429F0, key_4C9429F0, 0x43 }, //5.70 PSPgo
  758.     { 0x4C9428F0, key_4C9428F0, 0x43 }, //5.70 PSP-3000 03g, 04g
  759.     { 0x4C9422F0, key_4C9422F0, 0x43 }, //6.00 PSP-3000 03g, 04g
  760.     { 0x4C9421F0, key_4C9421F0, 0x43 }, //5.55/5.70 PSP-3000 FAKE
  761.     { 0x4C9420F0, key_4C9420F0, 0x43 }, //5.05 PSP-3000 FAKE
  762.     { 0x4C941FF0, key_4C941FF0, 0x43 }, //5.00 PSP-3000
  763.     { 0x4C941EF0, key_4C941EF0, 0x43 }, //PSP-3000
  764.     { 0x4C941DF0, key_4C941DF0, 0x43 }, //6.00 PSP-2000
  765.     { 0x4C941CF0, key_4C941CF0, 0x43 }, //6.00 PSP-1000
  766.     { 0x4C941BF0, key_4C941BF0, 0x43 }, //5.55 PSP-2000 FAKE
  767.     { 0x4C941AF0, key_4C941AF0, 0x43 }, //5.55 PSP-1000 keys555_k1 0x43 zecoxao
  768.     { 0x4C9419F0, key_4C9419F0, 0x43 }, //5.05 PSP-2000
  769.     { 0x4C9418F0, key_4C9418F0, 0x43 }, //5.05 PSP-1000
  770.     { 0x4C9417F0, key_4C9417F0, 0x43 }, //5.00 PSP-2000
  771.     { 0x4C9416F0, key_4C9416F0, 0x43 }, //5.00 PSP-1000
  772.     { 0x4C9415F0, key_4C9415F0, 0x43 }, //3.95 PSP-2000
  773.     { 0x4C9414F0, key_4C9414F0, 0x43 }, //3.95 PSP-1000
  774.     { 0x4C9413F0, key_4C9413F0, 0x43 }, //3.70 PSP-2000
  775.     { 0x4C9412F0, key_4C9412F0, 0x43 }, //3.70 PSP-1000
  776.     { 0x4C9410F0, key_4C9410F0, 0x43 }, //3.60 PSP-2000
  777.     { 0x4C940FF0, key_4C940FF0, 0x43 }, //???
  778.     { 0x4C940DF0, key_4C940DF0, 0x43 }, //3.60 PSP-1000
  779.     { 0x4C940CF0, key_4C940CF0, 0x43 }, //3.30 stdio.prx
  780.     { 0x4C940BF0, key_4C940BF0, 0x43 }, //3.30 kernel modules
  781.     { 0x4C940AF0, key_4C940AF0, 0x43 }, //3.30 reboot.bin
  782.     { 0x01000000, key_01000000, 0x43 }, //1.x PRXs (old_144)
  783.  
  784.     /* 0x42 1.x PRXs [16 byte] */
  785.     { 0x00000000, key_00000000, 0x42 }, //1.x PRXs (old_144)
  786. };
  787.  
  788.  
  789. //////////Decryption Cipher//////////
  790.  
  791. /* 0x6A f5psp.sprx */
  792. u8 key_40780AF0[16] = {0x9E,0x26,0xFC,0xCE,0x2A,0xB6,0xC0,0x00,0x7B,0xF9,0x76,0xEE,0xC3,0xB9,0xEE,0x1A};
  793. u8 xor_40780AF0[16] = {0x84,0x7B,0xF5,0xFE,0xE8,0x4D,0xAD,0x7A,0xB5,0x06,0x28,0x0E,0x09,0xFA,0x81,0xE1};
  794.  
  795. u8 key_407810F0[16] = {0xAF,0xAD,0xCA,0xF1,0x95,0x59,0x91,0xEC,0x1B,0x27,0xD0,0x4E,0x8A,0xF3,0x3D,0xE7};
  796. u8 xor_407810F0[16] = {0x84,0x7B,0xF5,0xFE,0xE8,0x4D,0xAD,0x7A,0xB5,0x06,0x28,0x0E,0x09,0xFA,0x81,0xE1};
  797.  
  798.  
  799. /* 0x48 UMD EBOOT.BIN (OPNSSMP.BIN) */
  800. u8 key_2E5E0AF0[16] = {0xAC,0xD7,0x6D,0x90,0x33,0x37,0x38,0x92,0x31,0x41,0xD6,0x36,0xAF,0x9F,0x17,0x15};
  801. u8 xor_2E5E0AF0[16] = {0x69,0xBA,0x55,0x34,0xF0,0xC0,0xD6,0x71,0xE3,0x1F,0xDB,0x97,0xE0,0x7C,0xD2,0x2A};
  802.  
  803. u8 key_2E5E10F0[16] = {0x9D,0x5C,0x5B,0xAF,0x8C,0xD8,0x69,0x7E,0x51,0x9F,0x70,0x96,0xE6,0xD5,0xC4,0xE8};
  804. u8 xor_2E5E10F0[16] = {0x69,0xBA,0x55,0x34,0xF0,0xC0,0xD6,0x71,0xE3,0x1F,0xDB,0x97,0xE0,0x7C,0xD2,0x2A};
  805.  
  806. u8 key_2E5E11F0[16] = {0x75,0xEB,0xE8,0x43,0xF4,0x87,0x8F,0xD0,0x14,0x7F,0x7E,0x39,0xAD,0xAF,0x04,0x9D};
  807. u8 xor_2E5E11F0[16] = {OPNSSMP.BIN};
  808.  
  809. u8 key_2E5E12F0[16] = {0x8A,0x7B,0xC9,0xD6,0x52,0x58,0x88,0xEA,0x51,0x83,0x60,0xCA,0x16,0x79,0xE2,0x07};
  810. u8 xor_2E5E12F0[16] = {OPNSSMP.BIN};
  811.  
  812. u8 key_2E5E13F0[16] = {0xFF,0xA4,0x68,0xC3,0x31,0xCA,0xB7,0x4C,0xF1,0x23,0xFF,0x01,0x65,0x3D,0x26,0x36};
  813. u8 xor_2E5E13F0[16] = {OPNSSMP.BIN};
  814.  
  815. u8 key_2E5E80F0[16] = {0x0F,0x74,0xAF,0x43,0x75,0xCD,0xDA,0x39,0x81,0x56,0xD9,0x61,0x3E,0x16,0xC8,0x92};
  816. u8 xor_2E5E80F0[16] = {OPNSSMP.BIN};
  817.  
  818. u8 key_2E5E90F0[16] = {0x67,0xE4,0x8F,0x4C,0x08,0xA0,0x7D,0xB1,0x5F,0x51,0xA7,0x72,0x98,0xA8,0x2D,0x7E};
  819. u8 xor_2E5E90F0[16] = {OPNSSMP.BIN};
  820.  
  821.  
  822. /* 0x47 Unknown keys */
  823. u8 key_2FD30BF0[16] = {0xD8,0x58,0x79,0xF9,0xA4,0x22,0xAF,0x86,0x90,0xAC,0xDA,0x45,0xCE,0x60,0x40,0x3F};
  824. u8 xor_2FD30BF0[16] = {0xA9,0x1E,0xDD,0x7B,0x09,0xBB,0x22,0xB5,0x9D,0xA3,0x30,0x69,0x13,0x6E,0x0E,0xD8};
  825.  
  826. u8 key_2FD310F0[16] = {0xD2,0xDC,0xFB,0x7A,0xFE,0xFA,0x2E,0x2E,0x2C,0x8C,0xE8,0xE4,0xBD,0x7E,0xD7,0x31};
  827. u8 xor_2FD310F0[16] = {0xA9,0x1E,0xDD,0x7B,0x09,0xBB,0x22,0xB5,0x9D,0xA3,0x30,0x69,0x13,0x6E,0x0E,0xD8};
  828.  
  829. u8 key_2FD311F0[16] = {0x3A,0x6B,0x48,0x96,0x86,0xA5,0xC8,0x80,0x69,0x6C,0xE6,0x4B,0xF6,0x04,0x17,0x44};
  830. u8 xor_2FD311F0[16] = {0xA9,0x1E,0xDD,0x7B,0x09,0xBB,0x22,0xB5,0x9D,0xA3,0x30,0x69,0x13,0x6E,0x0E,0xD8};
  831.  
  832. u8 key_2FD312F0[16] = {0xC5,0xFB,0x69,0x03,0x20,0x7A,0xCF,0xBA,0x2C,0x90,0xF8,0xB8,0x4D,0xD2,0xF1,0xDE};
  833. u8 xor_2FD312F0[16] = {0xA9,0x1E,0xDD,0x7B,0x09,0xBB,0x22,0xB5,0x9D,0xA3,0x30,0x69,0x13,0x6E,0x0E,0xD8};
  834.  
  835. u8 key_2FD313F0[16] = {0xB0,0x24,0xC8,0x16,0x43,0xE8,0xF0,0x1C,0x8C,0x30,0x67,0x73,0x3E,0x96,0x35,0xEF};
  836. u8 xor_2FD313F0[16] = {0xA9,0x1E,0xDD,0x7B,0x09,0xBB,0x22,0xB5,0x9D,0xA3,0x30,0x69,0x13,0x6E,0x0E,0xD8};
  837.  
  838.  
  839. /* ??? */
  840. u8 key_89742B04[16] = {0xD7,0xEB,0xC9,0x24,0x7E,0x23,0x3D,0x89,0x46,0xE7,0x2E,0x47,0xAD,0xDB,0x0D,0x09};
  841. u8 xor_89742B04[16] = {0xFF,0x5E,0xF1,0xE9,0xB1,0xC9,0x3E,0xC5,0xDB,0xE0,0x67,0x82,0x95,0x3A,0x8E,0xA5};
  842.  
  843.  
  844. /* 0x40 DRM keys */
  845. u8 key_E92405F0[16] = {0x9E,0x5B,0x08,0x0F,0xAB,0x84,0x40,0x7E,0x52,0x43,0x0D,0x41,0x28,0xDF,0x3A,0x27};
  846. u8 xor_E92405F0[16] = {0x79,0xB7,0xDE,0xA9,0xAD,0x67,0x41,0x19,0x94,0x9A,0xC3,0x54,0xDD,0xD4,0x89,0x03};
  847.  
  848. u8 key_E92406F0[16] = {0x0A,0x3B,0x71,0x28,0x2A,0x78,0xE7,0x62,0xB1,0x1A,0x7F,0x13,0x92,0x67,0xA1,0xCC};
  849. u8 xor_E92406F0[16] = {0xE7,0xFD,0xE0,0x41,0xBA,0x70,0x21,0x61,0xB0,0x2C,0x92,0xFB,0x10,0x52,0xDE,0x0C};
  850.  
  851. u8 key_E92408F0[16] = {0x24,0x84,0xBE,0x35,0xF0,0xC5,0x91,0xA3,0x3D,0xA5,0x94,0x12,0x8F,0xD0,0x4C,0x01};
  852. u8 xor_E92408F0[16] = {0x2A,0x1B,0xF2,0xD5,0x11,0xF8,0x93,0x04,0x9B,0xF7,0xB1,0x7F,0xC7,0x8F,0x6A,0x11};
  853.  
  854. u8 key_E92410F0[16] = {0x71,0xBE,0x93,0xCD,0x96,0x65,0xBC,0x57,0xF6,0xE5,0xE9,0xD7,0x1C,0x6A,0xD5,0xAA};
  855. u8 xor_E92410F0[16] = {0x36,0xEF,0x82,0x4E,0x74,0xFB,0x17,0x5B,0x14,0x14,0x05,0xF3,0xB3,0x8A,0x76,0x18};
  856.  
  857. u8 key_E9241EF0[16] = {0xEF,0x4A,0x8E,0x6B,0x24,0x1A,0xD5,0xDC,0xE0,0xE5,0x9D,0xAD,0xE6,0x7F,0xBD,0x0E};
  858. u8 xor_E9241EF0[16] = {0x02,0x99,0xCE,0xA6,0x38,0x38,0x32,0x84,0x0E,0xCF,0x86,0x6B,0xB4,0xEE,0x3C,0x77};
  859.  
  860. u8 key_E92428F0[16] = {0xAA,0x14,0x26,0xB4,0x4C,0xB9,0xF4,0x58,0xC1,0x6F,0xCD,0x42,0x70,0x2E,0x12,0x6A};
  861. u8 xor_E92428F0[16] = {0xCB,0x81,0xEE,0x3B,0xDC,0x87,0x1E,0xA1,0xC8,0x14,0xB8,0xFF,0x92,0x3F,0xB7,0xC0};
  862.  
  863.  
  864. /* ??? */
  865. u8 key_F5F12304[16] = {0xC0,0xF0,0x2D,0x65,0xC6,0xA6,0x56,0x9B,0xB8,0xE8,0x0E,0x82,0x3B,0x56,0xE2,0xA9};
  866. u8 xor_F5F12304[16] = {0x21,0xEA,0xBE,0x48,0x63,0xDE,0x22,0x4B,0x3A,0xDB,0x81,0x53,0x30,0x03,0x54,0x92};
  867.  
  868.  
  869. /* ??? */
  870. u8 key_692805F0[16] = {0x74,0xF0,0x3E,0xBD,0x44,0x18,0xC1,0xD5,0xE4,0xBA,0x64,0x84,0x98,0x72,0xAC,0xFA};
  871. u8 xor_692805F0[16] = {0x9E,0x4F,0xAA,0xC4,0x05,0xA0,0x8F,0xB3,0xA7,0x5C,0xF8,0x1F,0x53,0xB1,0xB2,0xB2};
  872.  
  873. u8 key_692806F0[16] = {0xD0,0xC1,0x82,0xB5,0xFD,0x59,0x9C,0xBD,0xCC,0x3C,0x8E,0xFB,0xCF,0x34,0xBA,0xD2};
  874. u8 xor_692806F0[16] = {0x3E,0xF9,0x88,0xD0,0x42,0xEF,0x06,0x4A,0x03,0x07,0x62,0x78,0x51,0x9B,0xC8,0xC2};
  875.  
  876. u8 key_692808F0[16] = {0x77,0x66,0xAD,0xF8,0x69,0x1D,0x04,0x6A,0x37,0xFE,0x46,0x4C,0xEB,0xE2,0x4C,0xDC};
  877. u8 xor_692808F0[16] = {0xB6,0x67,0x15,0x92,0x49,0x3D,0x4D,0x8A,0x21,0xE2,0xF9,0x0B,0x7E,0x24,0x64,0xF3};
  878.  
  879. u8 key_692810F0[16] = {0xB8,0xE7,0xAC,0xEE,0x3F,0x50,0xB9,0xA0,0x66,0xC8,0xBD,0x5E,0x21,0x53,0xF1,0xD5};
  880. u8 xor_692810F0[16] = {0x21,0x52,0x5D,0x76,0xF6,0x81,0x0F,0x15,0x2F,0x4A,0x40,0x89,0x63,0xA0,0x10,0x55};
  881.  
  882. u8 key_69281EF0[16] = {0x05,0x94,0x7F,0xE2,0x80,0x5C,0x7E,0xAB,0x03,0x66,0x40,0x85,0x3C,0xD1,0x2C,0xFA};
  883. u8 xor_69281EF0[16] = {0x10,0xCD,0x0D,0xD5,0x25,0xC6,0x28,0x87,0x34,0xC6,0x0E,0xBE,0x6D,0xE7,0x19,0x7D};
  884.  
  885. u8 key_692828F0[16] = {0x49,0x85,0x86,0x1E,0xB9,0x99,0xBD,0xA5,0x92,0xE9,0xF9,0xD1,0x26,0x43,0x7E,0xB5};
  886. u8 xor_692828F0[16] = {0x88,0xD5,0x04,0xD5,0xF8,0x27,0x24,0x13,0x62,0x4B,0xBB,0x16,0x44,0x1E,0x43,0x50};
  887.  
  888.  
  889. /* PSX-PSN Games */
  890. u8 key_0DAA06F0[16] = {0xCA,0x26,0x7D,0xA2,0xB9,0xCE,0x24,0x6E,0xFD,0x32,0xA8,0x97,0xF4,0x7C,0x19,0x19};
  891. u8 xor_0DAA06F0[16] = {0x77,0x32,0x20,0x31,0xDF,0x7F,0x4B,0x1C,0x8D,0xD7,0xD2,0xC3,0x23,0xA9,0xF8,0xA9};
  892.  
  893. u8 key_0DAA10F0[16] = {0xA9,0x81,0x71,0x9D,0x92,0x2D,0xCC,0xEE,0x44,0x1C,0x0E,0x37,0x7A,0xF6,0xE2,0x3E};
  894. u8 xor_0DAA10F0[16] = {0xD3,0x43,0xA8,0x49,0x79,0x61,0x82,0x63,0x40,0xBF,0xA3,0xEF,0xB0,0x99,0xED,0x48};
  895.  
  896. u8 key_0DAA1EF0[16] = {0x1C,0x3B,0xD7,0xA4,0xA6,0x41,0x62,0x98,0xA7,0xDF,0x5B,0x16,0xDA,0x53,0x62,0xF1};
  897. u8 xor_0DAA1EF0[16] = {0x87,0x66,0x42,0x6E,0x6D,0xB8,0xC6,0x28,0x10,0x7F,0xFD,0xBD,0x10,0x7E,0x7E,0x31};
  898.  
  899. u8 key_0DAA28F0[16] = {0x81,0x79,0xDB,0x6B,0xC1,0x04,0x71,0xE7,0x64,0x90,0xAA,0x71,0xC2,0x94,0x92,0x76};
  900. u8 xor_0DAA28F0[16] = {0x3C,0x8B,0xAB,0xB0,0x07,0x92,0xAC,0x1B,0x2B,0xCF,0x10,0xAA,0xBD,0x9F,0x5B,0xD8};
  901.  
  902.  
  903. /* ??? */
  904. u8 key_E1ED06F0[16] = {0x2D,0xB6,0x4D,0x66,0xCB,0xA3,0x8E,0x4D,0x13,0x6F,0xB1,0x63,0x4C,0xCC,0x21,0xF2};
  905. u8 xor_E1ED06F0[16] = {0xA5,0xAC,0x61,0x8A,0x6B,0xD2,0x4A,0xC4,0x96,0x75,0x3B,0x5A,0x8C,0xF6,0x46,0x2F};
  906.  
  907. u8 key_E1ED10F0[16] = {0x2A,0xCE,0x63,0xF9,0xA7,0x93,0x2A,0x6B,0xF1,0xDB,0x41,0x70,0x21,0xB7,0x21,0x77};
  908. u8 xor_E1ED10F0[16] = {0xE8,0x21,0xA6,0x81,0xBC,0xC8,0x4A,0x09,0x88,0x92,0x78,0x65,0x3A,0x3B,0x3C,0x4E};
  909.  
  910. u8 key_E1ED1EF0[16] = {0x50,0xAC,0x80,0x31,0x36,0x27,0xCE,0x39,0x43,0xDA,0xC7,0x77,0x6A,0x1F,0x8B,0x1D};
  911. u8 xor_E1ED1EF0[16] = {0x0A,0x97,0x2A,0x3C,0xAD,0x20,0x09,0xAC,0xB0,0x72,0xB8,0xBF,0x1A,0x01,0x42,0x8B};
  912.  
  913. u8 key_E1ED28F0[16] = {0xF2,0x1A,0x92,0x0C,0x33,0xC2,0x5C,0xFF,0x30,0x73,0xF6,0x94,0x50,0xAD,0x33,0x34};
  914. u8 xor_E1ED28F0[16] = {0xE2,0x04,0x7A,0xE7,0x51,0x69,0xE2,0xF5,0xC5,0x94,0xDF,0xC9,0x18,0x90,0x43,0xC8};
  915.  
  916.  
  917. /* 0x70 - Unknown scrambler */
  918. u8 key_EB6984AC[16] = {0x19,0x51,0xEE,0xE3,0xFD,0x5D,0x93,0xF8,0xAB,0x97,0x47,0x56,0x00,0x77,0x3A,0x39};
  919. u8 xor_EB6984AC[16] = {0x2A,0xFC,0x47,0x6D,0x16,0x3D,0x43,0x7E,0xEF,0xEF,0xC3,0x50,0x2E,0x2C,0x67,0x81};
  920.  
  921.  
  922. /* 0x70 - Unknown scrambler */
  923. u8 key_80B60DB2[16] = {0x7D,0x99,0xEB,0x04,0x5F,0xC3,0x37,0xB0,0xF5,0x44,0x2F,0xEF,0xDE,0x1F,0x9A,0x4A};
  924. u8 xor_80B60DB2[16] = {0x01,0x8A,0x2E,0xBF,0x82,0x4A,0x74,0x95,0x71,0x1F,0xF2,0x29,0xCB,0x23,0xC2,0x6D};
  925.  
  926.  
  927. typedef struct
  928. {
  929.     u32 tag;  // 4 byte value at offset 0xD0 in the PRX file
  930.     u8* key; // 16 bytes keys
  931.     u8 code;  // code for scramble
  932.     u8 type;
  933. } TAG_INFO2;
  934.  
  935. static TAG_INFO2 g_tagInfo2[] =
  936. {
  937.     /* 0x70 - Unknown scrambler */
  938.     { 0x80B60DB2, key_80B60DB2, xor_80B60DB2, 0x70, 5}, //[32]6.00
  939.  
  940.     /* 0x70 - Unknown scrambler */
  941.     { 0xEB6984AC, key_EB6984AC, xor_EB6984AC, 0x70, 5}, //[32]6.00
  942.  
  943.     /* 0x70 - Unknown scrambler */
  944.     { 0xE1ED28F0, key_E1ED28F0, xor_E1ED28F0, 0x70, 5}, //[32]5.70 PSPgo
  945.     { 0xE1ED1EF0, key_E1ED1EF0, xor_E1ED1EF0, 0x70, 5}, //[32]5.00 PSP-3000
  946.     { 0xE1ED10F0, key_E1ED10F0, xor_E1ED10F0, 0x70, 5}, //[32]3.60 PSP-2000
  947.     { 0xE1ED06F0, key_E1ED06F0, xor_E1ED06F0, 0x70, 5}, //[32]3.00
  948.  
  949.     /* PSX-PSN Games ?0x5D? */
  950.     { 0x0DAA28F0, key_0DAA28F0, xor_0DAA28F0, 0x5D, 5}, //[32]5.70 PSPgo
  951.     { 0x0DAA1EF0, key_0DAA1EF0, xor_0DAA1EF0, 0x5D, 5}, //[32]5.00 PSP-3000
  952.     { 0x0DAA10F0, key_0DAA10F0, xor_0DAA10F0, 0x5D, 5}, //[32]3.60 PSP-2000
  953.     { 0x0DAA06F0, key_0DAA06F0, xor_0DAA06F0, 0x5D, 5}, //[32]3.00 Super Mario Bros 2,3
  954.  
  955.     /* 0x70 - Unknown scrambler */
  956.     { 0x692828F0, key_692828F0, xor_692828F0, 0x70, 5}, //[32]5.70 PSPgo
  957.     { 0x69281EF0, key_69281EF0, xor_69281EF0, 0x70, 5}, //[32]5.00 PSP-3000
  958.     { 0x692810F0, key_692810F0, xor_692810F0, 0x70, 5}, //[32]3.60 PSP-2000
  959.     { 0x692808F0, key_692808F0, xor_692808F0, 0x70, 5}, //[32]3.10
  960.     { 0x692806F0, key_692806F0, xor_692806F0, 0x70, 5}, //[32]3.00
  961.     { 0x692805F0, key_692805F0, xor_692805F0, 0x70, 5}, //[32]2.80
  962.  
  963.     /* Known TAGs - Unknown scrambler) */
  964.     { 0xF5F12304, key_F5F12304, xor_F5F12304, 0x70, 5}, //[32]2.70
  965.  
  966.     /* 0x40 DRM keys */
  967.     { 0xE92428F0, key_E92428F0, xor_E92428F0, 0x40, 5}, //[32]5.70 PSPgo
  968.     { 0xE9241EF0, key_E9241EF0, xor_E9241EF0, 0x40, 5}, //[32]5.00 PSP-3000
  969.     { 0xE92410F0, key_E92410F0, xor_E92410F0, 0x40, 5}, //[32]3.60 PSP-2000
  970.     { 0xE92408F0, key_E92408F0, xor_E92408F0, 0x40, 5}, //[32]3.10
  971.     { 0xE92406F0, key_E92406F0, xor_E92406F0, 0x40, 5}, //[32]3.00
  972.     { 0xE92405F0, key_E92405F0, xor_E92405F0, 0x40, 5}, //[32]2.80
  973.  
  974.     /* 0x70 - Unknown scrambler */
  975.     { 0x89742B04, key_89742B04, xor_89742B04, 0x70, 5}, //[32]2.70
  976.  
  977.     /* 0x47 Unknown keys */
  978.     { 0x2FD313F0, key_2FD313F0, xor_2FD313F0, 0x47, 5}, //[32]6.36
  979.     { 0x2FD312F0, key_2FD312F0, xor_2FD312F0, 0x47, 5}, //[32]5.70 PSPgo
  980.     { 0x2FD311F0, key_2FD311F0, xor_2FD311F0, 0x47, 5}, //[32]5.05
  981.     { 0x2FD310F0, key_2FD310F0, xor_2FD310F0, 0x47, 5}, //[32]5.00
  982.     { 0x2FD30BF0, key_2FD30BF0, xor_2FD30BF0, 0x47, 5}, //[32]6.20
  983.  
  984.     /* 0x48 UMD EBOOT.BIN (OPNSSMP.BIN) */
  985.     { 0x2E5E90F0, key_2E5E90F0, 0x48 }, //[32]
  986.     { 0x2E5E80F0, key_2E5E80F0, 0x48 }, //[32]6.30
  987.     { 0x2E5E13F0, key_2E5E13F0, 0x48 }, //[32]
  988.     { 0x2E5E12F0, key_2E5E12F0, xor_2E5E12F0, 0x48, 5}, //[32]
  989.     { 0x2E5E11F0, key_2E5E11F0, xor_2E5E11F0, 0x48, 5}, //[32]6.00
  990.     { 0x2E5E10F0, key_2E5E10F0, xor_2E5E10F0, 0x48, 5}, //[32]5.00 PSP-2000 (Game PSN Update 2 LBP)
  991.     { 0x2E5E0AF0, key_2E5E0AF0, xor_2E5E0AF0, 0x48, 5}, //[32]6.20
  992.  
  993.     /* 0x6A Unknown keys */
  994.     { 0x407810F0, key_407810F0, xor_407810F0, 0x6A, 5}, //[32]3.80 f5psp.sprx
  995.     { 0x40780AF0, key_40780AF0, xor_40780AF0, 0x6A, 5}, //[32]5.02 Jig Stick //6.20
  996. };
  997.  
  998.  
  999. ///// KIRK ENGINE /////
  1000.  
  1001. // ECDSA param of kirk1
  1002. ECDSA_PARAM ecdsa_kirk1 = {
  1003.     .p  = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
  1004.     .a  = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFC},
  1005.     .b  = {0x65,0xD1,0x48,0x8C,0x03,0x59,0xE2,0x34,0xAD,0xC9,0x5B,0xD3,0x90,0x80,0x14,0xBD,0x91,0xA5,0x25,0xF9},
  1006.     .N  = {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x01,0xb5,0xc6,0x17,0xf2,0x90,0xea,0xe1,0xdb,0xad,0x8f},
  1007.     .Gx = {0x22,0x59,0xAC,0xEE,0x15,0x48,0x9C,0xB0,0x96,0xA8,0x82,0xF0,0xAE,0x1C,0xF9,0xFD,0x8E,0xE5,0xF8,0xFA},
  1008.     .Gy = {0x60,0x43,0x58,0x45,0x6D,0x0A,0x1C,0xB2,0x90,0x8D,0xE9,0x0F,0x27,0xD7,0x5C,0x82,0xBE,0xC1,0x08,0xC0},
  1009. };
  1010.  
  1011. // ECDSA private key of kirk1
  1012. u8 priv_key_kirk1[20]  = {0xF3,0x92,0xE2,0x64,0x90,0xB8,0x0F,0xD8,0x89,0xF2,0xD9,0x72,0x2C,0x1F,0x34,0xD7,0x27,0x4F,0x98,0x3D};
  1013.  
  1014. // ECDSA public key of kirk1
  1015. u8 pub_key_kirk1_x[20] = {0xED,0x9C,0xE5,0x82,0x34,0xE6,0x1A,0x53,0xC6,0x85,0xD6,0x4D,0x51,0xD0,0x23,0x6B,0xC3,0xB5,0xD4,0xB9 };
  1016. u8 pub_key_kirk1_y[20] = {0x04,0x9D,0xF1,0xA0,0x75,0xC0,0xE0,0x4F,0xB3,0x44,0x85,0x8B,0x61,0xB7,0x9B,0x69,0xA6,0x3D,0x2C,0x39 };
  1017.  
  1018.  
  1019. u8 kirk1_ec_m_header[20] = {0x7D,0x7E,0x46,0x85,0x4D,0x07,0xFA,0x0B,0xC6,0xE8,0xED,0x62,0x99,0x89,0x26,0x14,0x39,0x5F,0xEA,0xFC};
  1020. u8 kirk1_ec_r_header[20] = {0x66,0x4f,0xe1,0xf2,0xe9,0xd6,0x63,0x36,0xf7,0x33,0x0b,0xca,0xb9,0x55,0x6d,0xb6,0xeb,0xe8,0x05,0xdc};
  1021.  
  1022. u8 kirk1_ec_m_data[20] = {0x15,0xee,0x16,0x24,0x12,0x09,0x58,0x16,0x0f,0x8b,0x1a,0x21,0x33,0x7a,0x38,0xf8,0x29,0xf7,0x2e,0x58};
  1023. u8 kirk1_ec_r_data[20] = {0xcd,0xe3,0x88,0xa6,0x3c,0x1d,0x57,0xdc,0x5e,0x94,0xee,0xac,0x2e,0x6c,0x9f,0x2e,0x81,0xc7,0x1c,0x58};
  1024.  
  1025. // ECDSA param of applations
  1026. ECDSA_PARAM ecdsa_app = {
  1027.     .p  = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
  1028.     .a  = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFC},
  1029.     .b  = {0xA6,0x8B,0xED,0xC3,0x34,0x18,0x02,0x9C,0x1D,0x3C,0xE3,0x3B,0x9A,0x32,0x1F,0xCC,0xBB,0x9E,0x0F,0x0B},
  1030.     .N  = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFF,0xFF,0xB5,0xAE,0x3C,0x52,0x3E,0x63,0x94,0x4F,0x21,0x27},
  1031.     .Gx = {0x12,0x8E,0xC4,0x25,0x64,0x87,0xFD,0x8F,0xDF,0x64,0xE2,0x43,0x7B,0xC0,0xA1,0xF6,0xD5,0xAF,0xDE,0x2C},
  1032.     .Gy = {0x59,0x58,0x55,0x7E,0xB1,0xDB,0x00,0x12,0x60,0x42,0x55,0x24,0xDB,0xC3,0x79,0xD5,0xAC,0x5F,0x4A,0xDF},
  1033. };
  1034.  
  1035. // ECDSA private key of EDATA
  1036. u8 priv_key_edata[20] = {0xe5,0xc4,0xd0,0xa8,0x24,0x9a,0x6f,0x27,0xe5,0xe0,0xc9,0xd5,0x34,0xf4,0xda,0x15,0x22,0x3f,0x42,0xad};
  1037.  
  1038.  
  1039. // AES key for kirk1
  1040. u8 kirk1_key[16] = {0x98,0xC9,0x40,0x97,0x5C,0x1D,0x10,0xE8,0x7F,0xE6,0x0E,0xA3,0xFD,0x03,0xA8,0xBA};
  1041.  
  1042. // AES key for kirk4/7
  1043. u8 kirk7_key00[16] = {0x2C, 0x92, 0xE5, 0x90, 0x2B, 0x86, 0xC1, 0x06, 0xB7, 0x2E, 0xEA, 0x6C, 0xD4, 0xEC, 0x72, 0x48};
  1044. u8 kirk7_key01[16] = {0x05, 0x8D, 0xC8, 0x0B, 0x33, 0xA5, 0xBF, 0x9D, 0x56, 0x98, 0xFA, 0xE0, 0xD3, 0x71, 0x5E, 0x1F};
  1045. u8 kirk7_key02[16] = {0xB8, 0x13, 0xC3, 0x5E, 0xC6, 0x44, 0x41, 0xE3, 0xDC, 0x3C, 0x16, 0xF5, 0xB4, 0x5E, 0x64, 0x84}; //New from PS3
  1046. u8 kirk7_key03[16] = {0x98, 0x02, 0xC4, 0xE6, 0xEC, 0x9E, 0x9E, 0x2F, 0xFC, 0x63, 0x4C, 0xE4, 0x2F, 0xBB, 0x46, 0x68};
  1047. u8 kirk7_key04[16] = {0x99, 0x24, 0x4C, 0xD2, 0x58, 0xF5, 0x1B, 0xCB, 0xB0, 0x61, 0x9C, 0xA7, 0x38, 0x30, 0x07, 0x5F};
  1048. u8 kirk7_key05[16] = {0x02, 0x25, 0xD7, 0xBA, 0x63, 0xEC, 0xB9, 0x4A, 0x9D, 0x23, 0x76, 0x01, 0xB3, 0xF6, 0xAC, 0x17};
  1049. u8 kirk7_key06[16] = {0x60, 0x99, 0xF2, 0x81, 0x70, 0x56, 0x0E, 0x5F, 0x74, 0x7C, 0xB5, 0x20, 0xC0, 0xCD, 0xC2, 0x3C};
  1050. u8 kirk7_key07[16] = {0x76, 0x36, 0x8B, 0x43, 0x8F, 0x77, 0xD8, 0x7E, 0xFE, 0x5F, 0xB6, 0x11, 0x59, 0x39, 0x88, 0x5C}; //New from PS3
  1051. u8 kirk7_key08[16] = {0x14, 0xA1, 0x15, 0xEB, 0x43, 0x4A, 0x1B, 0xA4, 0x90, 0x5E, 0x03, 0xB6, 0x17, 0xA1, 0x5C, 0x04};
  1052. u8 kirk7_key09[16] = {0xE6, 0x58, 0x03, 0xD9, 0xA7, 0x1A, 0xA8, 0x7F, 0x05, 0x9D, 0x22, 0x9D, 0xAF, 0x54, 0x53, 0xD0};
  1053. u8 kirk7_key0A[16] = {0xBA, 0x34, 0x80, 0xB4, 0x28, 0xA7, 0xCA, 0x5F, 0x21, 0x64, 0x12, 0xF7, 0x0F, 0xBB, 0x73, 0x23};
  1054. u8 kirk7_key0B[16] = {0x72, 0xAD, 0x35, 0xAC, 0x9A, 0xC3, 0x13, 0x0A, 0x77, 0x8C, 0xB1, 0x9D, 0x88, 0x55, 0x0B, 0x0C};
  1055. u8 kirk7_key0C[16] = {0x84, 0x85, 0xC8, 0x48, 0x75, 0x08, 0x43, 0xBC, 0x9B, 0x9A, 0xEC, 0xA7, 0x9C, 0x7F, 0x60, 0x18};
  1056. u8 kirk7_key0D[16] = {0xB5, 0xB1, 0x6E, 0xDE, 0x23, 0xA9, 0x7B, 0x0E, 0xA1, 0x7C, 0xDB, 0xA2, 0xDC, 0xDE, 0xC4, 0x6E};
  1057. u8 kirk7_key0E[16] = {0xC8, 0x71, 0xFD, 0xB3, 0xBC, 0xC5, 0xD2, 0xF2, 0xE2, 0xD7, 0x72, 0x9D, 0xDF, 0x82, 0x68, 0x82};
  1058. u8 kirk7_key0F[16] = {0x0A, 0xBB, 0x33, 0x6C, 0x96, 0xD4, 0xCD, 0xD8, 0xCB, 0x5F, 0x4B, 0xE0, 0xBA, 0xDB, 0x9E, 0x03};
  1059. u8 kirk7_key10[16] = {0x32, 0x29, 0x5B, 0xD5, 0xEA, 0xF7, 0xA3, 0x42, 0x16, 0xC8, 0x8E, 0x48, 0xFF, 0x50, 0xD3, 0x71};
  1060. u8 kirk7_key11[16] = {0x46, 0xF2, 0x5E, 0x8E, 0x4D, 0x2A, 0xA5, 0x40, 0x73, 0x0B, 0xC4, 0x6E, 0x47, 0xEE, 0x6F, 0x0A};
  1061. u8 kirk7_key12[16] = {0x5D, 0xC7, 0x11, 0x39, 0xD0, 0x19, 0x38, 0xBC, 0x02, 0x7F, 0xDD, 0xDC, 0xB0, 0x83, 0x7D, 0x9D};
  1062. u8 kirk7_key13[16] = {0x51, 0xDD, 0x65, 0xF0, 0x71, 0xA4, 0xE5, 0xEA, 0x6A, 0xAF, 0x12, 0x19, 0x41, 0x29, 0xB8, 0xF4};
  1063. u8 kirk7_key14[16] = {0x03, 0x76, 0x3C, 0x68, 0x65, 0xC6, 0x9B, 0x0F, 0xFE, 0x8F, 0xD8, 0xEE, 0xA4, 0x36, 0x16, 0xA0};
  1064. u8 kirk7_key15[16] = {0x7D, 0x50, 0xB8, 0x5C, 0xAF, 0x67, 0x69, 0xF0, 0xE5, 0x4A, 0xA8, 0x09, 0x8B, 0x0E, 0xBE, 0x1C};
  1065. u8 kirk7_key16[16] = {0x72, 0x68, 0x4B, 0x32, 0xAC, 0x3B, 0x33, 0x2F, 0x2A, 0x7A, 0xFC, 0x9E, 0x14, 0xD5, 0x6F, 0x6B};
  1066. u8 kirk7_key17[16] = {0x20, 0x1D, 0x31, 0x96, 0x4A, 0xD9, 0x9F, 0xBF, 0x32, 0xD5, 0xD6, 0x1C, 0x49, 0x1B, 0xD9, 0xFC};
  1067. u8 kirk7_key18[16] = {0xF8, 0xD8, 0x44, 0x63, 0xD6, 0x10, 0xD1, 0x2A, 0x44, 0x8E, 0x96, 0x90, 0xA6, 0xBB, 0x0B, 0xAD};
  1068. u8 kirk7_key19[16] = {0x5C, 0xD4, 0x05, 0x7F, 0xA1, 0x30, 0x60, 0x44, 0x0A, 0xD9, 0xB6, 0x74, 0x5F, 0x24, 0x4F, 0x4E};
  1069. u8 kirk7_key1A[16] = {0xF4, 0x8A, 0xD6, 0x78, 0x59, 0x9C, 0x22, 0xC1, 0xD4, 0x11, 0x93, 0x3D, 0xF8, 0x45, 0xB8, 0x93};
  1070. u8 kirk7_key1B[16] = {0xCA, 0xE7, 0xD2, 0x87, 0xA2, 0xEC, 0xC1, 0xCD, 0x94, 0x54, 0x2B, 0x5E, 0x1D, 0x94, 0x88, 0xB2};
  1071. u8 kirk7_key1C[16] = {0xDE, 0x26, 0xD3, 0x7A, 0x39, 0x95, 0x6C, 0x2A, 0xD8, 0xC3, 0xA6, 0xAF, 0x21, 0xEB, 0xB3, 0x01};
  1072. u8 kirk7_key1D[16] = {0x7C, 0xB6, 0x8B, 0x4D, 0xA3, 0x8D, 0x1D, 0xD9, 0x32, 0x67, 0x9C, 0xA9, 0x9F, 0xFB, 0x28, 0x52};
  1073. u8 kirk7_key1E[16] = {0xA0, 0xB5, 0x56, 0xB4, 0x69, 0xAB, 0x36, 0x8F, 0x36, 0xDE, 0xC9, 0x09, 0x2E, 0xCB, 0x41, 0xB1};
  1074. u8 kirk7_key1F[16] = {0x93, 0x9D, 0xE1, 0x9B, 0x72, 0x5F, 0xEE, 0xE2, 0x45, 0x2A, 0xBC, 0x17, 0x06, 0xD1, 0x47, 0x69};
  1075. u8 kirk7_key20[16] = {0xA4, 0xA4, 0xE6, 0x21, 0x38, 0x2E, 0xF1, 0xAF, 0x7B, 0x17, 0x7A, 0xE8, 0x42, 0xAD, 0x00, 0x31};
  1076. u8 kirk7_key21[16] = {0xC3, 0x7F, 0x13, 0xE8, 0xCF, 0x84, 0xDB, 0x34, 0x74, 0x7B, 0xC3, 0xA0, 0xF1, 0x9D, 0x3A, 0x73};
  1077. u8 kirk7_key22[16] = {0x2B, 0xF7, 0x83, 0x8A, 0xD8, 0x98, 0xE9, 0x5F, 0xA5, 0xF9, 0x01, 0xDA, 0x61, 0xFE, 0x35, 0xBB};
  1078. u8 kirk7_key23[16] = {0xC7, 0x04, 0x62, 0x1E, 0x71, 0x4A, 0x66, 0xEA, 0x62, 0xE0, 0x4B, 0x20, 0x3D, 0xB8, 0xC2, 0xE5};
  1079. u8 kirk7_key24[16] = {0xC9, 0x33, 0x85, 0x9A, 0xAB, 0x00, 0xCD, 0xCE, 0x4D, 0x8B, 0x8E, 0x9F, 0x3D, 0xE6, 0xC0, 0x0F};
  1080. u8 kirk7_key25[16] = {0x18, 0x42, 0x56, 0x1F, 0x2B, 0x5F, 0x34, 0xE3, 0x51, 0x3E, 0xB7, 0x89, 0x77, 0x43, 0x1A, 0x65};
  1081. u8 kirk7_key26[16] = {0xDC, 0xB0, 0xA0, 0x06, 0x5A, 0x50, 0xA1, 0x4E, 0x59, 0xAC, 0x97, 0x3F, 0x17, 0x58, 0xA3, 0xA3};
  1082. u8 kirk7_key27[16] = {0xC4, 0xDB, 0xAE, 0x83, 0xE2, 0x9C, 0xF2, 0x54, 0xA3, 0xDD, 0x37, 0x4E, 0x80, 0x7B, 0xF4, 0x25};
  1083. u8 kirk7_key28[16] = {0xBF, 0xAE, 0xEB, 0x49, 0x82, 0x65, 0xC5, 0x7C, 0x64, 0xB8, 0xC1, 0x7E, 0x19, 0x06, 0x44, 0x09};
  1084. u8 kirk7_key29[16] = {0x79, 0x7C, 0xEC, 0xC3, 0xB3, 0xEE, 0x0A, 0xC0, 0x3B, 0xD8, 0xE6, 0xC1, 0xE0, 0xA8, 0xB1, 0xA4};
  1085. u8 kirk7_key2A[16] = {0x75, 0x34, 0xFE, 0x0B, 0xD6, 0xD0, 0xC2, 0x8D, 0x68, 0xD4, 0xE0, 0x2A, 0xE7, 0xD5, 0xD1, 0x55};
  1086. u8 kirk7_key2B[16] = {0xFA, 0xB3, 0x53, 0x26, 0x97, 0x4F, 0x4E, 0xDF, 0xE4, 0xC3, 0xA8, 0x14, 0xC3, 0x2F, 0x0F, 0x88};
  1087. u8 kirk7_key2C[16] = {0xEC, 0x97, 0xB3, 0x86, 0xB4, 0x33, 0xC6, 0xBF, 0x4E, 0x53, 0x9D, 0x95, 0xEB, 0xB9, 0x79, 0xE4};
  1088. u8 kirk7_key2D[16] = {0xB3, 0x20, 0xA2, 0x04, 0xCF, 0x48, 0x06, 0x29, 0xB5, 0xDD, 0x8E, 0xFC, 0x98, 0xD4, 0x17, 0x7B};
  1089. u8 kirk7_key2E[16] = {0x5D, 0xFC, 0x0D, 0x4F, 0x2C, 0x39, 0xDA, 0x68, 0x4A, 0x33, 0x74, 0xED, 0x49, 0x58, 0xA7, 0x3A};
  1090. u8 kirk7_key2F[16] = {0xD7, 0x5A, 0x54, 0x22, 0xCE, 0xD9, 0xA3, 0xD6, 0x2B, 0x55, 0x7D, 0x8D, 0xE8, 0xBE, 0xC7, 0xEC};
  1091. u8 kirk7_key30[16] = {0x6B, 0x4A, 0xEE, 0x43, 0x45, 0xAE, 0x70, 0x07, 0xCF, 0x8D, 0xCF, 0x4E, 0x4A, 0xE9, 0x3C, 0xFA};
  1092. u8 kirk7_key31[16] = {0x2B, 0x52, 0x2F, 0x66, 0x4C, 0x2D, 0x11, 0x4C, 0xFE, 0x61, 0x31, 0x8C, 0x56, 0x78, 0x4E, 0xA6};
  1093. u8 kirk7_key32[16] = {0x3A, 0xA3, 0x4E, 0x44, 0xC6, 0x6F, 0xAF, 0x7B, 0xFA, 0xE5, 0x53, 0x27, 0xEF, 0xCF, 0xCC, 0x24};
  1094. u8 kirk7_key33[16] = {0x2B, 0x5C, 0x78, 0xBF, 0xC3, 0x8E, 0x49, 0x9D, 0x41, 0xC3, 0x3C, 0x5C, 0x7B, 0x27, 0x96, 0xCE};
  1095. u8 kirk7_key34[16] = {0xF3, 0x7E, 0xEA, 0xD2, 0xC0, 0xC8, 0x23, 0x1D, 0xA9, 0x9B, 0xFA, 0x49, 0x5D, 0xB7, 0x08, 0x1B};
  1096. u8 kirk7_key35[16] = {0x70, 0x8D, 0x4E, 0x6F, 0xD1, 0xF6, 0x6F, 0x1D, 0x1E, 0x1F, 0xCB, 0x02, 0xF9, 0xB3, 0x99, 0x26};
  1097. u8 kirk7_key36[16] = {0x0F, 0x67, 0x16, 0xE1, 0x80, 0x69, 0x9C, 0x51, 0xFC, 0xC7, 0xAD, 0x6E, 0x4F, 0xB8, 0x46, 0xC9};
  1098. u8 kirk7_key37[16] = {0x56, 0x0A, 0x49, 0x4A, 0x84, 0x4C, 0x8E, 0xD9, 0x82, 0xEE, 0x0B, 0x6D, 0xC5, 0x7D, 0x20, 0x8D};
  1099. u8 kirk7_key38[16] = {0x12, 0x46, 0x8D, 0x7E, 0x1C, 0x42, 0x20, 0x9B, 0xBA, 0x54, 0x26, 0x83, 0x5E, 0xB0, 0x33, 0x03};
  1100. u8 kirk7_key39[16] = {0xC4, 0x3B, 0xB6, 0xD6, 0x53, 0xEE, 0x67, 0x49, 0x3E, 0xA9, 0x5F, 0xBC, 0x0C, 0xED, 0x6F, 0x8A};
  1101. u8 kirk7_key3A[16] = {0x2C, 0xC3, 0xCF, 0x8C, 0x28, 0x78, 0xA5, 0xA6, 0x63, 0xE2, 0xAF, 0x2D, 0x71, 0x5E, 0x86, 0xBA};
  1102. u8 kirk7_key3B[16] = {0x83, 0x3D, 0xA7, 0x0C, 0xED, 0x6A, 0x20, 0x12, 0xD1, 0x96, 0xE6, 0xFE, 0x5C, 0x4D, 0x37, 0xC5};
  1103. u8 kirk7_key3C[16] = {0xC7, 0x43, 0xD0, 0x67, 0x42, 0xEE, 0x90, 0xB8, 0xCA, 0x75, 0x50, 0x35, 0x20, 0xAD, 0xBC, 0xCE};
  1104. u8 kirk7_key3D[16] = {0x8A, 0xE3, 0x66, 0x3F, 0x8D, 0x9E, 0x82, 0xA1, 0xED, 0xE6, 0x8C, 0x9C, 0xE8, 0x25, 0x6D, 0xAA};
  1105. u8 kirk7_key3E[16] = {0x7F, 0xC9, 0x6F, 0x0B, 0xB1, 0x48, 0x5C, 0xA5, 0x5D, 0xD3, 0x64, 0xB7, 0x7A, 0xF5, 0xE4, 0xEA};
  1106. u8 kirk7_key3F[16] = {0x91, 0xB7, 0x65, 0x78, 0x8B, 0xCB, 0x8B, 0xD4, 0x02, 0xED, 0x55, 0x3A, 0x66, 0x62, 0xD0, 0xAD};
  1107. u8 kirk7_key40[16] = {0x28, 0x24, 0xF9, 0x10, 0x1B, 0x8D, 0x0F, 0x7B, 0x6E, 0xB2, 0x63, 0xB5, 0xB5, 0x5B, 0x2E, 0xBB};
  1108. u8 kirk7_key41[16] = {0x30, 0xE2, 0x57, 0x5D, 0xE0, 0xA2, 0x49, 0xCE, 0xE8, 0xCF, 0x2B, 0x5E, 0x4D, 0x9F, 0x52, 0xC7};
  1109. u8 kirk7_key42[16] = {0x5E, 0xE5, 0x04, 0x39, 0x62, 0x32, 0x02, 0xFA, 0x85, 0x39, 0x3F, 0x72, 0xBB, 0x77, 0xFD, 0x1A};
  1110. u8 kirk7_key43[16] = {0xF8, 0x81, 0x74, 0xB1, 0xBD, 0xE9, 0xBF, 0xDD, 0x45, 0xE2, 0xF5, 0x55, 0x89, 0xCF, 0x46, 0xAB};
  1111. u8 kirk7_key44[16] = {0x7D, 0xF4, 0x92, 0x65, 0xE3, 0xFA, 0xD6, 0x78, 0xD6, 0xFE, 0x78, 0xAD, 0xBB, 0x3D, 0xFB, 0x63}; //New from PS3
  1112. u8 kirk7_key45[16] = {0x74, 0x7F, 0xD6, 0x2D, 0xC7, 0xA1, 0xCA, 0x96, 0xE2, 0x7A, 0xCE, 0xFF, 0xAA, 0x72, 0x3F, 0xF7};
  1113. u8 kirk7_key46[16] = {0x1E, 0x58, 0xEB, 0xD0, 0x65, 0xBB, 0xF1, 0x68, 0xC5, 0xBD, 0xF7, 0x46, 0xBA, 0x7B, 0xE1, 0x00};
  1114. u8 kirk7_key47[16] = {0x24, 0x34, 0x7D, 0xAF, 0x5E, 0x4B, 0x35, 0x72, 0x7A, 0x52, 0x27, 0x6B, 0xA0, 0x54, 0x74, 0xDB};
  1115. u8 kirk7_key48[16] = {0x09, 0xB1, 0xC7, 0x05, 0xC3, 0x5F, 0x53, 0x66, 0x77, 0xC0, 0xEB, 0x36, 0x77, 0xDF, 0x83, 0x07};
  1116. u8 kirk7_key49[16] = {0xCC, 0xBE, 0x61, 0x5C, 0x05, 0xA2, 0x00, 0x33, 0x37, 0x8E, 0x59, 0x64, 0xA7, 0xDD, 0x70, 0x3D};
  1117. u8 kirk7_key4A[16] = {0x0D, 0x47, 0x50, 0xBB, 0xFC, 0xB0, 0x02, 0x81, 0x30, 0xE1, 0x84, 0xDE, 0xA8, 0xD4, 0x84, 0x13};
  1118. u8 kirk7_key4B[16] = {0x0C, 0xFD, 0x67, 0x9A, 0xF9, 0xB4, 0x72, 0x4F, 0xD7, 0x8D, 0xD6, 0xE9, 0x96, 0x42, 0x28, 0x8B}; //1.xx game eboot.bin
  1119. u8 kirk7_key4C[16] = {0x7A, 0xD3, 0x1A, 0x8B, 0x4B, 0xEF, 0xC2, 0xC2, 0xB3, 0x99, 0x01, 0xA9, 0xFE, 0x76, 0xB9, 0x87};
  1120. u8 kirk7_key4D[16] = {0xBE, 0x78, 0x78, 0x17, 0xC7, 0xF1, 0x6F, 0x1A, 0xE0, 0xEF, 0x3B, 0xDE, 0x4C, 0xC2, 0xD7, 0x86};
  1121. u8 kirk7_key4E[16] = {0x7C, 0xD8, 0xB8, 0x91, 0x91, 0x0A, 0x43, 0x14, 0xD0, 0x53, 0x3D, 0xD8, 0x4C, 0x45, 0xBE, 0x16};
  1122. u8 kirk7_key4F[16] = {0x32, 0x72, 0x2C, 0x88, 0x07, 0xCF, 0x35, 0x7D, 0x4A, 0x2F, 0x51, 0x19, 0x44, 0xAE, 0x68, 0xDA};
  1123. u8 kirk7_key50[16] = {0x7E, 0x6B, 0xBF, 0xF6, 0xF6, 0x87, 0xB8, 0x98, 0xEE, 0xB5, 0x1B, 0x32, 0x16, 0xE4, 0x6E, 0x5D};
  1124. u8 kirk7_key51[16] = {0x08, 0xEA, 0x5A, 0x83, 0x49, 0xB5, 0x9D, 0xB5, 0x3E, 0x07, 0x79, 0xB1, 0x9A, 0x59, 0xA3, 0x54};
  1125. u8 kirk7_key52[16] = {0xF3, 0x12, 0x81, 0xBF, 0xE6, 0x9F, 0x51, 0xD1, 0x64, 0x08, 0x25, 0x21, 0xFF, 0xBB, 0x22, 0x61};
  1126. u8 kirk7_key53[16] = {0xAF, 0xFE, 0x8E, 0xB1, 0x3D, 0xD1, 0x7E, 0xD8, 0x0A, 0x61, 0x24, 0x1C, 0x95, 0x92, 0x56, 0xB6};
  1127. u8 kirk7_key54[16] = {0x92, 0xCD, 0xB4, 0xC2, 0x5B, 0xF2, 0x35, 0x5A, 0x23, 0x09, 0xE8, 0x19, 0xC9, 0x14, 0x42, 0x35};
  1128. u8 kirk7_key55[16] = {0xE1, 0xC6, 0x5B, 0x22, 0x6B, 0xE1, 0xDA, 0x02, 0xBA, 0x18, 0xFA, 0x21, 0x34, 0x9E, 0xF9, 0x6D};
  1129. u8 kirk7_key56[16] = {0x14, 0xEC, 0x76, 0xCE, 0x97, 0xF3, 0x8A, 0x0A, 0x34, 0x50, 0x6C, 0x53, 0x9A, 0x5C, 0x9A, 0xB4};
  1130. u8 kirk7_key57[16] = {0x1C, 0x9B, 0xC4, 0x90, 0xE3, 0x06, 0x64, 0x81, 0xFA, 0x59, 0xFD, 0xB6, 0x00, 0xBB, 0x28, 0x70};
  1131. u8 kirk7_key58[16] = {0x43, 0xA5, 0xCA, 0xCC, 0x0D, 0x6C, 0x2D, 0x3F, 0x2B, 0xD9, 0x89, 0x67, 0x6B, 0x3F, 0x7F, 0x57};
  1132. u8 kirk7_key59[16] = {0x00, 0xEF, 0xFD, 0x18, 0x08, 0xA4, 0x05, 0x89, 0x3C, 0x38, 0xFB, 0x25, 0x72, 0x70, 0x61, 0x06};
  1133. u8 kirk7_key5A[16] = {0xEE, 0xAF, 0x49, 0xE0, 0x09, 0x87, 0x9B, 0xEF, 0xAA, 0xD6, 0x32, 0x6A, 0x32, 0x13, 0xC4, 0x29};
  1134. u8 kirk7_key5B[16] = {0x8D, 0x26, 0xB9, 0x0F, 0x43, 0x1D, 0xBB, 0x08, 0xDB, 0x1D, 0xDA, 0xC5, 0xB5, 0x2C, 0x92, 0xED};
  1135. u8 kirk7_key5C[16] = {0x57, 0x7C, 0x30, 0x60, 0xAE, 0x6E, 0xBE, 0xAE, 0x3A, 0xAB, 0x18, 0x19, 0xC5, 0x71, 0x68, 0x0B};
  1136. u8 kirk7_key5D[16] = {0x11, 0x5A, 0x5D, 0x20, 0xD5, 0x3A, 0x8D, 0xD3, 0x9C, 0xC5, 0xAF, 0x41, 0x0F, 0x0F, 0x18, 0x6F}; //2.xx + game eboot.bin
  1137. u8 kirk7_key5E[16] = {0x0D, 0x4D, 0x51, 0xAB, 0x23, 0x79, 0xBF, 0x80, 0x3A, 0xBF, 0xB9, 0x0E, 0x75, 0xFC, 0x14, 0xBF};
  1138. u8 kirk7_key5F[16] = {0x99, 0x93, 0xDA, 0x3E, 0x7D, 0x2E, 0x5B, 0x15, 0xF2, 0x52, 0xA4, 0xE6, 0x6B, 0xB8, 0x5A, 0x98};
  1139. u8 kirk7_key60[16] = {0xF4, 0x28, 0x30, 0xA5, 0xFB, 0x0D, 0x8D, 0x76, 0x0E, 0xA6, 0x71, 0xC2, 0x2B, 0xDE, 0x66, 0x9D};
  1140. u8 kirk7_key61[16] = {0xFB, 0x5F, 0xEB, 0x7F, 0xC7, 0xDC, 0xDD, 0x69, 0x37, 0x01, 0x97, 0x9B, 0x29, 0x03, 0x5C, 0x47};
  1141. u8 kirk7_key62[16] = {0x02, 0x32, 0x6A, 0xE7, 0xD3, 0x96, 0xCE, 0x7F, 0x1C, 0x41, 0x9D, 0xD6, 0x52, 0x07, 0xED, 0x09};
  1142. u8 kirk7_key63[16] = {0x9C, 0x9B, 0x13, 0x72, 0xF8, 0xC6, 0x40, 0xCF, 0x1C, 0x62, 0xF5, 0xD5, 0x92, 0xDD, 0xB5, 0x82};
  1143. u8 kirk7_key64[16] = {0x03, 0xB3, 0x02, 0xE8, 0x5F, 0xF3, 0x81, 0xB1, 0x3B, 0x8D, 0xAA, 0x2A, 0x90, 0xFF, 0x5E, 0x61};
  1144. u8 kirk7_key65[16] = {0xBC, 0xD7, 0xF9, 0xD3, 0x2F, 0xAC, 0xF8, 0x47, 0xC0, 0xFB, 0x4D, 0x2F, 0x30, 0x9A, 0xBD, 0xA6};
  1145. u8 kirk7_key66[16] = {0xF5, 0x55, 0x96, 0xE9, 0x7F, 0xAF, 0x86, 0x7F, 0xAC, 0xB3, 0x3A, 0xE6, 0x9C, 0x8B, 0x6F, 0x93};
  1146. u8 kirk7_key67[16] = {0xEE, 0x29, 0x70, 0x93, 0xF9, 0x4E, 0x44, 0x59, 0x44, 0x17, 0x1F, 0x8E, 0x86, 0xE1, 0x70, 0xFC};
  1147. u8 kirk7_key68[16] = {0xE4, 0x34, 0x52, 0x0C, 0xF0, 0x88, 0xCF, 0xC8, 0xCD, 0x78, 0x1B, 0x6C, 0xCF, 0x8C, 0x48, 0xC4};
  1148. u8 kirk7_key69[16] = {0xC1, 0xBF, 0x66, 0x81, 0x8E, 0xF9, 0x53, 0xF2, 0xE1, 0x26, 0x6B, 0x6F, 0x55, 0x0C, 0xC9, 0xCD};
  1149. u8 kirk7_key6A[16] = {0x56, 0x0F, 0xFF, 0x8F, 0x3C, 0x96, 0x49, 0x14, 0x45, 0x16, 0xF1, 0xBC, 0xBF, 0xCE, 0xA3, 0x0C};
  1150. u8 kirk7_key6B[16] = {0x24, 0x08, 0xDC, 0x75, 0x37, 0x60, 0xA2, 0x9F, 0x05, 0x54, 0xB5, 0xF2, 0x43, 0x85, 0x73, 0x99};
  1151. u8 kirk7_key6C[16] = {0xDD, 0xD5, 0xB5, 0x6A, 0x59, 0xC5, 0x5A, 0xE8, 0x3B, 0x96, 0x67, 0xC7, 0x5C, 0x2A, 0xE2, 0xDC};
  1152. u8 kirk7_key6D[16] = {0xAA, 0x68, 0x67, 0x72, 0xE0, 0x2D, 0x44, 0xD5, 0xCD, 0xBB, 0x65, 0x04, 0xBC, 0xD5, 0xBF, 0x4E};
  1153. u8 kirk7_key6E[16] = {0x1F, 0x17, 0xF0, 0x14, 0xE7, 0x77, 0xA2, 0xFE, 0x4B, 0x13, 0x6B, 0x56, 0xCD, 0x7E, 0xF7, 0xE9};
  1154. u8 kirk7_key6F[16] = {0xC9, 0x35, 0x48, 0xCF, 0x55, 0x8D, 0x75, 0x03, 0x89, 0x6B, 0x2E, 0xEB, 0x61, 0x8C, 0xA9, 0x02};
  1155. u8 kirk7_key70[16] = {0xDE, 0x34, 0xC5, 0x41, 0xE7, 0xCA, 0x86, 0xE8, 0xBE, 0xA7, 0xC3, 0x1C, 0xEC, 0xE4, 0x36, 0x0F};
  1156. u8 kirk7_key71[16] = {0xDD, 0xE5, 0xFF, 0x55, 0x1B, 0x74, 0xF6, 0xF4, 0xE0, 0x16, 0xD7, 0xAB, 0x22, 0x31, 0x1B, 0x6A};
  1157. u8 kirk7_key72[16] = {0xB0, 0xE9, 0x35, 0x21, 0x33, 0x3F, 0xD7, 0xBA, 0xB4, 0x76, 0x2C, 0xCB, 0x4D, 0x80, 0x08, 0xD8};
  1158. u8 kirk7_key73[16] = {0x38, 0x14, 0x69, 0xC4, 0xC3, 0xF9, 0x1B, 0x96, 0x33, 0x63, 0x8E, 0x4D, 0x5F, 0x3D, 0xF0, 0x29};
  1159. u8 kirk7_key74[16] = {0xFA, 0x48, 0x6A, 0xD9, 0x8E, 0x67, 0x16, 0xEF, 0x6A, 0xB0, 0x87, 0xF5, 0x89, 0x45, 0x7F, 0x2A};
  1160. u8 kirk7_key75[16] = {0x32, 0x1A, 0x09, 0x12, 0x50, 0x14, 0x8A, 0x3E, 0x96, 0x3D, 0xEA, 0x02, 0x59, 0x32, 0xE1, 0x8F};
  1161. u8 kirk7_key76[16] = {0x4B, 0x00, 0xBE, 0x29, 0xBC, 0xB0, 0x28, 0x64, 0xCE, 0xFD, 0x43, 0xA9, 0x6F, 0xD9, 0x5C, 0xED};
  1162. u8 kirk7_key77[16] = {0x57, 0x7D, 0xC4, 0xFF, 0x02, 0x44, 0xE2, 0x80, 0x91, 0xF4, 0xCA, 0x0A, 0x75, 0x69, 0xFD, 0xA8};
  1163. u8 kirk7_key78[16] = {0x83, 0x53, 0x36, 0xC6, 0x18, 0x03, 0xE4, 0x3E, 0x4E, 0xB3, 0x0F, 0x6B, 0x6E, 0x79, 0x9B, 0x7A};
  1164. u8 kirk7_key79[16] = {0x5C, 0x92, 0x65, 0xFD, 0x7B, 0x59, 0x6A, 0xA3, 0x7A, 0x2F, 0x50, 0x9D, 0x85, 0xE9, 0x27, 0xF8};
  1165. u8 kirk7_key7A[16] = {0x9A, 0x39, 0xFB, 0x89, 0xDF, 0x55, 0xB2, 0x60, 0x14, 0x24, 0xCE, 0xA6, 0xD9, 0x65, 0x0A, 0x9D};
  1166. u8 kirk7_key7B[16] = {0x8B, 0x75, 0xBE, 0x91, 0xA8, 0xC7, 0x5A, 0xD2, 0xD7, 0xA5, 0x94, 0xA0, 0x1C, 0xBB, 0x95, 0x91};
  1167. u8 kirk7_key7C[16] = {0x95, 0xC2, 0x1B, 0x8D, 0x05, 0xAC, 0xF5, 0xEC, 0x5A, 0xEE, 0x77, 0x81, 0x23, 0x95, 0xC4, 0xD7};
  1168. u8 kirk7_key7D[16] = {0xB9, 0xA4, 0x61, 0x64, 0x36, 0x33, 0xFA, 0x5D, 0x94, 0x88, 0xE2, 0xD3, 0x28, 0x1E, 0x01, 0xA2};
  1169. u8 kirk7_key7E[16] = {0xB8, 0xB0, 0x84, 0xFB, 0x9F, 0x4C, 0xFA, 0xF7, 0x30, 0xFE, 0x73, 0x25, 0xA2, 0xAB, 0x89, 0x7D};
  1170. u8 kirk7_key7F[16] = {0x5F, 0x8C, 0x17, 0x9F, 0xC1, 0xB2, 0x1D, 0xF1, 0xF6, 0x36, 0x7A, 0x9C, 0xF7, 0xD3, 0xD4, 0x7C};
  1171.  
  1172. // AES key for kirk9
  1173. u8 kirk9_key[16]  = {0x9F,0x46,0xF9,0xFC,0xFA,0xB2,0xAD,0x05,0x69,0xF6,0x88,0xD8,0x79,0x4B,0x92,0xBA}; //PSPSpockMasterKey
  1174.  
  1175. // AES key for kirk16
  1176. u8 kirk16_key[16]  = {0x47,0x5E,0x09,0xF4,0xA2,0x37,0xDA,0x9B,0xEF,0xFF,0x3B,0xC0,0x77,0x14,0x3D,0x8A}; //PSPIDStorageKey
  1177.  
  1178.  
  1179. u8* kirk_4_7_get_key(int key_type)
  1180. {
  1181.     switch(key_type)
  1182.     {
  1183.         case(0x00): return kirk7_key00; break;
  1184.         case(0x01): return kirk7_key01; break;
  1185.         case(0x02): return kirk7_key02; break;
  1186.         case(0x03): return kirk7_key03; break;
  1187.         case(0x04): return kirk7_key04; break;
  1188.         case(0x05): return kirk7_key05; break;
  1189.         case(0x06): return kirk7_key06; break;
  1190.         case(0x07): return kirk7_key07; break;
  1191.         case(0x08): return kirk7_key08; break;
  1192.         case(0x09): return kirk7_key09; break;
  1193.         case(0x0A): return kirk7_key0A; break;
  1194.         case(0x0B): return kirk7_key0B; break;
  1195.         case(0x0C): return kirk7_key0C; break;
  1196.         case(0x0D): return kirk7_key0D; break;
  1197.         case(0x0E): return kirk7_key0E; break;
  1198.         case(0x0F): return kirk7_key0F; break;
  1199.         case(0x10): return kirk7_key10; break;
  1200.         case(0x11): return kirk7_key11; break;
  1201.         case(0x12): return kirk7_key12; break;
  1202.         case(0x13): return kirk7_key13; break;
  1203.         case(0x14): return kirk7_key14; break;
  1204.         case(0x15): return kirk7_key15; break;
  1205.         case(0x16): return kirk7_key16; break;
  1206.         case(0x17): return kirk7_key17; break;
  1207.         case(0x18): return kirk7_key18; break;
  1208.         case(0x19): return kirk7_key19; break;
  1209.         case(0x1A): return kirk7_key1A; break;
  1210.         case(0x1B): return kirk7_key1B; break;
  1211.         case(0x1C): return kirk7_key1C; break;
  1212.         case(0x1D): return kirk7_key1D; break;
  1213.         case(0x1E): return kirk7_key1E; break;
  1214.         case(0x1F): return kirk7_key1F; break;
  1215.         case(0x20): return kirk7_key20; break;
  1216.         case(0x21): return kirk7_key21; break;
  1217.         case(0x22): return kirk7_key22; break;
  1218.         case(0x23): return kirk7_key23; break;
  1219.         case(0x24): return kirk7_key24; break;
  1220.         case(0x25): return kirk7_key25; break;
  1221.         case(0x26): return kirk7_key26; break;
  1222.         case(0x27): return kirk7_key27; break;
  1223.         case(0x28): return kirk7_key28; break;
  1224.         case(0x29): return kirk7_key29; break;
  1225.         case(0x2A): return kirk7_key2A; break;
  1226.         case(0x2B): return kirk7_key2B; break;
  1227.         case(0x2C): return kirk7_key2C; break;
  1228.         case(0x2D): return kirk7_key2D; break;
  1229.         case(0x2E): return kirk7_key2E; break;
  1230.         case(0x2F): return kirk7_key2F; break;
  1231.         case(0x30): return kirk7_key30; break;
  1232.         case(0x31): return kirk7_key31; break;
  1233.         case(0x32): return kirk7_key32; break;
  1234.         case(0x33): return kirk7_key33; break;
  1235.         case(0x34): return kirk7_key34; break;
  1236.         case(0x35): return kirk7_key35; break;
  1237.         case(0x36): return kirk7_key36; break;
  1238.         case(0x37): return kirk7_key37; break;
  1239.         case(0x38): return kirk7_key38; break;
  1240.         case(0x39): return kirk7_key39; break;
  1241.         case(0x3A): return kirk7_key3A; break;
  1242.         case(0x3B): return kirk7_key3B; break;
  1243.         case(0x3C): return kirk7_key3C; break;
  1244.         case(0x3D): return kirk7_key3D; break;
  1245.         case(0x3E): return kirk7_key3E; break;
  1246.         case(0x3F): return kirk7_key3F; break;
  1247.         case(0x40): return kirk7_key40; break;
  1248.         case(0x41): return kirk7_key41; break;
  1249.         case(0x42): return kirk7_key42; break;
  1250.         case(0x43): return kirk7_key43; break;
  1251.         case(0x44): return kirk7_key44; break;
  1252.         case(0x45): return kirk7_key45; break;
  1253.         case(0x46): return kirk7_key46; break;
  1254.         case(0x47): return kirk7_key47; break;
  1255.         case(0x48): return kirk7_key48; break;
  1256.         case(0x49): return kirk7_key49; break;
  1257.         case(0x4A): return kirk7_key4A; break;
  1258.         case(0x4B): return kirk7_key4B; break;
  1259.         case(0x4C): return kirk7_key4C; break;
  1260.         case(0x4D): return kirk7_key4D; break;
  1261.         case(0x4E): return kirk7_key4E; break;
  1262.         case(0x4F): return kirk7_key4F; break;
  1263.         case(0x50): return kirk7_key50; break;
  1264.         case(0x51): return kirk7_key51; break;
  1265.         case(0x52): return kirk7_key52; break;
  1266.         case(0x53): return kirk7_key53; break;
  1267.         case(0x54): return kirk7_key54; break;
  1268.         case(0x55): return kirk7_key55; break;
  1269.         case(0x56): return kirk7_key56; break;
  1270.         case(0x57): return kirk7_key57; break;
  1271.         case(0x58): return kirk7_key58; break;
  1272.         case(0x59): return kirk7_key59; break;
  1273.         case(0x5A): return kirk7_key5A; break;
  1274.         case(0x5B): return kirk7_key5B; break;
  1275.         case(0x5C): return kirk7_key5C; break;
  1276.         case(0x5D): return kirk7_key5D; break;
  1277.         case(0x5E): return kirk7_key5E; break;
  1278.         case(0x5F): return kirk7_key5F; break;
  1279.         case(0x60): return kirk7_key60; break;
  1280.         case(0x61): return kirk7_key61; break;
  1281.         case(0x62): return kirk7_key62; break;
  1282.         case(0x63): return kirk7_key63; break;
  1283.         case(0x64): return kirk7_key64; break;
  1284.         case(0x65): return kirk7_key65; break;
  1285.         case(0x66): return kirk7_key66; break;
  1286.         case(0x67): return kirk7_key67; break;
  1287.         case(0x68): return kirk7_key68; break;
  1288.         case(0x69): return kirk7_key69; break;
  1289.         case(0x6A): return kirk7_key6A; break;
  1290.         case(0x6B): return kirk7_key6B; break;
  1291.         case(0x6C): return kirk7_key6C; break;
  1292.         case(0x6D): return kirk7_key6D; break;
  1293.         case(0x6E): return kirk7_key6E; break;
  1294.         case(0x6F): return kirk7_key6F; break;
  1295.         case(0x70): return kirk7_key70; break;
  1296.         case(0x71): return kirk7_key71; break;
  1297.         case(0x72): return kirk7_key72; break;
  1298.         case(0x73): return kirk7_key73; break;
  1299.         case(0x74): return kirk7_key74; break;
  1300.         case(0x75): return kirk7_key75; break;
  1301.         case(0x76): return kirk7_key76; break;
  1302.         case(0x77): return kirk7_key77; break;
  1303.         case(0x78): return kirk7_key78; break;
  1304.         case(0x79): return kirk7_key79; break;
  1305.         case(0x7A): return kirk7_key7A; break;
  1306.         case(0x7B): return kirk7_key7B; break;
  1307.         case(0x7C): return kirk7_key7C; break;
  1308.         case(0x7D): return kirk7_key7D; break;
  1309.         case(0x7E): return kirk7_key7E; break;
  1310.         case(0x7F): return kirk7_key7F; break;
  1311.         default:
  1312.             return NULL;
  1313.             //need to get the real error code for that, placeholder now :)
  1314.     }
  1315. }
  1316.  
  1317.  
  1318. ////////// ID Storage keys //////////
  1319.  
  1320. 0x0120.bin - 0x0126.bin идентичны соответственно ключам 0x0100.bin - 0x0106.bin
  1321.  
  1322. /* 0x100.bin = 0x0120.bin */
  1323. IDPS длиной 16 байт в позиции 0x38.
  1324. IDPS длиной 16 байт в позиции 0xF0.
  1325. IDPS длиной 16 байт в позиции 0x1A8.
  1326.  
  1327. /* 0x101.bin = 0x0121.bin */
  1328. IDPS длиной 16 байт в позиции 0x60.
  1329. IDPS длиной 16 байт в позиции 0x118.
  1330.  
  1331. Source: http://www.pspx.ru/forum/showthread.php?t=59609
Add Comment
Please, Sign In to add comment