Seeds: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
 
(71 intermediate revisions by 7 users not shown)
Line 1: Line 1:
= Information about these seeds =
= Source of the PS3 seeds =


The seeds present on this wiki page were acquired through different means. It started with a simple search (Which i have to thank glevand and naehrwert for, as had it not been for those guys, i wouldn't have found myself the confidence to post this) and it went through several people who helped me along the way, and that probably wish to stay anonymous.
The seeds presented on this page were acquired through different means. It started with a simple search (which I have to thank glevand and naehrwert for, as had it not been for those guys, I wouldn't have found myself the confidence to post this) and it went through several people who helped me along the way, and who probably wish to stay anonymous.


Without further ado, here are the seeds (both known and unknown) for several functions of the ps3.
= Seeds =


== Common ==
== Common ==
Line 16: Line 16:
</pre>
</pre>


Used on old firmwares, possible for an old EID0 format (or fallback?) which can be 0x20 or 0x28 bytes in size. Decrypted section is always the same, see comments: http://pastie.org/private/rzg83pokd4vnxg60dj3qwg
* Used on old firmwares, possibly for an old EID0 format (or fallback?) which can be 0x20 or 0x28 bytes in size. Decrypted section is always the same.
 
* See [https://web.archive.org/web/20141118235214/http://pastie.org/private/rzg83pokd4vnxg60dj3qwg comments].
Taken from: isoldr/appldr/lv1ldr
* Location: isoldr/appldr/lv1ldr


== eEID ==
== eEID ==


=== eid0 ===
=== EID0 ===
 
Used for individual ps3/psp/psn information.


==== eid0 individuals seed ====
==== EID0 individuals seed ====


<pre>
<pre>
Line 35: Line 33:
</pre>
</pre>


Taken from: aim_spu_module.self/isoldr/appldr/lv1ldr/spu_token_processor.self/spu_utoken_processor.self
* Location: aim_spu_module.self/isoldr/appldr/lv1ldr/spu_token_processor.self/spu_utoken_processor.self
 
==== EID0 section 0 seed for enc/dec + CMAC (Kirk command 0x12) ====
 
<pre>2ED7CE8D1D55454585BF6A3281CD03AF</pre>
 
* Location: aim_spu_module.self
 
==== EID0 section 6 seed for enc/dec + CMAC (Kirk command 0x12) ====
 
<pre>3AB0E6C4ACFFB629362FFBBBDBC854BC</pre>


==== eid0 keyseed 0x0 ====
* Location: pspemudrm (KIRK)


<pre>
==== EID0 section 0xA seed for enc/dec + CMAC (Kirk command 0x12) ====
2ED7CE8D1D55454585BF6A3281CD03AF
 
</pre>
<pre>30B0395DC5835AAA3A7986B44AFAE684</pre>
 
* Location: aim_spu_module.self
 
==== EID0 section 6 seed for encrypted ECDSA private key (Kirk command 0x10) ====
 
<pre>33793B9F79E2EBAE55D4D6BF0ED376E6</pre>
 
Notes:
* This seed is the equivalent of the PSP Kirk command 0x10 AES128ECB seed (idskey0).
* EID0 sections 7-0xA use a different and unknown seed.
 
1) aes-256-ecb encrypt the seed with per-console EID0_key (indiv+0x20) and EID0_iv (indiv+0x10), in order to obtain the 128bit decryption key to decrypt per-console encrypted ECDSA private key.


Taken from: aim_spu_module.self
2) aes-128-cbc decrypt with iv=0 the encrypted ECDSA private key, located at certificate offset 0x88.


==== eid0 keyseed 0x6 ====
3) Verify the ECDSA private key by using the ECDSA public key at certificate offset 0x10. See KIRK command 0x10 on PSP or PS3 wiki (same constant public key and curve).


<pre>
* Location: pspemudrm (KIRK)
3AB0E6C4ACFFB629362FFBBBDBC854BC
</pre>


Taken from: pspemudrm (kirk)
=== EID1 ===


==== eid0 keyseed 0xA ====
==== EID1 individuals seed (SD) ====


<pre>
<pre>
30B0395DC5835AAA3A7986B44AFAE684
0AB7611E56DA45076B46129718F5C80E
80BFFBA1800145BF2F1C02F7C011FDE8
E486A45215B5FFFF432DD7F7DFF0C47D
989ADED904DD987FC93BD735DA114397
</pre>
</pre>


Taken from: aim_spu_module.self
* Location: {{SD}} sc_iso.self/sc_iso_factory.self
 
=== eid1 ===


Used for individual SYSCON information.
==== EID1 individuals seed ====
 
==== eid1 individuals seed ====


<pre>
<pre>
Line 74: Line 91:
</pre>
</pre>


Taken from: sc_iso.self/sc_iso_factory.self
* Location: sc_iso.self/sc_iso_factory.self/ss_sc_init.self
 
==== Time EID1 seed ====
 
<pre>
A8DCAB3577F30F7B81C788B80446B03F
C240BD9F72BBFC7268E4E688C1C24F6E
EF100F2B53199715A99C3E4794487073
74CE56F619FBD2486115A2FBA4F5FBB4
</pre>


=== eid2 ===
* Location: from all decrypted EID1, offset 0x110, size 0x40


Used for individual bluray information.
=== EID2 ===


==== eid2 individuals seed ====
==== EID2 individuals seed ====


<pre>
<pre>
Line 89: Line 115:
</pre>
</pre>


Taken from: fdm_spu_module.self
* Location: fdm_spu_module.self


==== eid2 DES key ====
==== EID2 DES key ====
<pre>
6CCAB35405FA562C
</pre>


Taken from: fdm_spu_module.self
<pre>6CCAB35405FA562C</pre>


