• Home
  • Downloads
  • EBOOT Fixes
  • Forums
  • New Posts
  • Register
    • Welcome, Register Now! 
    • Premium VIP Membership
    • PS3 Sticky
      • PS3 CFW & MFW
      • PS3 Debug Firmware
      • PS3 Decrypted PSN Links for CFW
      • PS3 Downloads
      • PS3 EBOOT.BIN Original File Links
      • PS3 Firmware
      • PS3 Game Releases List
      • PS3 Guides & Tutorials
      • PS3 Hacking Guides and Tutorials
      • PS3 Hacks & JailBreak
      • PS3 Help & Support
      • PS3 JailBreak Game Compatibility List
      • PS3 JB2 / True Blue (TB) Game Links
      • PS3 multiMAN Updates
      • PS3 Resources
      • PS3 Reviews
      • PS3 Save Files Repository
      • PS3 Themes
      • PS3 Trophies List
      • PS3 Videos
      • PS Vita Trophies List
    • Quick Links
      • Affiliates
      • Contact Us
      • FAQ
      • Post News
      • Site Rules
      • Tag Cloud
 

Slynk on NPDRM Basic Information and a PS3 IDA Tutorial

Category: PS3 Hacks & JailBreak  By: PS3 News - (coderslynk.blogspot.com)
Tags: slynk slynk ps3 ps3 npdrm basic information ps3 ida tutorial ps3 hackers ps3 hacks

101w ago - Today PlayStation 3 hacker Slynk has posted on his new blog some basic PS3 NPDRM information alongside a PS3 IDA (Interactive Disassembler) Tutorial for developers.

Download: IDA PS3 Plug-Ins & Loaders / IDA

Recently he has been working on some PS3 QA Flag developments, and below those interested can find both the PS3 IDA Tutorial and NPDRM details.

From his page: PS3 + IDA Tutorial

Extract the contents into your IDA folder. I don't take credit for these plugins and loaders.

Loading a File

There are two file types I'll teach you to load. SPU and ELF files.

SPU files can only loaded in IDA 32bit mode. When you load IDA choose "Go" and drag the file onto IDA. Make sure elf is highlighted at the top. In processor type, choose "IBM SPU Cell Processor: spu." Click set. Click OK. "Undefined or unknown...blabla" yes. You should be good to go.

Elf files can be loaded in either 32 or 64 bit mode. When you load IDA choose "Go" and drag the file onto IDA. Make sure PlayStation 3 ELF is highlighted at the top. Don't mess with the processor type. Kernel option 1 check "Create function if data xref data-> code32 exists.

Optional: I don't know what these do but I turn them on anyways XD In kernel option 2 choose "Coagulate data segments in the final pass", "Perform 'no-return' analysis", and "Perform full stack pointer analysis."

Click OK. Sometimes you get a better result from running the analyze_self script. (File->IDC File->C:/Program Files/IDA/idc/analyze_self.idc) Hit yes, copy the TOC Address it shows you and click OK. Go to Options->General->Analysis->Processor specific analysis options. Type the TOC address in (I use 0: instead of 0x to be safe. No clue if it makes a difference.) While you're at it click "Create subi instructions. Click OK. Click Reanalyze Program. Click OK. And wait.

You'll know when a script is done because at the bottom left it's say "AU: idle".

IDA Basics

Just a few things. The program is expansive and I'd love to get to know more about it but here's a few things I know. Hex view and IDA view are connected. That means if you find a string in hex view, you can see it in IDA view. This won't show you magically where it's used at but sometimes, that string is xrefed. If under the string you see "# DATA XREF: " you can right click the ": off_XXXX" at the end, and choose XREF To or From. To, will give you a graph of any functions that have a call "to" that offset. From give's a graph of offset's called "from" that offset (mostly only useful for viewing a graph of where all a function leads to.)

In IDA view, you can search for either an immediate value, a string, or a byte sequence. I've never "not" checked "find all occurrences." Don't know why you wouldn't want to. It'll return a list of occurrences in its own window.

If you're lucky, the file you scanned will have some of the functions named (something other than sub_, nullsub_, or start). These are known functions that are defined in the ps3 sdk.

