PS4 Release: pkg_pfs_tool by flat_z

PS4 veteran developer flat_z has released pkg_pfs_tool, a set of tools that can unpack PKG/PFS Files, build GP4 projects, and generate the required keys for PS4 pkg file manipulation (unpack/repack).

The tool is released in memory of scene dev Maxton, who sadly passed away this year.

pkg_pfs_tool usage

(note: some options might be disabled depending on sourcecode/compilation parameters. See series of #define at the top of main.c)

COMMANDS
-h, --help                                            help
-i, --info                                  Show information about image
-l, --list                                  List of entries
-u, --unpack   [file1 file2...]    Unpack files from image
-r, --repack   [elfs dir] Repack image file (with plaintext elfs)

OPTIONS
------------------------------------------------------------------------------
--key-content-id                          Use keyset of specific content ID
--content-id                              Replace content ID on repacking
--passcode                                  Use specific passcode
--sealed-key-file                    Use sealed key file for keys generation
--encdec-tweak-key                               Use specific AES XTS tweak key for enc/dec
--encdec-data-key                                Use specific AES XTS data key for enc/dec
--sign-key                                       Use specific HMAC SHA256 key for signing
--sc0-key                                        Use specific Sc0 key for enc/dec
--use-meta-data-file                 Load GP4 meta data from file
--dump-meta-data-file                Save GP4 meta data to file
--pfs-image-data-file             Use plain pfs_image.dat as PFS content of PKG file
--generate-gp4                              Generate GP4 project from PKG file
--unpack-inner-pfs                                    Unpack inner PFS file from PKG file
--unpack-outer-pfs                                    Unpack outer PFS file from PKG file
--unpack-sc-entries                                   Unpack SC entries from PKG file
--unpack-extra-sc-entries                             Unpack extra SC entries from PKG file
--use-splitted-files                                  Use splitted PKG chunks
--no-unpack                                           Don't unpack main PFS files from PKG file
--no-signature-check                                  Skip signature checking
--no-icv-check                                        Skip ICV hash checking
--no-hash-recalc                                      Skip recalculation of hashes on repacking
--no-elf-repack                                       Skip ELFs repacking
--dump-sfo                                            Dump SFO structure from PKG file
--dump-playgo                                         Dump Playgo structure from PKG file
--dump-final-keys                                     Dump final keys to use with the tool
--dump-sd-info                                        Dump SD info
--use-random-passcode                                 Use random passcode for GP4 project
--all-compressed                                      Use compression for all files in GP4 project

Download pkg_pfs_tool

Only the source code (no binary release) is available on the developer’s github. You’ll have to compile the binary yourself for your target system.

Source: Flat_z