==== eid2 DES iv ====
* Location: Lv2diag.self for BD remarry


<pre>
==== EID2 DES IV ====
0000000000000000
</pre>


Taken from: fdm_spu_module.self
<pre>0000000000000000</pre>


=== eid3 ===
* Location: Lv2diag.self for BD remarry


Used for individual CPRM information.
=== EID3 ===


==== eid3 individuals seed ====
==== EID3 individuals seed ====


<pre>
<pre>
Line 119: Line 140:
</pre>
</pre>


Taken from: CprmModule.spu.isoself
* Location: CprmModule.spu.isoself


==== eid3 keyseed ====
==== EID3 seed ====


<pre>
<pre>5FFF3FD81E18B956DAE4E6D3368297EF</pre>
5FFF3FD81E18B956DAE4E6D3368297EF
</pre>


Taken from: CprmModule.spu.isoself
* Location: CprmModule.spu.isoself


==== eid3 static key ====
==== EID3 static key ====


<pre>
<pre>D99406CA4BF30750436A454736834589</pre>
D99406CA4BF30750436A454736834589
</pre>


Taken from: CprmModule.spu.isoself
* Location: CprmModule.spu.isoself


=== eid4 ===
=== EID4 ===


Used for individual bluray auth information.
==== EID4 individuals seed ====


==== eid4 individuals seed ====
<pre>
<pre>
3EC20C17021901978A2971793829D308
3EC20C17021901978A2971793829D308
Line 149: Line 165:
</pre>
</pre>


Taken from: sv_iso_spu_module.self
* Location: sv_iso_spu_module.self


== HDD Specific ==
== HDD Specific ==
Line 162: Line 178:
</pre>
</pre>


Taken from: sb_iso_spu_module.self
* Location: sb_iso_spu_module.self
 


=== ATA tweak individuals seed ===
=== ATA tweak individuals seed ===
Line 172: Line 187:
</pre>
</pre>


Taken from: sb_iso_spu_module.self
* Location: sb_iso_spu_module.self


=== ENCDEC data individuals seed ===
=== ENCDEC data individuals seed ===
Line 182: Line 197:


=== ENCDEC tweak individuals seed ===
=== ENCDEC tweak individuals seed ===
<pre>
<pre>
02083292C305D538BC50E699710C0A3E
02083292C305D538BC50E699710C0A3E
Line 189: Line 205:
=== Arcade/SYSDBG Seeds ===
=== Arcade/SYSDBG Seeds ===


====ATA data/tweak====
==== ATA data/tweak ====


<pre>
<pre>
Line 196: Line 212:
</pre>
</pre>


====ENCDEC data====
==== ENCDEC data ====
 
<pre>
<pre>
D2BCFF742D571A80DFEE5E2496D19C3A
D2BCFF742D571A80DFEE5E2496D19C3A
6F25FA0FC69764CAC20F4269EB540FD8
6F25FA0FC69764CAC20F4269EB540FD8
</pre>
</pre>
====ENCDEC tweak====
 
==== ENCDEC tweak ====
<pre>
<pre>
C19C7F987EDB6E244B07BEDEFA1E6CC9
C19C7F987EDB6E244B07BEDEFA1E6CC9
Line 209: Line 227:
== PS2 Emu Specific ==
== PS2 Emu Specific ==


Used for ps2 memory card save generation
Used for ps2 memory card save generation.


=== mc_iso individuals seed ===
=== mc_iso individuals seed ===
Line 220: Line 238:
</pre>
</pre>


Taken from: mc_iso_spu_module.self
* Location: mc_iso_spu_module.self
 


=== me_iso individuals seed ===
=== me_iso individuals seed ===
Line 232: Line 249:
</pre>
</pre>


Taken from: me_iso_spu_module.self
* Location: me_iso_spu_module.self


== Syscon Specific ==
== Syscon Specific ==
Line 247: Line 264:
</pre>
</pre>


=== sc_iso module seed {{SD}} ===
=== sc_iso module seed (SD) ===
 
<pre>
<pre>
0A B7 61 1E 56 DA 45 07 6B 46 12 97 18 F5 C8 0E
0AB7611E56DA45076B46129718F5C80E
80 BF FB A1 80 01 45 BF 2F 1C 02 F7 C0 11 FD E8
80BFFBA1800145BF2F1C02F7C011FDE8
E4 86 A4 52 15 B5 FF FF 43 2D D7 F7 DF F0 C4 7D
E486A45215B5FFFF432DD7F7DFF0C47D
98 9A DE D9 04 DD 98 7F C9 3B D7 35 DA 11 43 97
989ADED904DD987FC93BD735DA114397
</pre>
</pre>


Line 258: Line 276:


<pre>
<pre>
63 DC A7 D3 FE E4 7F 74 9A 40 83 63 F1 10 4E 8F auth_1 0x00
63DCA7D3FEE47F749A408363F1104E8F auth_1 0x00
4D 10 09 43 24 00 9C C8 E6 B6 9C 70 32 8E 34 C5 auth_2 0x00
4D10094324009CC8E6B69C70328E34C5 auth_2 0x00
D9 79 49 BA D8 DA 69 D0 E0 1B F3 15 23 73 28 32 auth_1 0x01
D97949BAD8DA69D0E01BF31523732832 auth_1 0x01
C9 D1 DD 3C E2 7E 35 66 97 E2 6C 12 A7 B3 16 A8 auth_2 0x01
C9D1DD3CE27E356697E26C12A7B316A8 auth_2 0x01
72 FF 4C 7F D2 A5 90 8D 6C 9C 3F D3 C0 37 FE EB auth_1 0x02
72FF4C7FD2A5908D6C9C3FD3C037FEEB auth_1 0x02
FA 8D 08 3C 05 20 80 D4 A1 94 53 45 2E 17 9A 44 auth_2 0x02
FA8D083C052080D4A19453452E179A44 auth_2 0x02
35 F8 42 12 95 CB F4 84 E0 6A 17 FA 2F B9 86 86 auth_1 0x03
35F8421295CBF484E06A17FA2FB98686 auth_1 0x03
C2 F3 68 5E 7E F4 97 68 33 7B 79 FD BC 82 65 BE auth_2 0x03
C2F3685E7EF49768337B79FDBC8265BE auth_2 0x03
C6 E1 93 31 FC 6D 75 D1 C2 80 09 13 D1 79 3C 7E auth_1 0x04
C6E19331FC6D75D1C2800913D1793C7E auth_1 0x04
77 1A 75 5F 40 2D 51 96 D0 2A 0D 09 2B EF E0 1E auth_2 0x04
771A755F402D5196D02A0D092BEFE01E auth_2 0x04
B1 17 01 62 9E D2 FA 91 8F 9F 4D 8B 78 D7 2D 74 auth_1 0x05
B11701629ED2FA918F9F4D8B78D72D74 auth_1 0x05
19 93 0D E0 B6 FD CF FC 7B A6 30 B8 2D 53 04 31 auth_2 0x05
19930DE0B6FDCFFC7BA630B82D530431 auth_2 0x05
44 20 ED 72 2F EA 35 02 19 55 AB 40 C7 8E E6 DF auth_1 0x06
4420ED722FEA35021955AB40C78EE6DF auth_1 0x06
3E 67 C2 D9 43 2E 15 D0 9B EF 0E 6C 64 92 45 5D auth_2 0x06
3E67C2D9432E15D09BEF0E6C6492455D auth_2 0x06
5F A6 AF 2B B0 7F 72 E2 AB F8 0B 4E F6 DA 98 E0 auth_1 0x07
5FA6AF2BB07F72E2ABF80B4EF6DA98E0 auth_1 0x07
8C B7 82 E5 3E 8A EB 8A 76 8D 36 65 98 28 1B 9B auth_2 0x07
8CB782E53E8AEB8A768D366598281B9B auth_2 0x07
</pre>
</pre>


Size 256<br>
* Size: 256 bytes


=== secure_com_lib_internal_key::session_key_create_key ===
=== random xseed ===


<pre>
<pre>
9F 1D F8 16 BB 4A 4A 01 29 D0 31 CF B0 AD 9B 30 0x00
AB19502586A381E670D34F560EAAF31A20475903
D3 02 FD E1 75 78 FB DB A1 05 84 49 BA 5C 1B EA 0x01
0E 6B 74 80 E5 CE B2 56 2A 33 47 BB 41 01 24 55 0x02
79 10 AC 5D 2A D1 60 01 F6 A2 78 39 79 09 61 03 0x03
E3 05 28 04 B7 D2 83 6F 28 79 A1 75 1B B4 0D 48 0x04
EF 58 6F 9D 59 91 70 67 68 50 59 0B A6 7D 4B C7 0x05
5D 95 98 63 7A F2 5F 80 23 62 3B 12 68 B5 13 1A 0x06
0E AA 32 14 0A 28 61 D8 65 96 26 F6 CE 22 86 DB 0x07
</pre>
</pre>


=== secure_com_lib_internal_key::time_key ===
Used for generating a random number through the use of ch74.
 
<pre>
E3 EF DE 98 7E 4A 2D 3F 8C F7 B3 B6 0E 84 6B 21 0x00
4A B0 26 66 4E 9D 02 F5 3E FF 95 44 54 9B 1F 97 0x01
7E CA 7F 29 98 91 F1 B2 43 11 9E 35 AE 94 C3 DE 0x02
E0 B7 A0 86 7C F4 49 23 BA E6 5E 33 86 46 0C 80 0x03
</pre>


=== data key seed ===
=== data key seed ===


<pre>
<pre>
73 68 65 72 77 6F 6F 64 5F 73 73 5F 73 65 65 64 "sherwood_ss_seed"
73686572776F6F645F73735F73656564 "sherwood_ss_seed"
</pre>
</pre>


Line 309: Line 313:


<pre>
<pre>
73 73 5F 73 65 65 64 5F 6F 6E 65 5F 6D 6F 72 65 "ss_seed_one_more"
73735F736565645F6F6E655F6D6F7265 "ss_seed_one_more"
</pre>
</pre>


=== vtrm keyseed ===
=== vtrm key seed ===


<pre>
<pre>
6B 65 79 73 65 65 64 5F 66 6F 72 5F 73 72 6B 32 "keyseed_for_srk2"
6B6579736565645F666F725F73726B32 "keyseed_for_srk2"
</pre>
</pre>


Line 321: Line 325:


<pre>
<pre>
73 65 65 64 5F 66 6F 72 5F 62 61 63 6B 75 70 00 "seed_for_backup."
736565645F666F725F6261636B757000 "seed_for_backup."
</pre>
</pre>


=== eEID1 fallback ===
== eEID1 fallback ==