When exiting, always make sure, unless you WANT to re analyze the whole file again, to choose one of the Pack database options and Collect garbage.

NPDRM Basic Info

NPDRM Types

NP 3 is a free licensed app. It has no license check. No edata/riff. Just install and use. This can be trial software as well.

NP 2 is a locally licensed app. First time activation must take place online. After which you'll have an edata/riff for that app and somehow this is connected to your act.dat.

NP1 is a network licensed app. It requires network authentication every time it is launched.

The offset for determining the NPDRM type of a self is at the NPDRM Header offset + 0x1C.

NPDRM Security

NPDRM as well as edata use AES, ECDSA, and CMAC for authenticity. These keys, with the exception of the CMAC key, are out there in the ether and can be found without much effort for someone who knows what they're doing. The specifics of the algorithm are still being researched but a few people have already figured it out; but of course they won't share their info.

AES and ECDSA are handle by appldr like always. CMAC is handle by one of vsh's modules. (Don't know which one, just adding it for completeness.)

Another form of security used in NPDRM is called a k_license. This is a 16 byte key that the developer makes that functions as sort of a "project key". It's used in all npdrm encrypted files within the project to prevent one of the files from being replaced by another project's file. It is also referred to as an SCE NPDRM Key.

NPDRM Header

The current known structure of the NPDRM Header:

typedef struct 
{ 
    byte[4] block_type;  // this is 3(NPDRM) 
    byte[4] block_size;  // this is 0x90(sizeof(Self_NPDRM)) 
    byte[4] unknown1;    // So far always 0 
    byte[4] unknown2;    // So far always 0 
    byte[4] magic;       // 0x4E504400(NPD) 
    byte[4] unknown3;    // So far always 1 
    byte[4] license;     // 1 Network License, 2 Local License, 3 Free 
    byte[4] type;        // 1 Executable, 21 Update for Disc Based Game 
    byte[2] titleid[0x30]; 
    byte[2] hash_unknown[0x10]; 
    byte[2] hash1[0x10]; 
    byte[2] hash2[0x10]; 
    byte[2] padding[0x10]; 
} Self_NPDRM

I hear there's plenty of more info in the official sdk for anyone who legally owns it as well. Anyway, I'll post more if anything else comes to light. ^^






Stay tuned for more PS3 Hacks and PS3 CFW news, follow us on Twitter and be sure to drop by the PS3 Hacks and PS3 Custom Firmware Forums for the latest PlayStation 3 scene updates and homebrew releases!

Comments 5 Comments - Go to Forum Thread »

Errors

The following errors occurred with your submission

Okay

Quick Reply Quick Reply

  • Decrease Size
    Increase Size
  • Wrap [QUOTE] tags around selected text
Posting Quick Reply - Please Wait Posting Quick Reply - Please Wait
Ann0n At0m's Avatar
#5 - Ann0n At0m - 66w ago
Reply
and if one were to have the 4.00 SDK what would he do with it and IDA?

HeyManHRU's Avatar
#4 - HeyManHRU - 101w ago
Reply
Slynk is the MAN.

Sostanco's Avatar
#3 - Sostanco - 101w ago
Reply
good tutorial! thanks

oVERSoLDiER's Avatar
#2 - oVERSoLDiER - 101w ago
Reply
Nice tutorial for everyone who wants to start. Maybe someone can figure out how to change an NP1 PSN game into NP3. As far as I remember, Graf used appldr to decrypt the NPDRM self and make Sonic playable, but that's the only progress I remember in the last months about NPDRM.

DemonSeed's Avatar
#1 - DemonSeed - 101w ago
Reply
Great information! I look forward to the developments this will lead to. I'm sure someone out there is looking at NP 2 somewhat lol. Thank you.

Page 1 of 1 1

Related PS3 News and PS3 CFW Hacks or JailBreak Articles

