Here are some more relevant extracts from the latest blog post:
Mathieulh said...
Good job in managing to use the loaders to decrypt your files, this will definitely be useful
Mathieulh said...
The cell is an off the shelves cpu but the hardware root key can only be written once, from my understanding, the secure boot doesn't occur unless the root key is set, but once it is it becomes mandatory. Also although tempering with the XDR at runtime using hardware would allow us to hack the console in a very effective way, the hardware required to match the xdr bus speed is currently way too expensive to be affordable to most people, making it quite an unefficiant broad hack, not to mention parts of the XDR can be checked by the isolated loader which would make it harder for us to go that route when such time comes.George Hotz said...
Yea, the SPU does check the integrity, but it doesn't matter. 2 options, either predecrypt and patch the binary, or have the SPU decrypt the unaltered version and patch it on the fly before it runs.
And the problem with a direct RAM interface is more the wiring it up than the cost.George Hotz said...
You can decrypt everything except the loaders themselves. If it's ever in the XDR, you can dump it, so all the bus sniffing equipment is useless at this point. The loader decryption happens all on the die of the cell.
But for all practical goals, you don't need the loaders, and for most, you don't even need the loaders to be runable outside GameOS.AnonymousR said...
I never expected to see this from IBM, but thanks for mentioning it, I suspect this is the document you were talking about:
http://domino.watson.ibm.com/library/CyberDig.nsf/papers/0019083255E3732C8525747A0068A14D/$File/rc24596.pdf
It actually seems even cheaper than I imagined (250-700$?). I was expecting a FPGA around the range of 2000$.George Hotz said...
Nah, you'll probably never dump the LS. Hardware security is simple and well understood.
Although, if I was really trying to dump it, I'd try a brownout attack. Lower the power to the chip when the ram is erasing. You only need to get a tiny little part of metldr to get the keys.George Hotz said...
The builders know how to load metldr in an SPU already.
And some people here don't understand the concept of asymmetric cryptography, no matter if you could manipulate the individual electrons in the processor, you can't create your own valid pkg files.George Hotz said...
Understanding ISDF files.
The #Change lines are actually commented out (anything beginning with # is a comment) for now they are less important. Focus on the Parsed lines.
This example describes the instruction il
Lines from file:
1. # Immediate Load Word
2. 010000001 iiiiiiiiiiiiiiii ttttttt
3. Parsed "O R, I" il {{t}} {i}
4. Stop
1. A comment for the reader of the file to know the instruction
2. A bitmask to identify it. 0 and 1 must exist in the instruction. i and t are variables created from those regions.
3. Parsed is how to print the disassembled instruction to the user. The first parameter after Parsed is a format string describing the other parameters. O is opcode, R is register, I is immediate. il is the opcode, t is the register), and i is the immediate. Curly braces around i mean value of. Double curly braces around t mean value of register indexed by variable.
4. Stop parsing, this instruction is done.
13250 HeyManHRU
13207 PS3 News
11287 elser1
11119 oVERSoLDiER
9248 GrandpaHomer
8578 Tidusnake666
7968 saviour07
7340 condorstrike
7258 deank
6858 OGroteKoning
24951 PS3 News
5279 Starlight
2965 HeyManHRU
2173 CJPC
2122 elser1
1818 cfwprophet
1756 her0
1570 oVERSoLDiER
1291 GrandpaHomer
1080 barrybarryk