<pre>
<pre>
84 DE DB 60 1C BF E2 4C 17 DD C7 BD 1B 46 64 06
84DEDB601CBFE24C17DDC7BD1B466406
01 26 A3 15 C5 48 FD D5 6C 0D F6 DE 19 66 70 79
0126A315C548FDD56C0DF6DE19667079
CB 21 56 6A 84 CA FE 5C C8 83 F5 25 5E 95 86 E4
CB21566A84CAFE5CC883F5255E9586E4
4C 02 AC 72 01 D6 9D 2F 62 74 E8 69 18 BE 27 03
4C02AC7201D69D2F6274E86918BE2703
4A 86 71 4B 7D 12 21 70 D4 5E 31 7F 97 D1 73 E7
4A86714B7D122170D45E317F97D173E7
61 55 06 00 07 25 FD E9 6E E7 AC A3 91 D0 6F 73
615506000725FDE96EE7ACA391D06F73
3B 24 EA BA 2D CB 71 B6 AE C2 AB 4B 80 9A BD 09
3B24EABA2DCB71B6AEC2AB4B809ABD09
B8 B7 ED D3 36 1C C1 F3 B7 1D A9 96 17 B7 DC 01
B8B7EDD3361CC1F3B71DA99617B7DC01
51 8E 3B 27 16 48 16 AC F9 C8 91 57 B0 7B B6 C8
518E3B27164816ACF9C89157B07BB6C8
63 3D 8D D1 CF CE 1E 15 AE D0 70 83 E3 8E 8E BB
633D8DD1CFCE1E15AED07083E38E8EBB
14 51 38 B3 BA 0E 24 0F 3A 7E 77 67 8D 9D 29 61
145138B3BA0E240F3A7E77678D9D2961
BD 12 3E 04 5C 9C 0C 58 A9 A0 3E B8 94 0A 1B 99
BD123E045C9C0C58A9A03EB8940A1B99
75 A1 EE 8E 57 5A DF D8 81 1B DE 09 B0 98 ED 38
75A1EE8E575ADFD8811BDE09B098ED38
F8 7F 7D C5 57 61 84 12 C8 27 EF 32 FD 52 15 D0
F87F7DC557618412C827EF32FD5215D0
20 90 0F 5D 2D F6 C1 BA 52 CB 1B 2E 5D BC 03 10
20900F5D2DF6C1BA52CB1B2E5DBC0310
5C 91 D0 11 F8 F2 32 DD 14 CF A4 E9 A3 10 80 69
5C91D011F8F232DD14CFA4E9A3108069
DF A8 8A 3C 2E 27 CB 48 92 E8 07 47 94 B3 2C F4
DFA88A3C2E27CB4892E8074794B32CF4
B7 8E C1 E9 E6 A8 3E CC 28 01 82 E2 9E 22 ED CE
B78EC1E9E6A83ECC280182E29E22EDCE
A0 A8 BA 86 FF 43 04 C4 88 A8 BD 46 1A 9B 2D 6F
A0A8BA86FF4304C488A8BD461A9B2D6F
E5 6C 43 5F 84 1C 56 1E 0E 72 4F 6C ED F3 85 05
E56C435F841C561E0E724F6CEDF38505
1E BB 41 2C B7 BB D3 95 D5 6F D5 15 78 2C 59 57
1EBB412CB7BBD395D56FD515782C5957
B6 87 26 3D F0 F4 E5 35 3B BA D5 2C CE 4C 63 4F
B687263DF0F4E5353BBAD52CCE4C634F
84 26 63 A9 06 ED 14 31 97 46 A9 1F C6 3E 55 6A
842663A906ED14319746A91FC63E556A
60 42 6A B2 28 36 79 45 0F 76 05 4E 0E B3 9F 22
60426AB2283679450F76054E0EB39F22
F9 28 81 B4 9D 98 11 F8 46 E3 92 FB 66 05 6D CB
F92881B49D9811F846E392FB66056DCB
26 7A A1 00 94 FD 26 2D 12 1B 55 76 A0 E6 C0 F1
267AA10094FD262D121B5576A0E6C0F1
58 DE F5 5F 71 0C 78 9D 8E D7 8C DE 4E 6A D6 F8
58DEF55F710C789D8ED78CDE4E6AD6F8
2D 9F 81 80 B8 C0 50 D9 B1 84 7B C5 08 03 D3 A4
2D9F8180B8C050D9B1847BC50803D3A4
5C B1 17 8E 02 41 C3 9A C3 AA 77 55 8B A9 65 67
5CB1178E0241C39AC3AA77558BA96567
7E EC BF 20 4F 07 60 EC D9 76 FE 20 AE 97 BA 5C
7EECBF204F0760ECD976FE20AE97BA5C
41 50 D9 D7 EA 9A C4 C2 86 E6 3C 21 FB DC E9 03
4150D9D7EA9AC4C286E63C21FBDCE903
B6 AD 8E DA 66 3C 26 6A 1B 8F 81 F8 43 A1 C9 19
B6AD8EDA663C266A1B8F81F843A1C919
58 56 F9 0C B7 39 0E BD B5 A0 00 D8 7F 4E 26 19
5856F90CB7390EBDB5A000D87F4E2619
CD A4 36 05 9F D3 72 3C 3B 6D A6 57 E6 D9 36 D8
CDA436059FD3723C3B6DA657E6D936D8
EA 51 72 14 BA 33 6B 9B 57 91 28 40 AF 8A 3E 76
EA517214BA336B9B57912840AF8A3E76
EA 71 5E E9 79 F0 3A 98 57 AA 35 8E 83 B4 5E 0E
EA715EE979F03A9857AA358E83B45E0E
8F C7 97 DF 99 27 B0 E9 33 EA 33 EB A1 59 22 31
8FC797DF9927B0E933EA33EBA1592231
E3 4C 8E 3E 54 C9 8E 27 C2 E3 AB 69 CC 0E 45 F1
E34C8E3E54C98E27C2E3AB69CC0E45F1
AD 1B C8 B5 3D 9F 87 10 7F 3F B7 BB 1B 5E 26 B2
AD1BC8B53D9F87107F3FB7BB1B5E26B2
B7 10 59 31 54 50 5C F2 1A 36 E2 E5 78 23 D5 BE
B710593154505CF21A36E2E57823D5BE
0D 5D 3A B4 CD 04 B1 C2 7A 74 BE E0 2E 6D 25 F4
0D5D3AB4CD04B1C27A74BEE02E6D25F4
</pre>
</pre>