• PSPMinis / PS3Minis / Bite v1.5.1 Update for PS3 is Now Released
• PS3 Fan Control Utility v1.7 for PS3 CFW CEX 3.41 to 4.41 Arrives
• PSPMinis / PS3Minis / Bite v1.5 for PS3 with PSP Homebrew Support
• PS3 Fan Control Utility v1.6 for PS3 CFW CEX 3.41 to 4.40 Arrives
• OpenSCETool (OSCETool) v0.9.2 By SpacemanSpiff for PS3 is Released
• PUAD GUI v1.5 - PS3 PUP Unpacker, Repacker and Decrypter Out
Affiliates  NewsNow  Privacy  PS3 CFW & MFW  PS3 Hacks & JailBreak  PS3 Reviews  PS3 Videos  © 2013 PlayStation 3 News

PlayStation 3 Links

• Contact Us E-Mail
• PS3 Affiliates
• PS3 CFW & MFW
• PS3 Debug Firmware
• PS3 Decrypted PSN Links for CFW
• PS3 Downloads
• PS3 EBOOT.BIN Original File Links
• PS3 Firmware
• PS3 Game Releases List
• PS3 Guides & Tutorials
• PS3 Hacking Guides and Tutorials
• PS3 Hacks & JailBreak
• PS3 Help & Support
• PS3 JailBreak Game Compatibility List
• PS3 JB2 / True Blue (TB) Game Links
• PS3 multiMAN Updates
• PS3 News Forums
• PS3 News Site FAQ
• PS3 News Site Advertising FAQ
• PS3 News Site Posting FAQ
• PS3 News Site Privacy FAQ
• PS3 News Site Rules
• PS3 News Site Tag Cloud
• PS3 News Site Terms
• PS3 Resources
• PS3 Reviews
• PS3 Save Files Repository
• PS3 Themes
• PS3 Trophies List
• PS3 Videos
• PS Vita Trophies List

PlayStation 3 News Discussions
The Yes/No question thread - 3h ago

mm4dsc's Avatar
Quote No. Will you be traveling out your home country in the next week?...
By mm4dsc with
 2046 Comments »
GTA IV for Rogero 4.40 - 3h ago

Liongooder's Avatar
Quote Here you go: Grand Theft Auto IV: The Complete Edition US http://letitbit.net/download/88501.805e2447bdaf7d6768fd8cafa455/Grand_Theft_Auto_IV_...
By Liongooder with
 5 Comments »
Introductions: Hello Everyone, I'm New at PS3News.com! - 3h ago

aishah001's Avatar
Quote Hello, users. I'm new to the forum & planning on getting a PS Vita. I want to play Ni No Kuni & other games on the system, but I'm worried wit...
By aishah001 with
 6987 Comments »
Introductions: Hello Everyone, I'm New at PS3News.com! - 5h ago

jeantremere's Avatar
Quote Good mornig friends! Eu sou brasileiro e fă de games... Parabéns pelo site!...
By jeantremere with
 6987 Comments »

Latest PlayStation 3 Trophies
PixelJunk Monsters : Encore : Zero Carat
PixelJunk Monsters : Encore : Wishing Well
PixelJunk Monsters : Encore : Scrooge's Return
PixelJunk Monsters : Encore : Black Flag

Latest PlayStation Vita Trophies
Jacob Jones and the Bigfoot Mystery : Low Notes
Jacob Jones and the Bigfoot Mystery : Unjammed
Jacob Jones and the Bigfoot Mystery : Low Roller
Jacob Jones and the Bigfoot Mystery : Quick Packer

Latest PlayStation 3 Releases
Muvluv Alternative Total Eclipse JPN PS3-HR - 05-17-2013
Skate 2 EUR PS3-Googlecus - 05-16-2013
The Walking Dead A Telltale Games Series PS3-COLLATERAL - 05-15-2013
The Cube PS3-ANTiDOTE - 05-14-2013

Latest PlayStation 3 Themes
Wolverine Origins PS3 Theme - 05-11-2013
Heavy Rain (Official) Dynamic PS3 Theme - 05-09-2013
Wipeout HD Fury Dynamic PS3 Theme - 05-06-2013
Batman Arkham City Dynamic PS3 Theme - 05-04-2013
  • Contact Us
  • -
  • PS3 News