Skip to content

Commit

Permalink
'v3'
Browse files Browse the repository at this point in the history
  • Loading branch information
euss committed Oct 13, 2011
1 parent 35cc025 commit fc4be4b
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 2 deletions.
25 changes: 24 additions & 1 deletion README_npdrm
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Based off of gitbrew's 215d8903bc86539ca1da53519e2ac10eeafc4c27
ps3tools. .git folder not included to protect senstive info about the author.
ps3tools. .git folder not included to protect sensitive info about the author.
Sorry about the fucked up tabs, TAB = 4 SPACES 4 LYFE!!!
Add the files in the npdrm_keystuff folder to your ps3 keys folder. Create a
file with your console's 16 byte IDPS in the 'idps' file in your ps3 keys
Expand Down Expand Up @@ -33,3 +33,26 @@ Why didn't you beat me to the punch, Team PS360? I didn't need to reverse a
single instruction! It isn't that hard...
</drama>


v3 info:
unself2 now ignores metadata sections of type 3 instead of aborting. Additional
help with any remaining bugs would be greatly appreciated.

I'm sorry if everyone got the impression that these unself/readself
modifications can, by themselves, "reactivate" your NPDRM content. These are
just the first steps in the process. To those who say this is useless because
you need act.dat and rif files: unless you can get unencrypted (debug) or
easily decrypted (free, demos) PSN content, the only way to get the unencrypted
files is by decrypting it with act.dat and the content's rif file. There are
no "crypto fails" here, proper decryption with the true keys is the only way
forward. Using the NPDRM algo with the right keys is the only way to decrypt
unless you let GameOS do it for you and hook into GameOS to either grab
intermediate keys or dump decrypted content. Using hacks to restore the NPDRM
decryption info to jailbroken PS3s is only a partial fix. For instance, unless
you patch vsh or set the SRTC to some time in the past, some content (even
non-demos and non-trials!) expires until you log into PSN and reauthenticate.

<drama>
Sorry about your "technical difficulties", Team PS360. You should L2IRC.
</drama>

3 changes: 2 additions & 1 deletion self.c
Original file line number Diff line number Diff line change
Expand Up @@ -353,7 +353,8 @@ self_load_sections (FILE *in, SELF *self, ELF *elf, ELF_PHDR **phdr,
size = (*section_headers)[i-1].data_size;
(*sections)[i].offset = elf->shdr_offset;
} else {
fail ("Unknown section type");
(*sections)[i].offset = UINT64_MAX;
printf("Section %d unkown type: %d. Skipping!\n", i, hdr->type);
}

(*sections)[i].size = size;
Expand Down
3 changes: 3 additions & 0 deletions unself2.c
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,9 @@ int main(int argc, char *argv[])
}

for (i = 0; i < num_sections; i++) {
if (sections[i].offset == UINT64_MAX) {
continue;
}
fseek (out, sections[i].offset, SEEK_SET);
if (fwrite (sections[i].data, 1, sections[i].size, out) != sections[i].size) {
ERROR (-7, "Error writing section");
Expand Down

0 comments on commit fc4be4b

Please sign in to comment.