Homebrew Official [Download] Decrypt9 - Open Source Decryption Tools (WIP)

  • Thread starter d0k3
  • Start date
  • Views 837,030
  • Replies 4,476
  • Likes 71

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
Okay, question to everyone... what actually do these two options do?
  • SD Padgen
  • Titlekey Decryption
Do they even have any use and what other tools / preparations do you need to actually make them useful? A similarily titled titlekey option in rxTools is responsible for dumping the ticket.db (or so it looks like from the rxTools source code). But these (both options) don't seem to do anything.
 
Last edited by d0k3,

Shadowtrance

Well-Known Member
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
The first is used with decrypting stuff on the sd card.... see sdinfo_gen.py
The second is used for dumping your nand/ticket keys with dump_ticket_keys.py and print_ticket_keys.py which is then used with cdn_download.py (and other tools for downloading from cdn)

So yes, they're both useful and no point removing or whatever and nothing needs to be done to make them useful.
 

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
The first is used with decrypting stuff on the sd card.... see sdinfo_gen.py
The second is used for dumping your nand/ticket keys with dump_ticket_keys.py and print_ticket_keys.py which is then used with cdn_download.py (and other tools for downloading from cdn)
For the ticket_keys stuff you first need to decrypt your NAND, correct? Meaning, you actually need an additional tool (3DSFAT16tool) to use them.
 

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
I see... and rxTools does that all in one (dumping NAND, generating XORpad, decrypting using the XORpad, accessing the NAND). BTW, is there any alternative available for 3DSFAT16tools? I never got that running because of the stupid numpy library requirement in Python.
 

Shadowtrance

Well-Known Member
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
No rxtools just pulls the ticket.db from the nand i believe, there's no generating xorpads, decrypting etc involved.

Not besides doing it all manually yourself i don't think there's an alternative.

Edit: this is how it looks on my screen by the way...
nIjYdi1.jpg
 
Last edited by Shadowtrance,

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
Yeah, that's how I imagined it, too. I also fixed the text from the console overwriting part of the UI with my last pull request (you started this but forgot it in some places), so it should be good now. If there was not my issue, of course. Will try out your latest release now, and give you feedback.

In the meantime...
No rxtools just pulls the ticket.db from the nand i believe, there's no generating xorpads, decrypting etc involved.
I think rxTools does it in part - dump part of the NAND, make the XORpad for that (even if it is just in memory), decrypt what we got, ...

Anyways, I don't even understand how XORpads work (pulling the FAT16 partition from the NAND.bin would be trivial, pulling the ticket.db out of that at least manageable if it was decrypted). XORpads are not simply files of the same size to XOR the encrypted files with, it is not that simple. The rxTools source code is somehow badly readable (no offense meant, roxas75), and I didn't find any better information on 3DBrew. There'S a tool called padxorer, but I haven't found the source code for that. Duh... Do you know of some place with better infos on that?
 
Last edited by d0k3,

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
Clipboard01.png


@Shadowtrance: Nope, still the same problem (that's with your most recent release).

--------------------- MERGED ---------------------------

Technically, it's possible to add an option for dump the ticket.db from the emunand ? Or even sysnand ?
Yup, it is technically possible. The question here is, is anyone of us capable to do so? It also depends on how much information is already available. Source codes by other people are often very difficult to read, and you can't just take them over unchanged, so that's not enough as a reference in many cases, too.
 

DJPlayer

Banned!
Banned
Joined
May 21, 2015
Messages
542
Trophies
0
Age
46
XP
429
Country
Netherlands
Hi :)

what's ncchinfo_tgen.py ? I know for the file without the t, but this file ?
It's for Themes

TL;DR
Use the attached version of decrypt9 (decrypt9-brahma-beautified) for Ninjhax. If you want to generate XORpads for a theme pack, use the attached ncchinfo_tgen.py script to generate the ncchinfo.bin, for game backups use the one Archshift provides. Don't use drag and drop with ncchinfo_tgen.py, it will not work. Use Python v2.7.x to run the scripts, don't install any version >= v3.0 on your computer.
 

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
An update re extending Decrypt9 functionality to include some stuff that now only rxTools does: I have finally learned how XORpads work and, to some extent, even how to create them. Doesn't mean adding rxTools functionality here is a given, but may be a big step forward.
 

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
@Shadowtrance
I have finally found the reason behind the broken design. It is due to to the new Brahma loader. The old one (the one you used for the very first versions of the mod) didn't have that issue for me, and if I replace it with the old loader now, the issue goes away as well. So, I guess I'll have to dig into Brahmas source code now... Is there any chance you still have the source code for the old Brahma loader somewhere?

Also: Nice color scheme (now that I finally see them as intended)! Somehow reminds me of Day of the Tentacle :).

In other news, I found a way to put the complete build process into one Makefile. See here if you are interested. I had to start from "scratch" (meaning, fork from Archshift again), because the new on display output routines required for the future of this tool won't easily fit into your design. Also, that doesn't have the payload loading from memory thing implemented yet.
 
  • Like
Reactions: Melon__Bread

Shadowtrance

Well-Known Member
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
Oh that's weird. I don't have the UI problem you've been having at all as you saw in the pic i posted.
I think i still have the old source here somewhere. Will have to dig around and see if i can find it.
I'm pretty sure the old loader was using the source from this point in time though... https://github.com/patois/Brahma/tree/de92fe00dd8b6fee64f260d00bea2af6d820bc8e
Just before he added the interactive menu stuff.
 
  • Like
Reactions: d0k3

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
Oh that's weird. I don't have the UI problem you've been having at all as you saw in the pic i posted.
I think i still have the old source here somewhere. Will have to dig around and see if i can find it.
I'm pretty sure the old loader was using the source from this point in time though... https://github.com/patois/Brahma/tree/de92fe00dd8b6fee64f260d00bea2af6d820bc8e
Just before he added the interactive menu stuff.
Okay, with this one the display was alright as well. Now, I took a look at the changes Patois did since then, and judging from that, hell will freeze over before I find the reason behind the problem. I also don't want to use an outdated loader, so I guess I'll just open an issue for Brahma and see if Patois has an idea.

EDIT: ... and Patois has disabled the issues function on Github. What to do now? :/
 

d0k3

3DS Homebrew Legend
OP
Member
Joined
Dec 3, 2004
Messages
2,786
Trophies
1
XP
3,896
Country
Germany
A quick update... the less exciting thing first: the display issue is fixed, if you compile from the most recent source code now, everything will a-okay!

And the more exciting thing: I've managed to port the NAND dumper from rxTools over into Decrypt9. This still needs extensive testing, but so far everything looks fine, and I even think that other stuff (such as the partitions dumper or ticket dumper) might be portable as well. More on that later.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    SylverReZ @ SylverReZ: Sup