General purpose read/extract tool for Nintendo Switch file formats.
Go to file
2018-04-24 17:41:42 +08:00
.vscode [programs] Remove xcitool, npdmtool, pfstool. Add nstool. 2018-04-24 13:24:20 +08:00
lib [programs] Remove xcitool, npdmtool, pfstool. Add nstool. 2018-04-24 13:24:20 +08:00
programs [nstool] Add alternative name to "key_area_key_*": "nca_body_keak_*". 2018-04-24 16:23:29 +08:00
.gitignore Update project metadata 2018-04-07 15:56:38 +08:00
KEYS.md Change readme. Add information about keys. 2018-04-24 17:25:05 +08:00
LICENSE Initial commit 2017-07-03 00:45:58 +10:00
makefile [ncatool] Add program. Can only process header currently. 2017-07-05 18:58:33 +10:00
NXTools.sln [programs] Remove xcitool, npdmtool, pfstool. Add nstool. 2018-04-24 13:24:20 +08:00
NXTools.vcxproj Initial commit of support libraries. 2017-07-03 01:18:59 +10:00
NXTools.vcxproj.filters Initial commit of support libraries. 2017-07-03 01:18:59 +10:00
README.md Fix links in readme. 2018-04-24 17:41:42 +08:00

NXTools

Tools & Libraries for NX (Nintendo Switch).

License

Tools

  • nstool - read *.npdm, read/extract PartitionFS (PFS0|HFS0) blobs (including *.nsp), read *.xci
  • ncatool - read/extract *.nca
  • tiktool - read ticket fields.

Libraries

  • libfnd - Foundation library.
  • libcrypto - Cryptographic functions (AES,SHA,RSA). Wrapper for mbedTLS
  • libes - Handling of (NS relevant) eShop file type processing. (eTickets, etc)
  • libnx - Handling of NS file types

External Keys

Programs/libraries don't embed any keys that are copyright protected. However keys can be imported via a keyset file.

For programs that support it, the keyset file can either be provided via the command line (see program usage for details). Alternatively a keyset file located in $HOME/.switch/prod.keys (or $HOME/.switch/dev.keys for dev) will be imported automatically if one is not provided at the command line.

Keyset files are ASCII text files containing one key per line, in the form "key_name = HEXADECIMALKEY". Case and whitespace do not matter, ';' character can be used to insert comments.

See KEYS.md for more details.