Windows用ソフト MOD版 PkgDecrypt v1.1.0.0 をリリースしていました。
・偽ライセンスファイルからzRIFを生成する事が出来るように
・klicensee及びzRIFから偽ライセンスを作成できるように
・展開先でux0のような階層で展開できるように(.../OUTPUT/ux0/app/タイトルID/)
・展開先でタイトルIDのフォルダを作成してそこに展開できるように(.../OUTPUT/タイトルID/)
・DLCのpkgをDLCとして認識するように
・生成されるhead.binのファイルサイズが適切になるように
・その他のバグ修正
が変更点です。ソースコードはweaknespase氏が公開されています。https://github.com/weaknespase/PkgDecrypt
zRIFは偽ライセンスファイルを圧縮,エンコードした文字列の事です。
つまりpkg展開時にzRIFを使う事で、作成されるwork.binは本来の偽ライセンスと100%同じ物になります。
どうもライセンスファイルに含まれるklicenseeだけではpkg展開時に完全な偽ライセンスを作成する事が出来なかったみたいで、
完全な偽ライセンスを作成するためにzRIFが考案されたのだと思われます。
zRIFの生成には"make_key.exe"を使用します。具体的な使用方法は
make_key ファイル名.rif
ファイルの形式はrifでもbinでもどちらでも良いようです。zRIFは外部ファイルとして出力されるのではなく、CUI上に表示されます。
pkgの展開には"pkg_dec.exe"を使用します。使用方法は以下。いくつかオプションが付いたようです。
pkg_dec [--make-dirs=id|ux] [--license=] [--raw] filename.pkg [output_directory]
[--make-dirs=id|ux]は展開先で更にフォルダを作成してそこに展開するオプションです。idを使えばタイトルIDのフォルダが作成され、ux0を使えば".../OUTPUT/ux0/app/タイトルID/"になります。
[--license=]はpkg展開と同時に偽ライセンスを作成するオプションです。klicenseeもしくはzRIFを使用する形になりますが、
klicenseeでは不完全な偽ライセンスになってしまう恐れがある事からzRIFが推奨されます。
[--raw]オプションは「Output fully decrypted PKG instead of unpacking it, exclusive」との事です。
pkg_dec.exeを実際に使う場合はこんな感じです。
pkg_dec --make-dirs=id --license=00000000000000000000000000000000 ファイル名.pkg OUTPUT
