[Release] HACToolGUI - A very simple GUI for HACTool

Updated to Version 0.3a - urgent bug fix because I accidentally completely broke the program.

New:
Official Discord support server!
Source code now available!



Well, in honour of Master_Key_01 and Master_Key_02's release, I present to you...
HACToolGUI!

m0GW3mg.png


It does everything you need to extract XCI, NCA and RomFS files, support for other formats coming soon.

:switch: Features:
Simple to use and easy to understand GUI
Built-in keylist manager (Bring your own keys)
Uses HACTool to extract XCI, NCA and RomFS files
Supports all keys
Choose to dump as plaintext NCA, RomFS or to extract the files to a folder
Tiny filesize; around 120KB decompressed
Portable, no installation required

:switch: Dependencies:
Requires the latest release of hactool.exe and all its .dll files in the same directory.
Get it from here.

SI3CDlT.png

XWmJZx6.png

rjxr1FA.png
Complete v0.3 change list:

  • Added PFS0 support! (Used in .nsp)
  • Automatically fills in the textboxes with keydata from keys.dat when key manager is opened. (Also added a manual option)
  • Drag-and-drop file support added for all extraction types
  • Key manager button added to main screen
  • Internet access no longer required for use; now you can check for updates by clicking the option
  • Remembers last selected NCA extraction option
  • Remembers previous directory used
  • NCA extraction is disabled unless keys are filled and a key file is present
  • Checks for incorrectly formatted keys.dat
  • Quotes no longer required in directory names


Coming soon:
  • Name change
  • The hactool files will not be required, the code will be built into the program
  • Key verification
  • Key derivation, the usual stuff, but will also generate the master_key, package1_key and various others from a supplied keyblob, provided you have the wrapper key for the specific keyblob and the console-unique SBK and TSEC keys
  • Bulk file extraction
  • Support for all other hactool formats, including Rights ID-encrypted NCAs and SD card files
  • Built-in CDN downloader, provide a private key and cert, then add the Title ID, it will get the latest version of the meta file, decrypt the NCA, read the cnmt, get the NCAID of each file and download the NCA of them from the Atum server (provided you have the keys)
  • Various file type extractors (BFSAR, BFRES, BFGRP, SARC, SZS, Yaz0, etc.)
  • Background music (optional)
  • Themes (optional)
  • More easter eggs
 

Attachments

  • HACToolGUI_v0_3a.zip
    88.4 KB · Views: 14,289
Last edited by SimonMKWii,

SimonMKWii

Professional Idiot
OP
Member
Joined
Nov 18, 2017
Messages
666
Trophies
0
Location
Melbourne, Victoria
XP
2,760
Country
Australia
It may seem like a stupid question, but would it be possible to have the original .exe and the .dll resource files all in the 1 program or is this not possible for reasons ?
I could do that as it's under the ISC license, but I'd want @SciresM to approve it, due to the fact I'd be distributing an unofficial build, as it's compiled from the latest commits.
 
  • Like
Reactions: peteruk

XorTroll

Switching between my 2DS and my Switch
Developer
Joined
Dec 28, 2017
Messages
642
Trophies
1
Location
Nowhere
Website
github.com
XP
4,228
Country
Spain
Hey, I managed to find on the internet the master keys, the header key and some other keys, but I can't find anywhere the keks and the sources Any help?
Do I have to do use my Switch to extract them or something?

Never mind, I found a keyset on internet now with all the keys.
 
Last edited by XorTroll,

SocraticBliss

Well-Known Member
Member
Joined
Jun 3, 2017
Messages
130
Trophies
0
Age
36
XP
273
Country
United States
I was just saying, I'm a developer I can easily do this. I just wanted to mention it. And for now it's useless for me so there's a lot of time until a new release happens anyway.

Well, fix it up and submit the code change :)

Apologies if I sounded harsh earlier...
 

b1313515

Member
Newcomer
Joined
May 21, 2017
Messages
14
Trophies
0
XP
54
Country
Does anyone have any suggestions for functionality or design improvement?
I would really like some!
Well here goes some suggestions I thought for functionality.
Add support for titlekeys for .nca update files.
Rebuild a extracted romfs folder back to romfs file.
With those would it be possible in a way to integrate the updates or dlc inside a romfs? maybe kinda similar the way of extracted wiiu games.
 

