[10.0.4対応] HACGUIの使い方

CFW

HACGUI

shadowninja108/HACGUI
A simple interface for extracting Nintendo Switch contents. - shadowninja108/HACGUI

shadowninja108氏が作成した、ニンテンドースイッチのNANDから直接各種キーを抜き出し、それを使ってNANDやSDに保存されているデータを復号してバックアップできるツールのこと。ほぼ同等(あるいは上位互換)の機能を持ったものにNxDumpToolがあるが、それとの比較もおこなっていきたいと思う。

アイコンはめぶいた風メーカーさんから使わせていただきました。規約は目を通したのですが、ブログのアイコンについての記述がなかったので、問題がある場合は連絡をいただければすぐに削除・対応致します。

ちなみになんでアイコン使ったかというと、DiscordのShadow氏のアイコンがこれだからです。それ以外の理由はないです!

NxDumpToolとの違い

ざっくりまとめると以下のような違いがあります。それぞれどういう風に違ってくるのかも解説します。

HACGUINxDumpTool
PCレス不可
CFWレス不可
BCATのダンプ不可
SAVEのダンプ不可
個人証明書の置換不可*
NCAの展開
BANの危険性

PCレス

HACGUIはWindowsで動作するツールですので、パソコンが必ず必要になります。それに対してNxDumpToolはCFWが動作するスイッチ上で動作するプログラムですので、パソコンは不要です。

CFWレス

HACGUIは一度prod.keysを抜き出してしまえばどんなシステムファームウェアからでもデータを抜き出せます。なので初回起動以後にシステムアップデートで使えなくなったりすることはありません。ただ、最初のキーを抜き出すところでlockpickが必要になるので、初回起動時にニンテンドースイッチがlockpickが対応していないバージョンだと、使えないことには注意しなければなりません。

NxDumpToolはHomebrewアプリですのでCFWが動作しないと使うことができないのは当然です。

BCATのダンプ

BCATとはBackground Content Asymmetric synchronized delivery and Transmissionのことであり、バックグラウンドでダウンロードされる軽量のコンテンツだと思っていただければ大体合っているかと思います。これに該当するのがスプラトゥーンのフェス情報やフェスのモデル・マップデータや、ガチマッチやナワバリバトル、サーモンランのシフトのデータなどです。

一度に一ヶ月分くらい送信されるので、これを取得することで将来のシフトがわかるというわけです。

HACGUIはこのBCATの抽出に対応していますが、NxDumpToolは対応していません。

SAVEのタンプ

Checkpointというアプリがある以上、HACGUIでセーブデータを保存することのメリットはあまりないのですが、HACGUIはセーブデータバックアップにも対応しています。

Checkpointが対応していないACNH(あつまれどうぶつの森)などにも対応してると思います、多分。

個人証明書の置換

個人鍵というのはPersonalized Ticketのことで、eShopからダウンロードしたコンテンツ(体験版だけ?)に施されている署名の一つです。

この個人鍵は本体のNANDと結びついているので、仮に自分がSYSNANDでダウンロード・ダンプしたNSPであってもEMUNANDにインストールすると起動時にチェック(2155-8007エラー)で弾かれてしまう場合があります。

EMUNANDとSYSNANDの個別情報(本体の初期化ごとにリセットされる)が異なると起動できなくなります。

この認証システムはNSPが署名されているか(Ticketを含むかどうか)とは無関係なので注意。

これを回避するためににはPersonalized TicketをCommon Ticketに書き換える必要があるのですが、これはNxDumpToolでは “Remove console specific data” という機能でこれに対応しています。

対して、HACGUIではTicketの書き換え機能が存在しないので、例えばSYSNAND(OFW環境)でeShopから正規にダウンロードしたスプラトゥーンの体験版をHACGUIでNSP化し、それをEMUNANDにインストールして遊ぶことは不可能です。

ちなみにこの機能自体は実装可能であるものの「海賊行為を助長する恐れがある」との判断でShadow氏は実装しなかったそうです。

NCAの展開

HACGUIはゲームデータをNSPまたはNCAまたは展開したファイル(Extract partitions)として出力することができ、NxDumpToolも同様にNCA内のファイルを復号してSDカード上に出力することができます。

この点はどちらのツールにも差異はないといって良いでしょう。

BANの危険性

HACGUIはニンテンドースイッチのブートローダ以前の領域で鍵取得をおこない、一度鍵を抽出したあとはRCM状態のスイッチないしはSDカードをパソコンに接続するだけでゲームデータのダンプがおこなえるのでBANの危険性とは皆無です(もちろん、NSPを証明書なしでダンプしてインストールし、オンラインに繋いだりしたらBANされますが、それはHACGUIとはまた別の問題)。