= Notes =
=== eEID1 fallback decrypted ===
 
* libeeid / ps3hdd_poc / ps3_decrypt_tools were adapted for this. so use them
* you'll need eid_root_key, hdd image and eid
* the seeds are spreaded all over the wiki, so it's nice to have a spot where you can look at the seed you wish :)
* many thanks to fail0verfl0w for this. gotta love the print_hash function :3
* https://github.com/zecoxao/ps3_decrypt_tools tools for decrypting and encrypting.
* Regarding syscon, there are two chunks of data, one located at ss_sc_init and the other at sc_iso with sizes 0x290 and 0x280 respectively. one is after keyseed_for_srk2 and the other is between k4 and k5.
* ss_sc_init contains fallback EID1 of size 0x290 bytes.
 
= References =


[http://pastie.org/2858016 THE PLACEHOLDER] <- this curious pastie contains the first 4 bytes of several keys/seeds
<pre>
<pre>
1st-eid2 indiv seed
1E05FC2C1A5C5512E0604252C7A3C942
2nd-eid0 indiv seed
9E6C2A490A6543914510071EC93987BB
3rd-eid1 indiv seed
3BF1CDB740E234FE7D9A9444FC53E3AB
4th-eid4 indiv seed
57548976BA11018074C3FF2ADD1A469A
5th-ata data seed
680EDC509AD0CBC6C90CEA843905482A
6th-me iso indiv seed
BEAB40BA985E134492FD8FC1487DC828
7th-mc iso indiv seed
0EEF78B26AD1A241C38C743BB344DAFE
1A0B7E797669107B673A95C4617AF0EC
3E600567DC98B61CFB44F5972086CD38
C36D5EC828F2D81476302FED32FC2E83
162FA5D83931BFE1154321CDAA240C6C
38B27DF52F81E0069F906075EDB6E739
4EE82A46A9729A68728735DFC9C9F461
A29CD185CC02CF9EB37BDD83D0ABA0AA
BA9D51FBD95F88E3CBDDD2300E51F086
3A059B178EB657C8E793473B0CC3298B
E9AF9924FDD6BCD0E7D3B43161DDF8BF
A8DCAB3577F30F7B81C788B80446B03F
C240BD9F72BBFC7268E4E688C1C24F6E
EF100F2B53199715A99C3E4794487073
74CE56F619FBD2486115A2FBA4F5FBB4
5900A06CB88F39D4D2B430B299EA6910
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
</pre>
</pre>


[http://www.ps3devwiki.com/wiki/Iso_module isolated modules] <- used as reference for eid specific seeds, amongst others
* Decrypted with flash key 0x10.


= What's inside: =
= Notes =


== Each EID0 Section (0xC0 bytes) ==
* There are some tools that to work with these seeds: libeeid / ps3hdd_poc / ps3_decrypt_tools.
* https://github.com/zecoxao/ps3_decrypt_tools Up-to-date tool for EID decryption and encryption.
* The seeds are scattered all over the wiki, so it's nice to have a spot where you can look at the seed you wish :)
* Many thanks to fail0verfl0w for this. Gotta love the print_hash function :3


{|class="wikitable"
* Regarding Syscon, there are two chunks of data, one located at ss_sc_init and the other at sc_iso with sizes 0x290 and 0x280 respectively. one is after keyseed_for_srk2 and the other is between k4 and k5.
|-
* ss_sc_init contains fallback EID1 of size 0x290 bytes.
! Description !! Length !! Note
|-
| Data || 0x38 || contains the actual data of the file
|-
| R || 0x14 || part of the ecdsa signature pair (r,s)
|-
| S || 0x14 || part of the ecdsa signature pair (r,s)
|-
| public key || 0x28 || ecdsa public key
|-
| random padding ? || 0x8 || common between a retail and a true convert dump, probably padding
|-
| unknown || 0x18 || unknown
|-
| omac/cmac1 || 0x10 || hash of the previous information in CMAC1/OMAC mode
|-
| padding || 0x8 || zero byte padding
|}


[http://pastie.org/6169158 Source of the information]
* [https://web.archive.org/web/20141118233711/http://pastie.org/2858016 THE PLACEHOLDER]. This curious pastie contains the first 4 bytes of several keys/seeds:
<pre>
1st line - EID2 individuals seed
2nd line - EID0 individuals seed
3rd line - EID1 individuals seed
4th line - EID4 individuals seed
5th line - ata data seed
6th line - me iso indiv seed
7th line - mc iso indiv seed
</pre>


== EID1 (0x2A0 bytes) ==
= References =
 
This is, quite possibly, one of the most important EID parts in the system. Since the seed was found on syscon selfs, it's very likely that this is directly associated with SYSCON itself.
Unfortunately, there is no way to know because there are additional layers of cryptography inside it.
 
== EID2(0x730 bytes) ==
http://www.psdevwiki.com/ps3/Hypervisor_Reverse_Engineering#Remarrying
{|class="wikitable"
|-
! Description !! Length !! Note
|-
| Header || 0x20 ||
|-
| Pblock || 0x80 || contains bd drive info
|-
| Sblock || 0x690 || contains bd drive info
|}
 
== EID3(0x100) ==
http://www.psdevwiki.com/ps3/Hypervisor_Reverse_Engineering#Communication
{|class="wikitable"
|-
! Offset !! Description !! Length !! Note
|-
| 0x00 || Header || 0x20 || contains ckp_management_id, size of cprm keys + sha1 digest + padding and nonce
|-
| 0x20 || cprm player keys || 0xB8 ||
|-
| 0xD8 || sha1 digest || 0x14 || sha1 digest of previous section
|-
| 0xEC || padding || 0x4 ||
|-
| 0xF0 || omac1 digest || 0x10 || omac1 digest of whole eid3
|}
 
== EID4(0x30) ==
 
{|class="wikitable"
|-
! Description !! Length !! Note
|-
| Drive Key 1 || 0x10 || Encrypts data sent from host to bd drive
|-
| Drive Key 2 || 0x10 || Decrypts data sent from bd drive to host
|-
| CMAC/OMAC1 || 0x10 || Hash of the previous bytes in CMAC/OMAC1 mode
|-
|}
 
== EID5 (0xA00) ==
 
The largest and quite possibly the most important EID of all 6. It's unknown what is inside this specific EID. We'll probably never know what's inside it without analyzing every possible clue about the PS3. And even then, it might be impossible to find it's real use. It's size is similar to EID0, but it has an aditional 0x1A0 bytes.
 
=== Theory ===


==== 0x40 bytes Header ====
[[Iso_module|Isolated modules]] <- used as reference for EID specific seeds, amongst others


{|class="wikitable"
|-
! Description !! Length !! Note
|-
| header(idps) || 0x10 || idps
|-
| unk(static) || 0x2 || 00 12
|-
| unk2(static) || 0x2 || 00 0B (eid0) 00 02(request_idps) 07 30 (eid5)
|-
| perconsole nonce || 0xC ||
|-
| unk3(changes) || 0x20 ||
|}


==== Content ====
{|class="wikitable"
|-
! Description !! Length !! Note
|-
| sections || 0x9C0 || 13 sections of 0xC0 bytes each (copy of the 11 sections in EID0 and two sections dedicated to bootldr and metldr respectively)
|-
|}
{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude>
{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude>

Latest revision as of 14:21, 14 May 2021

Source of the PS3 seeds[edit | edit source]

The seeds presented on this page were acquired through different means. It started with a simple search (which I have to thank glevand and naehrwert for, as had it not been for those guys, I wouldn't have found myself the confidence to post this) and it went through several people who helped me along the way, and who probably wish to stay anonymous.

Seeds[edit | edit source]

Common[edit | edit source]

Common individuals seed[edit | edit source]

59302145AC09B1EFE69E9B7A25FF8F86
E9F6814D37DE204D29729B8416BAEDE4
227098657F298CDB6A9B5E59E4A4BA2F
8E6A740E1FC1E3E935DDD2F66CDEDD6B
  • Used on old firmwares, possibly for an old EID0 format (or fallback?) which can be 0x20 or 0x28 bytes in size. Decrypted section is always the same.
  • See comments.
  • Location: isoldr/appldr/lv1ldr

eEID[edit | edit source]

EID0[edit | edit source]

EID0 individuals seed[edit | edit source]

ABCAAD1771EFABFC2B921276FAC2130C
37A6BE3FEF82C79F3BA5733FC35A690B
08B358F970FA16A3D2FFE2299E841EE4
D3DB0E0C9BAEB51BC7DFF10467472F85
  • Location: aim_spu_module.self/isoldr/appldr/lv1ldr/spu_token_processor.self/spu_utoken_processor.self

EID0 section 0 seed for enc/dec + CMAC (Kirk command 0x12)[edit | edit source]

2ED7CE8D1D55454585BF6A3281CD03AF
  • Location: aim_spu_module.self

EID0 section 6 seed for enc/dec + CMAC (Kirk command 0x12)[edit | edit source]

3AB0E6C4ACFFB629362FFBBBDBC854BC
  • Location: pspemudrm (KIRK)

EID0 section 0xA seed for enc/dec + CMAC (Kirk command 0x12)[edit | edit source]

30B0395DC5835AAA3A7986B44AFAE684
  • Location: aim_spu_module.self

EID0 section 6 seed for encrypted ECDSA private key (Kirk command 0x10)[edit | edit source]

33793B9F79E2EBAE55D4D6BF0ED376E6

Notes:

  • This seed is the equivalent of the PSP Kirk command 0x10 AES128ECB seed (idskey0).
  • EID0 sections 7-0xA use a different and unknown seed.

1) aes-256-ecb encrypt the seed with per-console EID0_key (indiv+0x20) and EID0_iv (indiv+0x10), in order to obtain the 128bit decryption key to decrypt per-console encrypted ECDSA private key.

2) aes-128-cbc decrypt with iv=0 the encrypted ECDSA private key, located at certificate offset 0x88.

3) Verify the ECDSA private key by using the ECDSA public key at certificate offset 0x10. See KIRK command 0x10 on PSP or PS3 wiki (same constant public key and curve).

  • Location: pspemudrm (KIRK)

EID1[edit | edit source]

EID1 individuals seed (SD)[edit | edit source]

0AB7611E56DA45076B46129718F5C80E
80BFFBA1800145BF2F1C02F7C011FDE8
E486A45215B5FFFF432DD7F7DFF0C47D
989ADED904DD987FC93BD735DA114397
  • Location:  SD  sc_iso.self/sc_iso_factory.self

EID1 individuals seed[edit | edit source]

B0D655764C3B44B338F32DD1D0999B66
48A35A2CEB15E28EECDC2DC0B4C7EB05
DC8225C0D5789DBB2E89A24A78585800
72363834EE1A116C2CD25E58EE6763F7
  • Location: sc_iso.self/sc_iso_factory.self/ss_sc_init.self

Time EID1 seed[edit | edit source]

A8DCAB3577F30F7B81C788B80446B03F
C240BD9F72BBFC7268E4E688C1C24F6E
EF100F2B53199715A99C3E4794487073
74CE56F619FBD2486115A2FBA4F5FBB4
  • Location: from all decrypted EID1, offset 0x110, size 0x40

EID2[edit | edit source]

EID2 individuals seed[edit | edit source]

7492E57C2C7C63F44942268FB41C58ED
668341F9C97B298396FA9D82075199D8
BC1A934B374FA38D46AF94C7C33373B3
09572084FE2DE34457E0F8527A34753D
  • Location: fdm_spu_module.self

EID2 DES key[edit | edit source]

6CCAB35405FA562C
  • Location: Lv2diag.self for BD remarry

EID2 DES IV[edit | edit source]

0000000000000000
  • Location: Lv2diag.self for BD remarry

EID3[edit | edit source]

EID3 individuals seed[edit | edit source]

01D0496A3BADD1735570CB29E16FA231
4FA9FD1ABA19A1C69EEA2F4AA607A71C
6FE23EF8DFBB0F2D9D452CD5FAD58B74
5BF8A4A50D8BDB29B2F4BF14C44ADD76
  • Location: CprmModule.spu.isoself

EID3 seed[edit | edit source]

5FFF3FD81E18B956DAE4E6D3368297EF
  • Location: CprmModule.spu.isoself

EID3 static key[edit | edit source]

D99406CA4BF30750436A454736834589
  • Location: CprmModule.spu.isoself

EID4[edit | edit source]

EID4 individuals seed[edit | edit source]

3EC20C17021901978A2971793829D308
0429FA84E33E7F730C1D416EEA25CAFB
3DE02BC005EA490B03E99198F83F101F
1BA34B50589428ADD2B3EB3FF4C31A58
  • Location: sv_iso_spu_module.self

HDD Specific[edit | edit source]

Used for individual hard drive information.

ATA data individuals seed[edit | edit source]

D92D65DB057D49E1A66F2274B8BAC508
83844ED756CA79516362EA8ADAC60326
  • Location: sb_iso_spu_module.self

ATA tweak individuals seed[edit | edit source]

C3B3B5AACC74CD6A48EFABF44DCDF16E
379F55F5777D09FBEEDE07058E94BE08
  • Location: sb_iso_spu_module.self

ENCDEC data individuals seed[edit | edit source]

E2D05D4071945B01C36D5151E88CB833
4AAA298081D8C44F185DC660ED575686

ENCDEC tweak individuals seed[edit | edit source]

02083292C305D538BC50E699710C0A3E
55F51CBAA535A38030B67F79C905BDA3

Arcade/SYSDBG Seeds[edit | edit source]

ATA data/tweak[edit | edit source]

DA73ED9020918F4C0A703DCCF890617B
FFD25E3340009109583C643DF4A21324

ENCDEC data[edit | edit source]

D2BCFF742D571A80DFEE5E2496D19C3A
6F25FA0FC69764CAC20F4269EB540FD8

ENCDEC tweak[edit | edit source]

C19C7F987EDB6E244B07BEDEFA1E6CC9
F08524D98C05654CC742141E01F823E1

PS2 Emu Specific[edit | edit source]

Used for ps2 memory card save generation.

mc_iso individuals seed[edit | edit source]

5238D0FA23A993B8971D400F982D2177
8130DCF4DE7C4E119C1DE286AA37610B
1AB711223F27681659AE6B71F184F9CB
0E00D08AD06AF9F7A1D55F69C71D2B25
  • Location: mc_iso_spu_module.self

me_iso individuals seed[edit | edit source]

F2336E2563B603077A76657126CAE4DB
820E92856B693CE81422E9FB1C1CA5B3
E943388E4B480350AA24A5FBFABFD172
D97A1E25DE3E64A0A7A482528456B174
  • Location: me_iso_spu_module.self

Syscon Specific[edit | edit source]

Used for individual SYSCON authentication.

sc_iso module seed[edit | edit source]

B0D655764C3B44B338F32DD1D0999B66
48A35A2CEB15E28EECDC2DC0B4C7EB05
DC8225C0D5789DBB2E89A24A78585800
72363834EE1A116C2CD25E58EE6763F7

sc_iso module seed (SD)[edit | edit source]

0AB7611E56DA45076B46129718F5C80E
80BFFBA1800145BF2F1C02F7C011FDE8
E486A45215B5FFFF432DD7F7DFF0C47D
989ADED904DD987FC93BD735DA114397

sc_magic::auth_magic[edit | edit source]

63DCA7D3FEE47F749A408363F1104E8F auth_1 0x00
4D10094324009CC8E6B69C70328E34C5 auth_2 0x00
D97949BAD8DA69D0E01BF31523732832 auth_1 0x01
C9D1DD3CE27E356697E26C12A7B316A8 auth_2 0x01
72FF4C7FD2A5908D6C9C3FD3C037FEEB auth_1 0x02
FA8D083C052080D4A19453452E179A44 auth_2 0x02
35F8421295CBF484E06A17FA2FB98686 auth_1 0x03
C2F3685E7EF49768337B79FDBC8265BE auth_2 0x03
C6E19331FC6D75D1C2800913D1793C7E auth_1 0x04
771A755F402D5196D02A0D092BEFE01E auth_2 0x04
B11701629ED2FA918F9F4D8B78D72D74 auth_1 0x05
19930DE0B6FDCFFC7BA630B82D530431 auth_2 0x05
4420ED722FEA35021955AB40C78EE6DF auth_1 0x06
3E67C2D9432E15D09BEF0E6C6492455D auth_2 0x06
5FA6AF2BB07F72E2ABF80B4EF6DA98E0 auth_1 0x07
8CB782E53E8AEB8A768D366598281B9B auth_2 0x07
  • Size: 256 bytes

random xseed[edit | edit source]

AB19502586A381E670D34F560EAAF31A20475903

Used for generating a random number through the use of ch74.

data key seed[edit | edit source]

73686572776F6F645F73735F73656564 "sherwood_ss_seed"

tweak key seed[edit | edit source]

73735F736565645F6F6E655F6D6F7265 "ss_seed_one_more"

vtrm key seed[edit | edit source]

6B6579736565645F666F725F73726B32 "keyseed_for_srk2"

seed for backup[edit | edit source]

736565645F666F725F6261636B757000 "seed_for_backup."

eEID1 fallback[edit | edit source]

84DEDB601CBFE24C17DDC7BD1B466406
0126A315C548FDD56C0DF6DE19667079
CB21566A84CAFE5CC883F5255E9586E4
4C02AC7201D69D2F6274E86918BE2703
4A86714B7D122170D45E317F97D173E7
615506000725FDE96EE7ACA391D06F73
3B24EABA2DCB71B6AEC2AB4B809ABD09
B8B7EDD3361CC1F3B71DA99617B7DC01
518E3B27164816ACF9C89157B07BB6C8
633D8DD1CFCE1E15AED07083E38E8EBB
145138B3BA0E240F3A7E77678D9D2961
BD123E045C9C0C58A9A03EB8940A1B99
75A1EE8E575ADFD8811BDE09B098ED38
F87F7DC557618412C827EF32FD5215D0
20900F5D2DF6C1BA52CB1B2E5DBC0310
5C91D011F8F232DD14CFA4E9A3108069
DFA88A3C2E27CB4892E8074794B32CF4
B78EC1E9E6A83ECC280182E29E22EDCE
A0A8BA86FF4304C488A8BD461A9B2D6F
E56C435F841C561E0E724F6CEDF38505
1EBB412CB7BBD395D56FD515782C5957
B687263DF0F4E5353BBAD52CCE4C634F
842663A906ED14319746A91FC63E556A
60426AB2283679450F76054E0EB39F22
F92881B49D9811F846E392FB66056DCB
267AA10094FD262D121B5576A0E6C0F1
58DEF55F710C789D8ED78CDE4E6AD6F8
2D9F8180B8C050D9B1847BC50803D3A4
5CB1178E0241C39AC3AA77558BA96567
7EECBF204F0760ECD976FE20AE97BA5C
4150D9D7EA9AC4C286E63C21FBDCE903
B6AD8EDA663C266A1B8F81F843A1C919
5856F90CB7390EBDB5A000D87F4E2619
CDA436059FD3723C3B6DA657E6D936D8
EA517214BA336B9B57912840AF8A3E76
EA715EE979F03A9857AA358E83B45E0E
8FC797DF9927B0E933EA33EBA1592231
E34C8E3E54C98E27C2E3AB69CC0E45F1
AD1BC8B53D9F87107F3FB7BB1B5E26B2
B710593154505CF21A36E2E57823D5BE
0D5D3AB4CD04B1C27A74BEE02E6D25F4

eEID1 fallback decrypted[edit | edit source]

1E05FC2C1A5C5512E0604252C7A3C942
9E6C2A490A6543914510071EC93987BB
3BF1CDB740E234FE7D9A9444FC53E3AB
57548976BA11018074C3FF2ADD1A469A
680EDC509AD0CBC6C90CEA843905482A
BEAB40BA985E134492FD8FC1487DC828
0EEF78B26AD1A241C38C743BB344DAFE
1A0B7E797669107B673A95C4617AF0EC
3E600567DC98B61CFB44F5972086CD38
C36D5EC828F2D81476302FED32FC2E83
162FA5D83931BFE1154321CDAA240C6C
38B27DF52F81E0069F906075EDB6E739
4EE82A46A9729A68728735DFC9C9F461
A29CD185CC02CF9EB37BDD83D0ABA0AA
BA9D51FBD95F88E3CBDDD2300E51F086
3A059B178EB657C8E793473B0CC3298B
E9AF9924FDD6BCD0E7D3B43161DDF8BF
A8DCAB3577F30F7B81C788B80446B03F
C240BD9F72BBFC7268E4E688C1C24F6E
EF100F2B53199715A99C3E4794487073
74CE56F619FBD2486115A2FBA4F5FBB4
5900A06CB88F39D4D2B430B299EA6910
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
  • Decrypted with flash key 0x10.

Notes[edit | edit source]

  • There are some tools that to work with these seeds: libeeid / ps3hdd_poc / ps3_decrypt_tools.
  • https://github.com/zecoxao/ps3_decrypt_tools Up-to-date tool for EID decryption and encryption.
  • The seeds are scattered all over the wiki, so it's nice to have a spot where you can look at the seed you wish :)
  • Many thanks to fail0verfl0w for this. Gotta love the print_hash function :3
  • Regarding Syscon, there are two chunks of data, one located at ss_sc_init and the other at sc_iso with sizes 0x290 and 0x280 respectively. one is after keyseed_for_srk2 and the other is between k4 and k5.
  • ss_sc_init contains fallback EID1 of size 0x290 bytes.
  • THE PLACEHOLDER. This curious pastie contains the first 4 bytes of several keys/seeds:
1st line - EID2 individuals seed
2nd line - EID0 individuals seed
3rd line - EID1 individuals seed
4th line - EID4 individuals seed
5th line - ata data seed
6th line - me iso indiv seed
7th line - mc iso indiv seed

References[edit | edit source]

Isolated modules <- used as reference for EID specific seeds, amongst others