Perfect One

Well-Known Member
Member
Joined
Jul 13, 2017
Messages
211
Trophies
0
Age
33
XP
684
Country
Brazil
Updated to Version 0.3a - urgent bug fix because I accidentally completely broke the program.

New:
Official Discord support server!
Source code now available!



Well, in honour of Master_Key_01 and Master_Key_02's release, I present to you...
HACToolGUI!

m0GW3mg.png


It does everything you need to extract XCI, NCA and RomFS files, support for other formats coming soon.

:switch: Features:
Simple to use and easy to understand GUI
Built-in keylist manager (Bring your own keys)
Uses HACTool to extract XCI, NCA and RomFS files
Supports all keys
Choose to dump as plaintext NCA, RomFS or to extract the files to a folder
Tiny filesize; around 120KB decompressed
Portable, no installation required

:switch: Dependencies:
Requires the latest release of hactool.exe and all its .dll files in the same directory.
Get it from here.

SI3CDlT.png

XWmJZx6.png

rjxr1FA.png
Complete v0.3 change list:

  • Added PFS0 support! (Used in .nsp)
  • Automatically fills in the textboxes with keydata from keys.dat when key manager is opened. (Also added a manual option)
  • Drag-and-drop file support added for all extraction types
  • Key manager button added to main screen
  • Internet access no longer required for use; now you can check for updates by clicking the option
  • Remembers last selected NCA extraction option
  • Remembers previous directory used
  • NCA extraction is disabled unless keys are filled and a key file is present
  • Checks for incorrectly formatted keys.dat
  • Quotes no longer required in directory names


Coming soon:
  • Name change
  • The hactool files will not be required, the code will be built into the program
  • Key verification
  • Key derivation, the usual stuff, but will also generate the master_key, package1_key and various others from a supplied keyblob, provided you have the wrapper key for the specific keyblob and the console-unique SBK and TSEC keys
  • Bulk file extraction
  • Support for all other hactool formats, including Rights ID-encrypted NCAs and SD card files
  • Built-in CDN downloader, provide a private key and cert, then add the Title ID, it will get the latest version of the meta file, decrypt the NCA, read the cnmt, get the NCAID of each file and download the NCA of them from the Atum server (provided you have the keys)
  • Various file type extractors (BFSAR, BFRES, BFGRP, SARC, SZS, Yaz0, etc.)
  • Background music (optional)
  • Themes (optional)
  • More easter eggs

Is master key 04 properly coded in that your program?

I am using a leaked master key 04 and your program is unable to save it, leaving an empty space when i click to save.
 

SocraticBliss

Well-Known Member
Member
Joined
Jun 3, 2017
Messages
130
Trophies
0
Age
36
XP
273
Country
United States
Is master key 04 properly coded in that your program?

I am using a leaked master key 04 and your program is unable to save it, leaving an empty space when i click to save.


MasterKey4 is not in the current build, you have to edit the code yourself if you want to add it.
 
  • Like
Reactions: Perfect One

XorTroll

Switching between my 2DS and my Switch
Developer
Joined
Dec 28, 2017
Messages
642
Trophies
1
Location
Nowhere
Website
github.com
XP
4,228
Country
Spain
And how do i do that then? And with which program (is notepad++ usable for that)?

A pre-compiled version with that key could be nice, hehe.
For C#/VB programs the best idea is Visual Studio, because you have to compile it later, and Visual Studio is quite simple for that.
 

SocraticBliss

Well-Known Member
Member
Joined
Jun 3, 2017
Messages
130
Trophies
0
Age
36
XP
273
Country
United States
And how do i do that then? And with which program (is notepad++ usable for that)?

A pre-compiled version with that key could be nice, hehe.

Well it's programmed in VB, so I'd recommend using an IDE (I am using Visual Studio 2017). I would have submitted a fix yesterday but it seems like there are some files that are not in the repo that are needed for signing the executable, but I guess I can just submit the changes for the files for MasterKey4...

A pre-compiled wont happen, as the keys are reverse engineered, re-distributing the keys would be highly illegal...
 
Last edited by SocraticBliss,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: https://youtu.be/MddR6PTmGKg?si=mU2EO5hoE7XXSbSr