それに対してNxDumpToolはCFWで動作させなければならないという仕様上、少なからずBANの可能性がつきまといます。もちろん適切にCFWを運用していれば良いですが、90DNSの設定が外れていたりすると非常にキケンです。

特に、体験版のデータを抜き出すためにSYSNANDでNxDumpToolを起動する際は最新の注意が必要となるでしょう。

HACGUIの使い方

スイッチを改造できる環境があるのであれば特別な物理的なデバイスは不要です。

必要なもの

HACGUI

GitHubに公開されているものは最新のビルドではないので、Shadow氏が個別にビルドしたものを使います。

Dokan_x64.msi

BCATのデータをマウントする際に必要になりますが、ゲームのデータおよびアップデータをNSP化するだけなら不要です。

ニンテンドースイッチから鍵を抜き出す

最初に、ニンテンドースイッチから固有鍵(Prod.keys)を抜き出す必要があります。ダウンロードしたHACGUIを展開し、HACGUI.exeを右クリックで管理者権限で起動してください。

何も考えずにStartをクリックします。

コンソール名の入力を促されますが、何を入力しても大丈夫です。

ここからの手順は全部で四つです。

  1. スイッチをRCMにし、パソコンと接続する
  2. Send Lockpickをクリックする
  3. スクリーンに表示される指示に従う(必要なら再起動がかかる)
  4. スイッチを再びRCMで起動し、Mount SDをクリックする
RCMのスイッチを接続したところ

RCMのスイッチを接続するとこのようにSend Lockpickなどのボタンがクリック可能になります。このとき、TegraRcm GUIのAuto inject (selected payload)のチェックが入っていると、Lockpickを挿入するよりも前にHekateないしはCFWが起動してしまうのでチェックはオフにしておくなどしておきましょう。

Lockpick_RCMを起動したところ

基本的にはSysNANDからデータを抜きだしたい場合が多いと思うので「Dump from SysNAND」を選択しましょう。

再起動後に各種キーを抽出

ある程度新しいCFWを使っている場合はseptを採用しているので再起動後にキーを抽出してくれると思います。非常に高速なので10秒もあれば完了します。

終わったらメインメニューに戻り、「Reboot RCM」でニンテンドースイッチをRCMで再起動しましょう。

つぎにMount SDを選択してSDカードをPCにマウントします。

マウントしたら「…」を選択し、SDカード直下のswitchフォルダ内のprod.keysを選択しましょう。

選択すれば自動でprod.keysをコピーしてくれます。

このとき、ニンテンドースイッチにはmemloaderを読み込んだ状態になっており、RCMではない特別な状態になっているので電源ボタン長押しで強制電源オフをかけて、RCMジグを使って再びRCMに切り替えます。

そこでNextをクリックすると以下のような画面が表示されます。

「Select file(s)」はダンプしたNANDから鍵を抽出するモードですが、NANDのバックアップをPCにコピーすると30GBも消費するのでわざわざこちらのモードを選択しなくて良いと思います。

ここで抜き出す鍵はさっきLockpickで抜き出したものとはまた異なるので注意!

なので再びmemloaderを使って今度はニンテンドースイッチのNANDをマウントし、鍵を抜き出そうと思います。

Inject for meを選択したところ

五秒くらい待つと鍵の抽出に成功します。たまに失敗するようなので、そのときは最初から再チャレンジしてみてください。

鍵の抽出に成功!

再度HACGUIを管理者権限で起動するとSDカードおよびNANDに保存されているゲームデータが表示されます。

ゲームデータの表示に成功!

セーブデータの項目をみるといろいろ見れますが、こっちに関してはあまりいじらない方が良いでしょう。

ゲームデータのバックアップ

今回はSDカードにインストールされているスプラトゥーン2の5.2.0のアップデータを抽出しようと思います。’

インストールされているバージョンが5.2.0であることがわかるね。

Title Managerからダンプしたいゲームをダブルクリックするとサブウィンドウがひらきます。

TitlesからExtractを選択し、今回はアップデータをダンプしたいのでPatchにチェックを入れます。

こうすることでアップデートパッチをダンプすることができます。

Extractor PickerはRepack as NSP(NSPとしてリパック)を選択しておくと使い勝手が良くていいと思います。

ここはパソコンのスペックやSDカードの転送速度にも依りますが十分くらいでアップデータが抽出できると思います。

BCATデータのダンプ

SavesにあるSaveDataとは別のBcatDeliveryCacheStorageがBCATデータです。これは直接抽出することができず、ファイルシステムをマウントする必要があります。

これには一番最初に説明したdokanのドライバーが必要になるのでインストールしておきましょう。

ここまでできればあとは簡単だと思うので詳細は省略しておきます。

コメント

タイトルとURLをコピーしました