[PS3] PS3のゲームをバックアップしよう

2020/03/25 16:57 PS3 7
PS3XploitによってPS3全モデルがハック対象となり、またPS3エミュであるRPCS3でまともにプレイ出来るゲームが
増えてきた2020年3月現在、そろそろ誰かがPS3のゲームのバックアップについてをまとめるべきではないかと思い、
私の理解を丸々記事にしてみました。誤った情報があればコメントなりTwitterなりで指摘してください。



●目次
この記事はバックアップの方法に焦点を当てた記事となります。
ゲームではありませんが、記事を分けるのが面倒なのでSACDに関しても触れています。
バックアップの活用方法(バックアップ起動)に関してはこの記事では基本的には触れていません。
活用方法のまともな解説を書こうと思うと考えなきゃいけない事が多い(と私は思っている)ので。

CFW/HENの導入に関しては以下の記事をご確認ください。

●[BD] BD版をバックアップする上で知っておきたい事①

①ではBD版をバックアップしたい人全員に知っておいて欲しい事を解説します。
では数は少ないと思いますが、インストール用コンテンツを含んだBDについて解説します。
ではCFW/HENユーザーに知っておいて欲しい事を解説します。①,②の後に読んでください。

まず大前提として、PS3のゲームディスク(以下BD)内のUSRDIRフォルダ(ゲームデータ)は、PS3のBDドライブでのみ
読み込める領域中のdata1と呼ばれるデータから導出可能な鍵で暗号化されています。その鍵はdisc keyと呼ばれます。
そして、BDのメタデータやdata1等をまとめたファイルが、irdです。

PS3のBDをバックアップ起動等に活用出来る形でバックアップする方法としては、大きく4つに分かれます。

  • [CFW/HENのPS3] でバックアップ (もちろんPS3のBDドライブを使用)
    (復号されたバックアップを作成可能)
  • [PC] + [3k3y Ripper] + [PS3のBDドライブ] でバックアップ
    (暗号化状態のバックアップ、復号されたバックアップ、両方作成可能)
  • [PC] + [PS3のBDが読み込めるPC用BDドライブ] でバックアップ後、[ird/data1/disc key] の何れかで復号
    (暗号化状態のバックアップを作成後、復号に必要なird/data1/disc keyを用意して復号されたバックアップを作成)
  • [PC] + [PS3のBDが読み込めるPC用BDドライブ] + [ps3-disc-dumper] を用いてバックアップ
    (復号されたバックアップを作成可能(ネット/埋め込みDBからird/disc keyを取得。取得出来なければ自分で用意)

私は3k3y Ripperを持っているのでこの記事では4つ全てを紹介しますが、2020年3月現在、3k3y Ripperは既に入手が
困難なデバイスとなっているため、多くの人は2つ目以外の方法を取る必要があります。

BDのバックアップの形は3つに分かれます。

  • ISO (USRDIRが暗号化されている)
    ([PC] + [PS3のBDが読み込めるPC用BDドライブ] でバックアップした状態。復号する必要有り)
  • ISO (USRDIRが復号されている)
  • JB folder (JB rip, Folder rip とも呼ばれる) (USRDIRが復号されている)

USRDIRが復号されているかどうかを見分ける一番手っ取り早い方法はEBOOT.BINをバイナリエディタで開く事です。
復号されていればEBOOT.BINの先頭のテキストは SCE になっているはずです。

JB folderはBDをISOにせずファイル,フォルダを(USRDIR復号状態で)丸ごとコピーした形です。
(つまりUSRDIR復号状態のISOを展開した物はJB folderと言えます。JB folderをISOにする事も可能です。)
USRDIRが暗号化状態のJB folderだってあるだろうと思われるかもしれませんが、無い物と思ってください。
CFW/HEN上でBDからISO/JB folderとしてバックアップしない限りはPCを使用する必要がありますが、復号に用いる
ツールはBD/ISOの使用前提です。つまりUSRDIRが暗号化状態のJB folderを用意してしまうと、復号のためにそれを
ISO化するという無駄な作業が増える事になるわけです。大して時間は掛かりませんが、それは確実に無駄です。

JB folderはPS3のハックにおいてCobra(ISOのマウントをサポートしたプログラム)登場以前にバックアップ起動で使用
されていた形式です。多くの人は管理し易くまたBDとしてマウント出来るISOを使用しますが、ファイルの置き換えが
容易な事からJB folderを好んで使用するModderも居たりします。MODにおいてはISOを展開してファイルを置き換え
ISO化するという手法や更新データ(pkg)として作成してインストールするという手法を取る方も居ます。
JB folderはBD(/dev_bdvd)とは異なる処理でゲームを起動する仮想パーティション "/app_home" を使用して起動を
実現しますが、この方法では起動しないゲームもあり、その事からJB folderは起動率が悪いと言われています。
ただCobraが有効な場合、CobraはJB folderもISO同様にBDとしてマウントするため、起動率は高くなります。
(ISOのマウントと同等の起動率になるのかどうか、私は把握していません)
ちなみに、JB folderという用語はPS3のハックの話題の中で使用される事がほとんどだと思いますが、RPCS3で起動に
使用するゲームデータもJB folderと言えます。

PS3はBDのゲームを起動する際にUSRDIRをdisc key(data1から導出)で復号してマウントします。
CFW/HEN上でmultiMANやIRISMANのようなHomebrewを用いてBDをバックアップする場合、BDを復号マウントし、
それを参照してISO/JB folderとして出力します。つまりバックアップはUSRDIRが復号された物になります。
対して市販のPC用BDドライブではdata1が読み込めないため、バックアップはUSRDIRが暗号化状態の物になります。
それをバックアップ起動等で活用する場合はird/data1/disc keyの何れを用意して復号する必要があります。
それらをどうやって用意するのか、というのを解説する上では3k3y Ripperの解説は避けられません。

3k3y RipperはPCでPS3のBDドライブを使用出来るようにするためのアダプタです。
と言ってもただ接続してそれで使えるようになるかと言うと、そうではありません。
PS3のBDドライブの基板はPS3本体に紐付けられており、BDのデータを処理するためにはPS3の本体毎に固有の情報が
収められたEID(Encrypted Individual Data)と呼ばれるデータ中にある鍵を用意しなければいけません
EIDはその名の通り暗号化されており、復号にはCFWでのみ取得可能なeid root keyが必要です。
(HENにはeid root keyにアクセスする権限がありません)
(EIDは6セクションに分かれており、BDドライブに関連するセクションはEID4と呼ばれます)
EID4とeid root keyを用意する事で、3k3y Ripperを通してPCでPS3のBDドライブを扱えるようになります。
ちなみに、3k3y Ripperは基板データを上書きする事でEID4とeid root keyを不要にする機能も備えていますが、その
機能を使用した場合はPS3本体との紐付けが解除されるのでPS3本体に戻す場合はremarryを行う必要があります。

3k3y RipperはPS3のBDドライブ関連の処理をエミュレートしてPS3のBDドライブを機能させるわけなので、data1等
PC用BDドライブでは読み込めないデータも読み込む事が可能です。そこが3k3y Ripperの強みです。
USRDIRを復号されたバックアップを作成可能で、またBDのメタデータ等をまとめたirdファイルの作成も可能です。
data1もirdに格納されます。irdはメタデータ等をまとめた物ですが、基本的にはdata1の取得にしか使用しません。
(また、3k3y Ripperで作成するバックアップ(ISO)には再暗号化/復号/irdの作成のための情報が埋め込まれます)
irdにどのようなデータがまとめられているのかが気になる人はpsdevwikiを確認してください。
https://www.psdevwiki.com/ps3/Bluray_disc#IRD_file
irdは3k3y Teamの開発した形式で、完全なirdは私の知る限りでは3k3y Ripperでしか作成出来ません。
ネット上にあるirdは、私としてはその99%が3k3y Ripper製だと思っています。
不完全な1%があるのかという事ですが、USRDIRが暗号化されているISOとdisc keyを用意して3k3y Ripperのように
ISOに情報を埋め込み3k3yのツールからirdを作成出来るようにするツール zefie_3k_iso_patcher が存在します。
使用する必要が無いのでこれのユーザーはかなり少ないと思います。irdの存在意義はdata1の格納というのが実情で、
復号の際はdata1からdisc keyを導出するため、disc keyが手元にあるならirdを作成する必要性は全く無いのですが、
このツールが存在する以上はこれを1%とするしかないわけです。

USRDIRの復号に使用するdisc keyですが、これはCFWのPS3でも取得する事が可能です。
eid root keyが必要なため、HENでは出来ません。「disc key要る?CFWなら普通にバックアップ出来るだろ」と思う
人も居るかもしれませんが、disc keyの取得作業の必要性は主に2つです。1つがPS3のBDドライブの温存です。
賛否あるでしょうが「BDをちょっと読み込むだけならBDドライブは長持ちする」と考える人はいると思います。
(この場合、BDはPC上でdisc keyを用いて復号)
もう1つは、これも賛否あるでしょうが共有のためです。PS3を持たないRPCS3ユーザーには有難がられると思います。

この項目の最後に解説したいのがps3-disc-dumperというツールの概要です。
ps3-disc-dumperはirdを公開しているIRD Library(3k3yのサイトで公開されていたird+α)と、disc keyを含むBDの
情報のDBを作成しているRedumpのDBからird/disc keyを取得し、BDからUSRDIRを復号したJB folderを作成します。
(RedumpはPS3のDBを一般に公開していません。ダンプ実績のある人のみが見れるようになっています)
(ps3-disc-dumperにはRedumpのPS3のDBが埋め込まれているようです)
PC用BDドライブでUSRDIRが暗号化されたISOを作成した場合、ird/disc keyを自分で用意して復号する必要があります。
それは一般的には手間です。しかしps3-disc-dumperではird/disc keyを自分で用意する事無くBDからUSRDIRが復号
されたJB folderを作成可能です。よって、PCでバックアップする場合は一般的にはps3-disc-dumperが推奨されます。
もちろん、目的のタイトルのird/disc keyが取得出来ない場合は自分でird/disc keyを用意する必要があります。

→[目次]


●[BD] BD版をバックアップする上で知っておきたい事②

①ではUSRDIRについて解説しました。
②で解説するのは、一部ゲームで採用されている、インストール用コンテンツを含んだBDについてです。

BD内のインストール用コンテンツの格納場所は、私の知る限りでは4つです。
まず1つがINSDIRです。INSDIRには更新データのpkgが格納されており、USRDIRを参照する起動用のBDアイコンから
ゲームを起動する際に、起動に必須のインストールデータとしてINSDIRのpkgのインストールが要求されます。
2つ目はPKGDIRです。ゲーム本編や追加コンテンツのpkgが格納されています。USRDIR起動用のBDアイコンとは別に
インストール用アイコンが表示されます。ゲーム本編をインストールした場合はDL版やHomebrewと同じくXMBにその
ゲームのアイコンが追加されるので、起動はそのアイコンから行います。
3つ目はPS3_EXTRAです。pkg/テーマ(p3t)/動画を格納可能で、インストール/視聴用のアイコンが表示されます。
ゲーム本編をインストールした場合はPKGDIRの場合と同じくXMBにそのゲームのアイコンが追加されます。
テーマをインストールした場合はテーマ設定から適用可能になります。
4つ目はPS3_CONTENTです。テーマ(p3t)/動画を格納可能です。テーマインストール用のアイコンはゲーム列に表示
され、動画はビデオ列から視聴できるようになっています。

で、INSDIR、PKGDIR、PS3_EXTRA、PS3_CONTENTは、私の知る限りでは暗号化されていません。
BDの暗号化されたデータはUSRDIR(ゲーム本編)、TROPDIR(TROPHY.TRP)、LICDIR(LIC.DAT)くらいだと思います。
TROPHY.TRPはトロフィーの情報を収めたファイルです。まあ、不要とは言えないでしょう。
(BD内にゲーム本編のpkgがある場合、TROPDIRはそのpkg内にあります。= 暗号化されていない)
LIC.DATはOFWでBDの検証に使用されるファイルです。CFW/HENでは基本的に不要だと思います。
仮にLIC.DATが必要になりかつ手元になくても、構造が単純なのでタイトルIDだけで簡単に作成出来ます。
(http://jonnysp.bplaced.net/lic.php)

INSDIRは更新データなのでともかく、PKGDIRやPS3_EXTRAが暗号化されていないというのはとてもラッキーです。
もちろんそこにあるpkgが追加コンテンツでゲーム本編はUSRDIR、という場合にはUSRDIRの復号が必要になります。
しかしそこにあるpkgがゲーム本編の場合、暗号化されていませんから、たとえPCでも復号作業は不要です。
またBDに含まれるpkgは、ゲーム本編でも追加コンテンツでも、DL版とは違ってライセンスは不要です。
OFWであれば当然ながらBDの検証はあります。ゲーム本編をインストールしたとしても起動にBDは必須です。
しかしCFW/HENの場合はそれが回避されるので、ゲーム本編をインストールすればBDを抜いても起動出来るはずです。
BDにゲーム本編のpkgが含まれている場合、バックアップ起動においてそのBD/ISOは単にpkgのコンテナです。
たとえそのpkgしか手元に無い場合でも、CFW/HEN/RPCS3ではインストールすれば起動出来るようになります。

私はBD内のpkgだけをバックアップする事を推奨しているわけではありません。単に知識として、仮にそれがゲーム本編
ならpkgだけでも問題無いという事を書いているだけです。CFW/HENユーザーの場合、通常はISOとしてのバックアップ
を推奨します。pkg単体で持っておくよりもコンテナとしてISOを持っておいたほうが良いと思うので。
pkgが複数ある場合やテーマ/動画がある場合はISOならそれ1つで管理出来ますし、また、サイズの問題で分割が必要に
なった場合にpkg単体の分割は少々厄介で、ISOであれば簡単に分割/マウント出来るというのも利点です。
RPCS3ユーザーの場合、USRDIRが採用されていない限りps3-disc-dumperを使用する意味も無いので、BD上のpkgを
直接参照してインストールしても良いと思います。

→[目次]


●[BD] BD版をバックアップする上で知っておきたい事➂

➂は、PS3を持たないRPCS3ユーザーは読まなくても構いません。
CFW/HENユーザーに知っておいて欲しい事を解説します。

CFWでISOとしてバックアップしたい場合はCobra/Mamba環境が必要です。MambaはCobraとほぼ同じ事を実現する
プログラムです。CobraはCFWに実装されるため、わざわざMambaを選ぶ人は少ないです。
CFWでISOとしてバックアップしたい場合はCobraが実装されたCFWをインストールしておいてください。
HENにはCobraが利用されているため、HENの場合はCobraを意識する必要はあまり無いと思います。
Cobraは元々、Team Cobraが販売していたCobra-USBという商品に組み込まれていたプログラムです。
Team CobraはハックシーンにCobra-USBのソースコードを公開し、それ以降は様々な開発者による改良とCFWへの
実装が続いています。Cobraには便利な機能が多く、現在は多くの人がCobraの恩恵を受けています。

バックアップを作成出来る代表的なHomebrewとして、この記事ではmultiMANとIRISMANを紹介しています。
どちらも便利なHomebrewで、バックアップ起動においてはどちらを使用するかは完全に好みの問題だと思います。
バックアップの作成においては、2つの大きな違いがあります。1つはISOの作成に使用されるプログラムです。
multiMANの開発者はdeank氏ですが、multiMANのCobra用モード(元々はCobra-USB用)であるmmCMにはCobraを
サポートするためにTeam Cobraが用意したコンパイル済みのプログラムが組み込まれています。
Team CobraはJB folderからISOを作成するためのWindows用ツールgenps3isoをリリースしており、mmCMでISOの
作成に使用されているプログラムもgenps3isoだと言われています。
一方でIRISMANには、ISOを作成するためのプログラムとして、IRISMANのオリジナル(Iris Manager)の開発者である
Estwald氏が開発したmakeps3isoが使用されています。こちらもgenps3iso同様にWindows用ツールがあります。
どちらが良いんだという話になりますが、makeps3isoが推奨されているようです。
genps3isoでもほぼ全てのゲームのISOが問題無いとされていますが、一部のゲームは起動に問題があるとされており、
そのようなゲームでもmakeps3isoなら起動出来、そしてもし問題のあるゲームがあったとしてもgenps3isoと違って
オープンソースのため原因を調べて修正出来る、というのがmakeps3isoが推奨される理由です。
だからこそPS3でバックアップするのであればmakeps3isoを使用しているIRISMANが良い、らしいです。
私の手元にはそのようなゲームが無いのでなんとも言えません。だからこそこの記事ではmultiMANとIRISMAN両方の
手順を書いています。makeps3isoが良いと思う人はIRISMANを使用してください。
(JB folderからISOを作成出来るWin用ツールPS3 ISO Toolsではgenps3isoとmakeps3isoの両方が使用出来ます。)
2つ目の違いは、IRISMANはNTFSのUSBストレージへのISO作成をサポートしているという事です。
PS3はUSBストレージに関しては公式にはFAT16/FAT32でフォーマットした物のみをサポートしています。
バックアップ起動においてはどのバックアップマネージャーもNTFSのUSBストレージを参照してマウント/起動が可能
となっていますが、multiMANはNTFSのUSBストレージにバックアップを作成出来ません。
NTFSのUSBストレージにISOとしてバックアップを作成したい場合はIRISMANを使用してください。

IRISMANの方が良いのではという感じですが、IRISMANの欠点として、作成するISOのファイル名が固定であるため
ディスクを変えて続けてバックアップしたい場合は自分でリネームする必要がある、という所が挙げられます。
multiMANの場合はゲームのタイトル名がファイル名に使用されます。(稀に空白が使用されるゲームもありますが…)

バックアップ先として、multiMANもIRISMANも内蔵HDDとFAT32のUSBストレージをサポートしています。
先述のようにIRISMANはNTFSのUSBストレージにもISOを作成可能です。
FAT32のUSBストレージにバックアップする場合、ISOとしてのバックアップならISOが4GB毎に分割されます。
JB folderとしてのバックアップの場合、4GBを越えるファイルが4GB毎に分割されます。
IRISMANの場合、ISOとして内蔵HDDかNTFSのUSBストレージへバックアップする際も分割するか否か選択可能です。
(PS3の内蔵HDDはファイルシステムにUFS2が採用されているため、FAT32のような4GBの制限は存在しません)

4GBを越えるファイルが存在するゲームのバックアップをFAT32のUSBストレージに作成する場合、JB folderに拘る
理由が無ければISOとしてバックアップする事を推奨します。バックアップ起動において、分割ISOであればそのまま
マウント可能ですが、分割ファイルが存在するJB folderの場合は内蔵HDDに結合ファイルを作成した後にマウントされ、
該当のファイルはUSBストレージ側ではなく内蔵HDD側が参照されます。
つまり結合ファイルの作成時間が無駄です。よって、JB folderに拘る理由が無ければISOを推奨します。
これはFAT32のUSBストレージにJB folderとしてバックアップする場合の話です。
内蔵HDDにJB folderとしてバックアップする場合はファイルが分割される事はありません。

※PS3ではGPTのUSBストレージは認識せず、MBRである必要があります。ご注意ください。

→[目次]


●[BD] CFW/HENでISOとしてバックアップ (IRISMAN)

●用意する物
  • PS3 (CFW/HEN)
  • PS3のゲームディスク
  • IRISMAN
  • USBストレージ (FAT32/NTFS) (USBストレージにバックアップする場合)

●手順
  1. IRISMANのpkgをDLし、PS3にインストールする
  2. IRISMANを起動する
  3. 初回起動時は画面サイズの設定があるので、変更したい場合は変更し、○ボタンで決定する
    (画面には×ボタンで設定保存と表示されますが、日本のPS3の場合は○ボタンです)
  4. "Do you want to use /dev_hdd0/GAMES to install the game?" と表示されるので "はい" を選択する
  5. STARTボタンを押す ("Global Options" が表示される)
  6. "Tools" を選択する
  7. "Cobra / Disc-less payload" にカーソルを合わせ○ボタンを押し、"With BDVD Controller" に変更する
    (これでディスクからのバックアップが可能になる)
  8. ×ボタンを押す (PS3が自動的に再起動する)
  9. (HENを使用している場合は) HENを有効にする
  10. ISOとしてバックアップしたいディスクを挿入する
  11. (USBストレージにバックアップしたい場合は)
    USBストレージをPS3に接続する
  12. IRISMANを起動する
  13. 挿入したディスクのゲームにカーソルを合わせ、△ボタンを押す (オプションが表示される)
  14. "Build ISO" を選択し、バックアップ先を選択する
    (内蔵HDDの場合は "/dev_hdd0"、FAT32のUSBストレージの場合は "/dev_usb00x"、
    NTFSのUSBストレージの場合は "/ntfs0")
  15. バックアップが完了するまで待つ
  16. 完了すると画面上部に "100%" と表示される。○ボタンか×ボタンを押してメインメニューに戻る
    作業終了

ISOはPS3ISOフォルダに作成されます。
続けて別のディスクのバックアップがしたい場合はISOをリネームしてください。
(バックアップ起動において、ファイル名は何でも構いません。好きにしてください)
手順8までは初回のみ必要な設定変更作業です。次回以降は手順9からで構いません。

→[目次]


●[BD] CFW/HENでISOとしてバックアップ (multiMAN)

●用意する物
  • PS3 (CFW/HEN)
  • PS3のゲームディスク
  • multiMAN v04.85.01 (multiMAN(BASE))
  • USBストレージ (FAT32) (USBストレージにバックアップする場合)

multiMANはmultiMANモードとmmCMモードという2つのモードがあります。
PS3のゲームのISOを扱う場合はmmCMモードにしておく必要があります。
Cobraが有効な場合はmmCMモードで起動するので、基本的に手動で切り替える必要はありません。

●手順
  1. multiMAN(BASE) のpkgをDLし、PS3にインストールする
  2. ISOとしてバックアップしたいディスクを挿入する
  3. (USBストレージにバックアップしたい場合は)
    USBストレージをPS3に接続する
  4. multiMAN を起動する
    "multiMAN is with you for almost 10 years!" という寄付を募るメッセージは必ず表示されます。
    初回起動時は "Installing mmCM data to internal HDD" といったメッセージが表示されます。
    初回はその処理が完了するとmmCMのXMBに移行します。
  5. XMBのGame列で挿入したディスクのゲームにカーソルを合わせ、△ボタンを押す
    (挿入したディスクが表示されない場合はRefreshを実行してください)
    (Refreshを実行しても表示されない場合はディスクを抜いてRefresh後、再度挿入してRefresh)
  6. "Create ISO" を選択する
  7. バックアップ先を選択する
    (内蔵HDDの場合は "PS3 HDD"、USBストレージの場合は "USB#x")
  8. "Creating ISO image, please wait..." と表示されるので完了するまで待つ
  9. 完了すると "ISO Image saved as...." と表示されるので "OK" を選択する。作業終了

ISOはPS3ISOフォルダに作成されます。
ファイル名は通常はゲームのタイトル名が使用されますが、空白が使用されるゲームもあります。
(バックアップ起動において、ファイル名は何でも構いません。好きにしてください)

multiMANのデフォの決定ボタンは×ボタンです。○にしたい場合は Settings → Button Assignment → Circle
BGMであるThe Eyes Of Truthが煩いと感じる場合は Settings → Theme Audio → Disable
言語設定は Settings → Interface Language
※L1/R1でGUIの変更が可能ですが、この記事ではデフォであるXMBの使用を前提としています

→[目次]


●[BD] CFW/HENでJB folderとしてバックアップ (multiMAN)

●用意する物
  • PS3 (CFW/HEN)
  • PS3のゲームディスク
  • multiMAN v04.85.01 (multiMAN(BASE))
  • USBストレージ (FAT32) (USBストレージにバックアップする場合)

ISOを展開する事でもJB folderとなりますが、この項目ではJB folderとしてバックアップする手順を紹介します。
CFWはCobra実装の物でなくとも構いません。


●手順
  1. multiMAN(BASE) のpkgをDLし、PS3にインストールする
  2. JB folderとしてバックアップしたいディスクを挿入する
  3. (USBストレージにバックアップしたい場合は)
    USBストレージをPS3に接続する
  4. multiMAN を起動する
    "multiMAN is with you for almost 10 years!" という寄付を募るメッセージは必ず表示されます。
    初回起動時は "Installing mmCM data to internal HDD" といったメッセージが表示されます。
    初回はその処理が完了するとmmCMのXMBに移行します。
  5. XMBのGame列で挿入したディスクのゲームにカーソルを合わせ、△ボタンを押す
    (挿入したディスクが表示されない場合はRefreshを実行してください)
    (Refreshを実行しても表示されない場合はディスクを抜いてRefresh後、再度挿入してRefresh)
  6. "Copy" を選択する
  7. バックアップ先を選択する
    (内蔵HDDの場合は "PS3 HDD"、USBストレージの場合は "USB#x")
  8. "Do you want to copy game from BD-ROM to xxx" と表示されるので "はい" を選択する
  9. "Copying xx files (x GB), please wait..." と表示されるので完了するまで待つ
  10. 完了すると "Done!" と表示されるので□ボタンを押す。作業終了

JB folderはGAMESフォルダに作成されます。
作成されるJB folderの命名規則は "タイトルID-[タイトル名]" です。
バックアップ起動おいて、フォルダ名は何でも構いません。必要に応じてリネームしてください

→[目次]


●[BD] 3Dump.binの用意 A

3Dump.binはCFWのPS3でBDからdisc keyを取得したりPCで3k3y Ripperを機能させるために必要なファイルです。
こちらの項目は3k3y Teamがリリースした 3k3y Keydumper(3Dump) を使用する手順の紹介です。
3k3y KeydumperはCFW3.55上でしか機能しません。ダウングレードが面倒な場合や3.55にダウングレード出来ない
初期FW3.56の2500を使用している場合は [BD] 3Dump.binの用意 B で紹介する手順を踏んでください。

●用意するもの
●手順
  1. 3k3y-keydumper-v1.7z をDL,解凍してpkgを取り出し、PS3にインストールする
  2. USBストレージを一番右(BDドライブに一番近いポート)(/dev_usb000)に挿す
  3. 3k3y Keydumper(3Dump) を起動する
  4. ピピピと音が鳴ってPS3が再起動するのを待つ
  5. PS3が再起動したらUSBストレージの中を確認する
    ルートに96バイトの3Dump.binが作成されていれば成功

→[目次]


●[BD] 3Dump.binの用意 B

3Dump.binは本体毎に固有のEID4とeid root keyを連結したファイルです。
こちらの項目はそれらを用意して手動で3Dump.binを作る手順の紹介です。

●用意するもの
  • PS3 (CFW)
  • USBストレージ (FAT32)
  • Rebug Toolbox
  • PC
  • 適当なバイナリエディタ (HxDがオススメ)

Rebug Toolboxの機能のうちこの手順で使用する機能に関してはどのCFWでも使用出来るはずですが、仮に何らかの
問題が確認された場合はCFWをRebugに変更してください。
Rebug ToolboxはPS3のXMBの言語を検出して言語を決定するようなので、手順中では各項目を日本語にしています。

●手順
  1. Rebug ToolboxのpkgをDLし、PS3にインストールする
  2. USBストレージを一番右(BDドライブに一番近いポート)(/dev_usb000)に挿す
  3. Rebug Toolboxを起動する
  4. ユーティリティ列の "フラッシュメモリをファイルにエクスポート" を選択する
  5. "フラッシュメモリをファイルにエクスポートしますか?" と表示されるので "はい" を選択する
  6. フラッシュメモリのダンプが完了したら "OK" を選択してメッセージを閉じる
  7. ユーティリティ列の "Eidルートキーをダンプ" を選択する
  8. "Eidのルートキーをダンプし、再起動しますか?" と表示されるので "はい" を選択する
  9. ピピピと音が鳴ってPS3が再起動したらeid root keyのダンプ成功
  10. PCからFTPで接続したりmultiMANのmmOSを使用したりして以下をPCやUSBストレージにコピーする
    "/dev_hdd0/game/RBGTLBOX2/USRDIR/eid_root_key"
  11. USBストレージをPCにセットする (或いはPCからFTPでアクセス)
  12. ダンプしたフラッシュメモリの拡張子を確認する (NANDBIN/NORBIN)
  13. PCで3Dump.binという0バイトのファイルを作成する
  14. バイナリエディタでフラッシュメモリのダンプ、eid_root_key、3Dump.binを開く
  15. (フラッシュメモリのダンプがNANDBINの場合)
    0x0081BA0 ~ 0x0081BCF の48バイトをコピーして3Dump.binに貼り付ける
  16. (フラッシュメモリのダンプがNORBINの場合)
    0x00303A0 ~ 0x00303CF の48バイトをコピーして3Dump.binに貼り付ける
  17. eid_root_key (48バイト) をコピーして3Dump.binに貼り付ける
    3Dump.binの完成

→[目次]


●[BD] CFWでdisc keyを取得

disc keyは以下のタイミングで使用可能です。
●用意するもの
●手順
  1. 3Dump.bin をUSBストレージのルートに配置しておく
  2. GetKey-r2-GameOS.7z をDL,解凍してpkgを取り出し、PS3にインストールする
  3. USBストレージを一番右(BDドライブに一番近いポート)(/dev_usb000)に挿す
  4. disc keyを取得したいディスクを挿入する
  5. GetKey を起動する
  6. XMBに戻ったらUSBストレージのルートを確認する
    disc.picとgetkey.logが作成されていたら成功
  7. (disc keyをps3-disc-dumperで使用する場合は)
    適当なバイナリエディタを使用してdisc keyのファイル(16バイト)を作成する
    (ファイル名は何でも良い。拡張子は dkey )

disc.picはBD自体の情報を収めたPICという領域のダンプです。一般的には不要です。
disc keyはgetkey.log内にあります。disc keyは大切に保管してください。disc key以外の情報は一般的には不要です。

→[目次]


●[BD] 3k3y Ripperのセットアップ①

この項目では3k3y Ripperのセットアップについて簡単に紹介します。
以下が3k3y Ripper v1のセットです。中央にある小さな基板が3k3y Ripper本体です。
BDドライブと基板を繋ぐためのフラットケーブル、電源用のPWM4ピンメス~ペリフェラル4ピンオスケーブル、
基板とPCでデータをやり取りするためのmicroUSBケーブル が付属します。
3k3y_r_20200320_1.jpg
v1はCECHKまでに搭載されているPATAのBDドライブに対応した物で、v2はPATAとCECHL以降のSATAのBDドライブ
に対応しています。v2は持っていないので私からは紹介出来ませんが、セットアップ手順は同じです。
(SATAのBDドライブを使用する際にケーブルと使用ポートが変わるだけ)

以下はCECHAのBDドライブの裏側です。フラットケーブルは右のポートに接続します。
3k3y_r_20200320_3.jpg

BDドライブの電源はPWM4ピンで、本来はPS3の基板と両端がPWM4ピンメスのケーブルで繋がれています。
PCのマザボ等からそのケーブルで電源を取っても良いのですが、今回は3k3y Ripperに付属のケーブルを使用します。
それと合わせて電源のために以下のペリフェラル4ピンメスのACアダプタを使用します。
(これはたしかセンチュリーの裸族の頭に付属してた奴だったと思います)
3k3y_r_20200320_2.jpg

最終的に以下のようになります。
3k3y_r_20200320_5.jpg

v1基板。
3k3y_r_20200320_4.jpg
BDドライブと3k3y Ripperに問題が無ければ、電源を入れるとディスクの挿入が可能になります。
基板右側のEJECTボタンでディスクを取り出す事が可能です。

ここまででハードウェアの準備は完了です。ではツールのセットアップ手順について簡単に紹介します。

→[目次]


●[BD] 3k3y Ripperのセットアップ②

この項目は3k3y Ripperを機能させるためのWindows用ツールのセットアップ手順の紹介です。

●用意するもの
  • 3k3yRipper + BDドライブ (の最終的な形)
  • PC (Windows)
  • 3Dump.bin (PS3本体との紐付けを保ったままにしたい場合)
  • IsoTools-v1.34.9.7z
  • PS3のゲームディスク

●手順
  1. 3k3y Ripperの電源を入れ、USBケーブルをPCに接続する
  2. IsoTools-v1.34.9.7zをDL,解凍してmsiファイルを取り出し、インストールする
  3. IsoTools.exe を起動する
    3k3y_t_20200320_1.jpg
    BDドライブが正常に認識されていれば "Drive Detected OK" と表示されます。
    この時点では認証が通っていないので "Drive Authentication Failed" と表示されます。
  4. (3Dump.binを用意した場合は)
    "Load 3Dump" をクリックして3Dump.binを選択し、認証を済ませる
  5. メニューバーの "Tools" から "Settings" を開く
    3k3y_t_20200320_2.jpg
  6. "Check for updates" を無効にする
  7. (3Dump.binを用意しなかった場合は)
    "Use Default Keys" を有効にする
    ("Are you sure you want to do this?" と聞かれるので "はい" をクリックする)
  8. "Automatically upload IRD files after ripping" を無効にする
  9. "Download update pup files automatically" を無効にする
  10. 右下の "OK" をクリックしてSettingsウィンドウを閉じる
  11. (手順7を行った場合は)
    "Do you want to OVERWRITE the keys of the drive?" と聞かれるので "はい" をクリックする
    (聞かれない場合はツールを再起動したりBDを挿入したりすると聞かれるかも)
  12. 3k3y Ripperのセットアップ完了
    3k3y_t_20200320_3.jpg
    BDドライブの認証が通ると "Drive Authenticated OK" と表示されます。
    ディスクが入っていない場合は "No disc in drive" と表示されます。
    続けてバックアップ作業を行う場合は → [BD] 3k3y RipperでISOとしてバックアップ + irdを作成

→[目次]


●[BD] 3k3y RipperでISOとしてバックアップ + irdを作成

こちらの項目は [BD] 3k3y Ripperのセットアップ② 完了後のバックアップ作業の紹介です。

●用意するもの
  • PC (Windows)
  • 3k3yRipper + BDドライブ
  • IsoTools
  • PS3のゲームディスク

●手順
  1. IsoTools を起動する
  2. BDドライブにBDを挿入する
    (挿入すると以下のようなメッセージが表示されます)
    3k3y_t_20200320_4.jpg
  3. "Rip Game" をクリックする
  4. irdの作成先とファイル名を問われるので設定する
  5. ISOの作成先とファイル名を問われるので設定する
  6. 処理が完了するまで待つ
    完了すると "All done." というメッセージが表示される
  7. 3k3y RipperのEJECTボタンを押してBDを取り出す
    作業終了

"Create IRD" の項目にてBD或いはISOからirdを作成可能ですが、BDはフルスキャンなのでバックアップと同程度の
時間が掛かりますし、ISOは "Output is decrypted ISO" を無効にしてバックアップした暗号化状態の物か、それを
有効にして復号状態でバックアップした物を "ISO Crypto" で暗号化した物しか使用出来ません。
よって私としては、irdを作成するのであれば "Output is decrypted ISO" と "Create IRD while ripping/extracting"
を有効にして復号状態のバックアップと合わせてirdを作成するのが良いのではと思っています。
ちなみに、irdの情報はIsoToolsで閲覧可能です。data1の値も確認可能です。

→[目次]


●[BD] 3k3y Ripperで即キャンセルしてdisc keyを取得

単にdisc keyだけが目的の場合や、PS3のBDを読み込めるPC用BDドライブでバックアップしたい場合向けです。

●用意するもの
  • PC (Windows)
  • 3k3yRipper + BDドライブ
  • IsoTools
  • GetkeyFrom3k3y-r1.7z
  • PS3のゲームディスク

●手順
  1. IsoTools を起動する
  2. BDドライブにBDを挿入する
    (挿入すると以下のようなメッセージが表示されます)
    3k3y_t_20200320_4.jpg
  3. "Rip Game" をクリックする
  4. irdの作成先とファイル名を問われるので設定する
    (キャンセルするのでirdは作成されません)
  5. ISOの作成先とファイル名を問われるので設定する
  6. 数秒間リッピングさせ、"Cancel" をクリックし、IsoTools を閉じる
    (作成されたISOは不完全な物ですが、まだ削除しないでください)
  7. GetkeyFrom3k3y-r1.7z をDLし、適当な場所に解凍する
  8. コマンドプロンプトを開き、cdコマンドでGetKeyFrom3k3y.exeのあるディレクトリに移動する
  9. 以下のように実行する (括弧部分を置き換えてください。括弧は不要です)
    • disc key等の情報をコマンドプロンプトに出力するなら
      GetKeyFrom3k3y.exe [手順6で作成したISOのパス]
    • disc key等の情報をテキストファイルとして出力するなら
      GetKeyFrom3k3y [手順6で作成したISOのパス] > [出力するテキストファイルのパス]
  10. 手順6で作成したISOを削除する

3k3y Rippeはirdの作成に必要なdata1/data2/PIC1(最初の73バイト)をISOの 0xf80 ~ 0xfc4 つまり大体4KB地点に
埋め込みます。そのため、それらの取得が目的の場合は即キャンセルでも問題は無いという事です。

→[目次]


●[BD] PCでJB folderとしてバックアップ (ps3-disc-dumper)

●用意するもの
  • PC (Windows/Linux)
  • PS3のBDが読み込めるBDドライブ
  • PS3のゲームディスク
  • ps3-disc-dumper

PS3のBDが読み込める事が既に分かっているBDドライブに関してはRPCS3のサイトにまとめられています。
https://rpcs3.net/quickstart (Compatible Blu-ray disc drivesの所)

●手順
  1. ps3-disc-dumper をDL,解凍して起動する
  2. 右上の歯車アイコンをクリックしてSettingsウィンドウを開く
  3. (必要に応じて設定を変更する) (変更が不要なら閉じる)
    • JB folderの出力先を "Output Folder" で設定 (デフォは実行ファイルと同じ場所)
    • ird/dkeyの保存先を "IRD Cache Folder" で設定 (デフォはirdフォルダ)
    • 各JB folderの命名規則を "Dump Name Pattern" で設定
  4. BDドライブにディスクを挿入する
  5. 自動でそのBDの情報の検出、ird/disc keyの検索が行われる
    BDの情報が自動検出されない場合は "Re-scan discs" をクリックしてスキャンする
  6. (そのBD用のird/disc keyが見つかった場合は)
    "Start" をクリックしてバックアップ開始
    完了すると "Dump is valid" と表示される。作業終了(手順7以降は不要)
  7. (以下、ird/disc keyが見つからなかった場合の作業)
    "Select disc key file..." をクリックして適切なird/dkeyを選択する
    (dkeyはdisc keyを値とした16バイトのファイル)
    (何かエラーメッセージが表示されても気にせず手順8へ)
    ("IRD Cache Folder" で指定したディレクトリにird/dkeyがコピーされる)
  8. ps3-disc-dumper を閉じる
  9. ps3-disc-dumper を起動し、情報の検出完了を待ち、"Start" をクリックしてバックアップ開始
    (手順7でコピーされたdkey/irdが検出され "Start" がクリック出来るようになるはず)
    ("Select disc key file..." で選択せずとも事前にird/dkeyを指定のディレクトリに配置しておいても良いはず )

手順7~9は私の環境での挙動を元に書きました。
"Select disc key file..." で選択したらそのままバックアップ処理に移行するというのを想定していたのですが…

→[目次]


●[BD] PCでISOとしてバックアップ (暗号化状態)

こちらの項目はPCでPS3のBDのISO(暗号化状態)を作成する手順の紹介です。

●用意するもの
  • PC (Windows)
  • PS3のBDが読み込めるBDドライブ
  • PS3のゲームディスク
  • ImgBurn

PS3のBDが読み込める事が既に分かっているBDドライブに関してはRPCS3のサイトにまとめられています。
https://rpcs3.net/quickstart (Compatible Blu-ray disc drivesの所)

●手順
  1. BDドライブにディスクを挿入する
  2. ImgBurnをDL,インストールして起動する
  3. "Create image file from disc" をクリックする
  4. "Source" でBDドライブを選択する (複数台接続していない限り通常は変更する必要無し)
  5. "Destination" で保存先とファイル名を設定する
  6. (必要に応じて "Read Speed" を変更する)
  7. 左下のアイコンをクリックしてISO作成開始
  8. 完了したら "Operation Successfully Completed!" と表示されるので "OK" をクリックする
    作業終了

→[目次]


●[BD] PCでirdを用いてISO(暗号化状態)を復号

●用意するもの
以下の手順は、3k3y Ripperが再暗号化/復号/ird作成のためにISOに埋め込む情報と同じ物をirdから取り出し、
手元のUSRDIRが暗号化状態のISOに3k3y Ripper同様に埋め込み、3k3yのIsoToolsで復号する手順です。

●手順
  1. PS3 ISO Patcher をDL,解凍してtest_patcher.exeを起動する
  2. "Select ISO image:" で復号したいISOを指定する
  3. "Select IRD image:" で上記ISOを復号出来るirdを指定する
  4. "Patch" をクリックしてパッチを適用する (=復号に必要な情報の埋め込み)
  5. "Done!" というポップアップが表示されるので "OK" をクリックして閉じ、PS3 ISO Patcherを終了する
  6. IsoTools-v1.34.9.7zをDL,解凍してmsiファイルを取り出し、インストールする
  7. IsoTools.exe を起動する
  8. "ISO Crypto" をクリックし、パッチを適用したISOを選択する
  9. 選択したISOと同じディレクトリに復号されたISO(.dec.iso)が出力されるので、完了するまで待つ
    完了したら作業終了

→[目次]


●[BD] PCでdata1/disc keyを用いてISO(暗号化状態)を復号

●用意するもの
  • PC (Windows)
  • ISO(USRDIRが暗号化状態)
  • data1 或いは disc key
  • PS3Dec R5.7z

●手順
  1. PS3Dec R5.7z をDL,解凍する
  2. コマンドプロンプトを開き、cdコマンドでPS3Dec.exeのあるディレクトリに移動する
  3. 以下のように実行する (括弧部分を置き換えてください。括弧は不要です)
    (PS3Decで使用するdata1/disc keyはファイルではなくテキストです)
    • data1 を使用する場合は
      PS3Dec.exe d d1 [data1] [入力ISOのパス] [出力ISOのパス]
    • disc key を使用する場合は
      PS3Dec.exe d key [disc key] [入力ISOのパス] [出力ISOのパス]
    • 3k3y Ripper製或いはPS3 ISO Patcherでパッチを当てたISOの場合は
      PS3Dec.exe d 3k3y [入力ISOのパス] [出力ISOのパス]
→[目次]


●[BD] PCでJB folderからISOを作成

●用意するもの
手順2~5はmakeps3iso等の更新作業です。

●手順
  1. PS3 ISO Tools 2.2をDLし、解凍する
  2. irismanager-4-x.rar をDLし、解凍して PC_ps3iso_utilities_with_src_v1.9.zip を取り出す
  3. PC_ps3iso_utilities_with_src_v1.9.zip を解凍して3つのexeファイルを取り出す
    (extractps3iso.exe, makeps3iso.exe, patchps3iso.exe)
  4. 手順3の3つのexeファイルを、PS3 ISO Tools のToolsフォルダ内にコピーする
  5. Toolsフォルダ内の fixps3iso.exe を削除し、patchps3iso.exe を fixps3iso.exe にリネームする
  6. PS3_ISO_TOOLS V2.2.exe を起動する
  7. (作成したISOをPS3実機上でバックアップ起動に使用する場合は)
    "Firmware" の項目を自分のPS3のFWバージョンに一番近いバージョンに変更する
    (あえて古いCFWを使用していない限りは4.76を選択する事になると思います)
  8. "Create ISO(s)" をクリック
  9. (PS3実機上であえて古いCFWを使用している場合は)
    "Patch Game(s) To Firmware" を有効にする (デフォで有効)
    (これはそのゲームをFW3.55の鍵で再署名するか否かの設定。一般的には不要なので無効で良い)
    (再署名するかどうかをゲームの要求FWと手順7で設定したFWから判定させるなら "If Needed" )
    (強制的に再署名させるなら "Always")
    (ISOを作成せずJB folder中のファイルを直接再署名するなら "Just Patch And Don't Create ISO(s)")
  10. (作成するISOにPSP_UPDATEフォルダを含めたく無い場合は)
    "Exclude PS3_UPDATE - Folder From ISO(s)" を有効にする
  11. (分割ISOを作成する場合は)
    "Split ISO(s) To Fit On FAT32 device" を有効にする
    ("Hide ISO-Part(s) In Windows Explorer" は "ISO.1" 以降を隠しファイルにするオプション)
  12. (作成するISOの命名規則を [Game-Name] - [Game-ID] にする場合は)
    "Rename ISO(s) To [Game-Name] - [Game-ID]" を有効にする
  13. (ISOのファイル名中で特別な文字を許可する場合は)
    "Allow Special Characters in ISO-Name(s)" を有効にする
    (バックアップ起動において問題になる事があるため、通常は無効が良い)
  14. (webMAN-MOD用にISOのファイル名に[auto]タグを付与する場合は)
    "Add [auto]-Tag To ISO-Name(s)" を有効にする
    (タグの機能に関してはwebMAN-MODの_mount.hを確認してください)
  15. (webMAN-MOD用にISOのファイル名に[online]タグを付与する場合は)
    "Add [online]-Tag To ISO-Name(s)" を有効にする
  16. (ISOの作成先にICON0.PNGとPARAM.SFOを出力する場合は)
    "Extract Game-Icon(s) and PARAM.SFO-File(s)" を有効にする
  17. (参照したJB folderをISO作成完了時に削除する場合は)
    "Delete Source Folder(s) After Conversion" を有効にする
  18. "Continue" をクリックし、JB folder(PS3_GAMEがあるフォルダ)やJB folderをまとめたフォルダを指定し、
    続けてISOの作成先を指定する
  19. 作成が完了するまで待つ
    完了したら "CONVERTING DONE" と表示されるので "OK" をクリックして作業終了

ISOの作成に使用される makeps3iso と genps3iso ですが、通常はmakeps3isoを選んでください。
バックアップ起動において何か問題が確認される場合のみgenps3isoに切り替えてください。

→[目次]


●[BD] PCでISOを分割

●用意するもの
●手順
  1. PS3 ISO Tools 2.2をDL,解凍して起動する
  2. "Split ISO(s)" をクリック
  3. ("ISO.1"以降を隠しファイルにする場合は)
    "Hide ISO-Part(s) In Windows Explorer" を有効にする
  4. (分割後にオリジナルのISOを削除する場合は)
    "Delete Full-ISO(s) After Splitting" を有効にする
  5. "Continue" をクリックし、ISOを指定し、続けて分割ISOの作成先を指定する
  6. 分割ISOの作成が完了するまで待つ
    完了したら "ISO SPLITTING DONE" と表示されるので "OK" をクリックして作業終了

→[目次]


●[BD] PCで分割ISOを結合

●用意するもの
●手順
  1. PS3 ISO Tools 2.2をDL,解凍して起動する
  2. "Join ISO(s)" をクリックする
  3. (結合後に分割ISOを削除する場合は)
    "Delete Split-ISO(s) After Splitting" を有効にする
  4. "Continue" をクリックし、分割ISOのパート0(ISO.0)を指定し、続けて結合ISOの作成先を指定する
  5. 結合が完了するまで待つ
    完了したら "ISO-JOINING DONE" と表示されるので "OK" をクリックして作業終了
→[目次]


●[DL] DL版をバックアップする上で知っておきたい事

PSストアのコンテンツ(以下DL版)はそのゲームデータにpkgが使用されます。pkgはソニーが使用しているアーカイブ
ファイルの形式で、PS3ではまずPSストアからpkgをDLし、その後インストール(展開等)が行われます。
ソニーはpkgのDLに関しては特に認証を設けておらず、自身が購入した物であればPCでpkgのURLが確認出来、PCから
pkgをDLする事が可能です。CFW/HENではpkgのインストールに使用するパッケージマネージャーが解放されるため、
内蔵HDDやUSBメモリに配置したpkgを自由にインストールする事が可能です。

DL版にはライセンスファイルであるrifが必要で、rifには実行ファイルであるSELF/SPRXやPS2アーカイブスのISOの復号
に使用するrifkey(klicensee)が格納されています。rifkeyはPSNアカウントの機器認証時に作成されるact.datと本体毎に
固有のIDであるidpsで暗号化されています。rifはPSストアでコンテンツのDLを開始した際に作成されます。
rifの作成が目的ならDL開始後に即キャンセルでも問題はありません。
DRMフリーでrif/act.datが参照されない物もあり、その場合はFWに格納されたklicenseeが使用されます。

CFW/HEN/RPCS3ではDL版のDRM回避にrapが使用可能です。rapはact.datとidpsとrifによって作成出来るファイルで、
物としてはrifをidpsとact.datで復号してrifkeyを導出可能な状態にした物です。
(全PS3に共通の情報で暗号化された状態のrifkeyがrap)
rifkeyはEBOOT.BINの物に限りブルートフォースツール(Bruteforce EBOOT)が存在するので時間を掛ければPC上で
取得可能ではあります。もちろん理論上であり、掛かる時間的に現実的ではなく、そういう観点で見れば鍵の取得は
不可能であるという認識の方が良いです。ただしツールの存在も無視出来ませんから、ツールがあるという意味では
鍵の取得は可能と言えます。もちろん勧められる作業では無いのでこの記事で手順としては紹介していません。
PS3から必要なファイルを取り出す方が懸命な判断と言えます。

次に解説したいのがC00ゲームです。C00ゲームは通常のDL版のコンテンツとは仕組みが異なります。
C00ゲームというのは製品版がアンロック方式で、かつC00フォルダが存在する体験版の事です。
("/dev_hdd0/game/タイトルID/C00/")(つまりアンロック方式の体験版全てがC00ゲームというわけでは無い)
DRM採用の物とDRMフリーの物があり、前者の場合は当然ながら体験版自体にrifが必要で、体験版自体のDRM回避に
rapを作成する必要があります。後者の場合は体験版自体をプレイするにあたってact.datもrifも参照されません。
DRMに関してはC00ゲームに関わらず基本的な事です。C00ゲームの面白い所はここからです。
C00ゲームは製品版がアンロック方式と書きましたが、アンロックの判定システムが致命的な物となっています。
どのようにアンロックの判定をしているかというと、単にアンロック用コンテンツIDの比較です。
C00フォルダにあるPARAM.SFOにはアンロック用コンテンツIDが記述されており、それが事実上解除キーになります。
所謂「製品版解除キー」のような製品では、C00ゲームの場合はrifと、そのrifkeyで暗号化されたedatが作成されます。
C00ゲーム起動時、「製品版解除キー」のedatは「製品版解除キー」のrif内のrifkeyで復号され、edat内に記述された
コンテンツIDとC00フォルダ内にあるPARAM.SFOに記述されたコンテンツIDが比較されます。
一致すると、C00ゲームは体験版ではなく製品版として起動します。これがC00ゲームのアンロック判定システムです。
つまりC00ゲームに関しては先述のようにPARAM.SFOに記述されたコンテンツIDが事実上解除キーになります。
CFW/HENにはC00ゲームのアンロックパッチが実装されており、CFW/HENが自動的にコンテンツIDに関する処理を
行うため、ユーザーは何もせずともC00ゲームが製品版で起動します。CFWの場合、そのパッチが実装されるまでは
reActPSNというHomebrewでC00ゲーム用のフリーライセンスのedatを作成するという手法が取られていました。
結局の所、C00ゲームのDRM回避に必要なのは、DRMフリーの場合はpkgだけです。DRM採用の場合はC00ゲーム自体
のrapも必要になりますが、C00ゲームでは総じて「製品版解除キー」のような製品のedatのバックアップやrapの作成
は私は知る限りでは不要です。(もちろんあるに越したことはないと思います)
C00ゲームかどうかの見分け方は、PS3PKG_GUIやPKG Ripper、PKGView等のツールでpkgの中を見てC00フォルダの
有無を確認したり、PS3の "/dev_hdd0/game/タイトルID/C00/" の有無を確認したりといった方法が挙げられます。

一応devklic(dev klicensee)についても解説しておきます。
(単にDL版で遊ぶだけなら上の情報だけで良い。ゲームデータのedatを復号したい人はdevklicも把握する必要有り)
devklicはDL版のゲームデータとして採用される事があるedatの復号に使用されます。(rap(rifkey)も必要)
C00ゲームの正規のアンロック用edatはrifkeyで暗号化されているだけですが、ゲームデータとして採用される事が
あるedatは復号にrifkeyとdevklicの2つが必要です。(DRMフリーの場合はdevklicを用意するだけで復号可能)
基本的にはELF(EBOOT.ELF)に格納されていますが、平文の場合とそうでない場合があり、前者の場合はdevkilic用の
ブルートフォースツールによってPC上で取得可能です。後者の場合はブルートフォースが困難な事からPS3上でダンプ
する方法を取ります。一部edat(無料のコンテンツやPS1アーカイブスに含まれるedat等)はFWに格納されたdevklicが
使用される事があります。あまり例はありませんが、sdatに格納されている場合もあるようです。

この記事では idpsの取得、act.datの取得、rifの取得、rapの作成、pkgのDL について紹介しますが、問題になるのが
PS3でのPSNの利用です。もちろんOFWの場合はPSNの利用は100%安全です。ただ必要なファイルの取得には時間が
掛かります。一方でCFW/HENを利用している場合、取得に時間が掛からない代わりにPSNの利用にリスクがあります。
ソニーはゲーム(Homebrew含む)の起動履歴やCFW/HENで有効になるsyscallを監視しているというのが通説であり、
CFW/HENの場合はそこにリスクがあります。起動履歴の削除やリスクのあるsyscallの無効化は可能ではありますが、
それでも100%の安全性は保証されません。もちろん、ソニーが実際に何を監視しているかや何をBANの基準として
いるのかはソニーの社員にしか分かりません。また、BANされるかどうかも運です。

CFWの場合はPSNPatchやSEN Enabler、webMAN MODで履歴の削除とsyscallの無効化をしてからPSNを利用する事を
推奨します。(webMAN MODはゲームをマウントする度に履歴に関するファイルを削除しています)
HENを利用している場合は履歴を削除してから再起動してほぼOFWのHFW状態でPSNを利用する事を推奨します。
SEN EnablerはHENをサポートしていませんが、PSNPatchもwebMAN MODもHENで使用可能です。
また、CFWでもHENでも、cc proxy等を利用して常に一部のドメインとの通信をブロックしておく事が推奨されます。

idps/act.dat/rifの取得のためにこの記事では以下の4つの方法を紹介します。3つ揃ったらrapの作成に進めます。

rifに関しては既に作成済みである事を前提とします。
PSストアで目的のコンテンツをDLしてください。rif目的ならDL開始後に即キャンセルでOKです。
CFW/HENを使用する場合、act.datとrifの取得はFTPかファイルマネージャーでOKですし、idpsの確認も簡単です。
OFWの場合はバックアップユーティリティーで本体ストレージのバックアップを作成し、なんとかしてidpsを取得し、
TrueAncestor Backup Retailerで展開してact.datとrifを取得するという方法を取る以外に手はありません。
この記事ではOFW向けのidpsの取得方法としてPS3 Toolset及びStoreHaxxを紹介しています。
PS3 Toolsetを推奨しますが、PS3 ToolsetはPS3のブラウザでFlash Playerが有効になっている必要があります。
デフォで有効ですが、過去にFlash Playerに関するダイアログで「使用しない」かつ「ダイアログを今後表示しない」
を選択しているとFlash Playerが無効になってしまうらしく、設定が存在しないためにこちらからは有効に出来ません。
PS3 ToolsetはFlash Playerが無効な場合にいくつかの対処法を提示するそうですが、私の環境ではこれまでに一度も
Flash Playerに関するダイアログが表示された事が無いため、それに関して私から言及する事は出来ません。
仮にPS3 Toolsetに何か問題がある場合にはStoreHaxxでidpsを取得してください。
なお、PS3 ToolsetはHFW4.84~4.86/CFW4.82~4.86でも使用可能です。

→[目次]


●[DL] CFW/HENでact.datとidpsとrifを取得

act.datとrifは "/dev_hdd0/home/ユーザーID/exdata/" にあるので、FTPでPCに転送するかファイルマネージャで
USBストレージにコピーするかしてください。もちろん機器認証を行いact.datを作成し、PSストアからDLしてrifを
作成しておいてください。idpsはPSNPatchやSEN Enabler、webMAN等で確認可能です。
CFW Settingsを実装しているCFWやHENのHybrid Firmware Toolsでidpsをログにダンプする事も可能です。
CFW/HENの場合、act.datとidpsとrifの取得に関してはこれ以上は書くことが無いです。

→[目次]


●[DL] OFW4.82~4.86でPS3 Toolsetを用いてidpsを取得

●用意するもの
  • PS3 (OFW4.82~4.86/HFW4.84~4.86/CFW4.82~4.86)

●手順
  1. PS3を起動する
  2. ブラウザを開く
  3. △ボタン → ツール → Cookie受信 → 許可する
  4. △ボタン → ツール → JavaScript → 入
  5. https://www.ps3xploit.net/bgtoolset/ にアクセスする
    (STARTボタンを押してURLを入力する)
    (ページが表示されるまで少し時間が掛かるかもしれません)
  6. ページが表示されると自動でイニシャライズが始まるので完了するまで待つ
    (ページ右上)
    ps3toolset_20200326_1.jpg
    完了したら以下のように表示されます。
    ps3toolset_20200326_2.jpg
  7. Flash Memory Managerタブをクリックする
  8. フラッシュメモリから情報の抽出が行われるので完了するまで待つ
    ps3toolset_20200326_3.jpg
  9. 以下のように表示されます。メモや写真等でidpsを控えてください。
    (PS3 Toolsetにはidpsを隠すオプションがあり、以下の画像はidpsを隠した状態です)
    ps3toolset_20200326_4.jpg
  10. [DL] idpsを用いて本体ストレージのバックアップを展開してact.datとrifを取得

→[目次]


●[DL] OFW4.60~4.86でStoreHaxxを用いてidpsを取得

●用意するもの
PS3のバックアップユーティリティーでStoreHaxx用データをリストアするという方法になります。
現在のデータが消えるため、大切なデータがある場合はバックアップユーティリティーでバックアップしてください。
そもそもact.dat/rifの取得はバックアップユーティリティーで作成した自分のバックアップから行うため、以下の手順を
行う前に機器認証とrifの作成を済ませてバックアップを作成しておくと良いと思います。(手順0がそれに当たる)
(バックアップでは、人によってはそれなりの容量のUSBストレージが必要になります)

●手順
  1. (バックアップする場合は)
    USBストレージをPS3に挿し、本体設定 → バックアップユーティリティ からバックアップする
  2. StoreHaxx_4.83_IDPS_PSID_Dumping_Method-PS3Xploit.zip をDLする
  3. DLしたzipを解凍し、USBストレージにコピーする
  4. USBストレージをPS3に挿す
  5. 本体設定 → バックアップユーティリティ → リストア(復元) からSTOREHAXXPS3を選択する
  6. フォーマットが完了するのを待つ
    (フォーマット完了後、再起動し、PSボタンの押下を求められます)
  7. リストアが完了するのを待つ
  8. "本体ストレージ上のデータベースを再構築します" と表示されるので "OK" を選択する
  9. XMBのゲーム列から StoreHaxx 或いは PSストア を起動する
    (PSストアが置き換わっているのでPSストアのアイコンからでもStoreHaxxが起動します)
    起動に成功したら以下の画面になります
  10. △ボタンを押してIDPSとPSIDを表示する
    (メモや写真等でIDPSを控えてください。PSIDはrapの作成に無関係なので不要です)
  11. (任意)(事前にバックアップユーティリティーでバックアップしていた場合は)
    本体設定 → バックアップユーティリティ → リストア(復元) からリストアする
  12. [DL] idpsを用いて本体ストレージのバックアップを展開してact.datとrifを取得

→[目次]


●[DL] idpsを用いて本体ストレージのバックアップを展開してact.datとrifを取得

●用意するもの
事前に適当なバイナリエディタでidps.binを作成しておいてください。
StoreHaxxの手順を踏んでバックアップを作成済みの場合は、以下の手順1はスキップしてください。
PS3は手順1で使用するだけですので、手順1をスキップする場合はPS3は不要です。
手順2以降はPC上での作業になります。

●手順
  1. USBストレージをPS3に挿し、本体設定 → バックアップユーティリティ からバックアップする
  2. TrueAncestor用のフォルダを作成する (場所やフォルダ名はどうでも良い)
  3. TrueAncestor_BACKUP_Retailer_v2.30.zip をDLし、手順2で作成したフォルダに解凍する
  4. retailer.exeを起動し、終了する
    (こうする事で必要なフォルダが作成される)
  5. TrueAncestorのbackupフォルダに、PS3のバックアップのフォルダをコピーする
    ("USBストレージ:/PS3/EXPORT/BACKUP/日時" ← この日時フォルダをコピーする)
  6. TrueAncestorのidpsフォルダにidps.binをコピーする
  7. retailer.exeを起動し、"X. Extract Backup" を実行してバックアップを復号/展開する
    (extractedフォルダに出力される)
  8. 展開された "dev_hdd0/home/ユーザーID/exdata/" を確認する。act.datとrifがあればOK
    (act.datがない場合は機器認証してない。rifが無い場合はPSストアからDLしてない)
    (DRMフリーのコンテンツの場合、rifは作成されません)

→[目次]


●[DL] PCでrapを作成

●用意するもの
  • PC (Windows)
  • rifconv.rar
  • act.dat
  • idps.bin (idpsを値とした16バイトのファイル)
  • rif

●手順
  1. Rif Converter用のフォルダを作成する (場所やフォルダ名はどうでも良い)
  2. rifconv.rar をDLし、手順1で作成したフォルダに解凍する
  3. RifConv.exeを起動し、act.dat、idps.bin、rifのあるフォルダ を指定する
  4. Createボタンを押すことでcreated_rapsフォルダにrapが出力される

→[目次]


●[DL] PS StoreのコンテンツのpkgをDL (PSDLE)

●用意するもの
  • PC

●手順
  1. 使用しているブラウザに拡張機能/アドオンをインストールする
    Chrome:https://chrome.google.com/webstore/detail/psdle/jdjhhapoddhnimgdemnpbfagndcnmhii
    Firefox:https://addons.mozilla.org/en-US/firefox/addon/psdleforfirefox/
  2. PS Storeにアクセスし、サインインする
  3. アドレスバー右にあるPSDLEのアイコンをクリックする
  4. ブラウザ内の上半分程に以下のようなものが表示されるので、"開始" をクリックする
    PSDLE(1).jpg
  5. "ビューをエクスポート" をクリックする
  6. +ボタンをクリックして項目を追加する
  7. 追加した項目のカラム名に "PKG URL" のような題を書く。何でも良い
  8. 追加した項目のプロパティを "pkg" に変更する
  9. 更に追加したい項目があるなら追加し、削除したい項目があるなら削除する
    (-ボタンは一番下にある項目を削除するボタン)
  10. ビューをどの形でエクスポートするのかを選択する
    • ビューをエクスポート … 現在のページ(PSDLE)上にそのビューを表示
    • JSON … ビューをjsonファイルとしてエクスポート
    • CSV … ビューをcsvファイルとしてエクスポート
  11. エクスポートした内容からpkgのURLを探し、pkgをDLする
→[目次]


●[BD/DL] 更新データのpkgをDL

●用意するもの
  • PC

●手順
  1. http://kood.info/pstic/ にアクセスする
  2. タイトルID、コンテンツID、PSストアの製品ページのURL の何れかを入力する
  3. 更新データのpkgがあれば表示されるので、DLする

何か問題が発生した場合はページを再読み込みし、TmdbとChihiroのチェックを外してからやってみてください。
更新データのpkgが複数ある場合は古い物から順に使用してください。

→[目次]


●[SACD] CFWのCECHA/B/C/Eでリッピング (USBストレージにISOで)

●用意するもの
ISOはsacd_extractを使用してDSF等として各トラックを出力するか、DVDに焼いて所謂SACD-Rとして活用可能。

●手順
  1. sacd-ripper.pkg をDLし、インストールする
  2. (CFWがRebugのREXの場合は)
    1. Rebug Toolboxをインストール/起動する
    2. システムモードを "REBUG" に変更する
    3. XMB操作モードを "Retail" に変更する
    4. PS3を再起動する
      (SACD-RipperはDEXのvshだと何やら問題があるようで、この作業が必要らしい(source))
  3. USBストレージを挿す
  4. SACD-Ripper を起動する
  5. "Would you like to run in server mode?" と表示されるので5秒以内に "No" を選択する
    (5秒後に自動でDaemonモードになってしまうため)
  6. "The Curent disc is empty or not recognized as an SACD" と表示されるのでSACDを挿入する
  7. 出力先、フォーマット(ISO)、SACDの情報が表示されるので "OK" でリッピングを開始する
  8. リッピングが完了するのを待つ
  9. "ripping process completed." と表示されたら完了。PSボタンでXMBに戻る

→[目次]


●[SACD] CFWのCECHA/B/C/Eでリッピング (LAN経由でPCにDSFで)

●用意するもの
●手順
  1. sacd-ripper.pkg をDLし、インストールする
  2. (CFWがRebugのREXの場合は)
    1. Rebug Toolboxをインストール/起動する
    2. システムモードを "REBUG" に変更する
    3. XMB操作モードを "Retail" に変更する
    4. PS3を再起動する
      (SACD-RipperはDEXのvshだと何やら問題があるようで、この作業が必要らしい(source))
  3. SACD-Ripper を起動する
  4. "Would you like to run in server mode?" と表示されるので "Yes" を選択する
    (或いは5秒間放置する)
  5. DaemonモードになったらSACDを挿入する
    ("Disc : inserted" と表示されたらOK)
  6. sacd_extract用のフォルダを作成する (場所やフォルダ名はどうでも良い)
  7. sacd_extractをDLし、手順6で作成したフォルダに解凍する
  8. 以下のようにしてPS3と接続し、リッピングを開始する
    (sacd_extractには他にもオプションがありますが、今回は単に各トラックをDSFとして出力)
    sacd_extract.exe -s -i "PS3のIPアドレス:2002"
    例: sacd_extract.exe -s -i 192.168.0.10:2002
  9. リッピングが完了したらPSボタンでXMBに戻る
→[目次]



▼コメント


a 2020/03/26 19:01
何という情報量、まさしく渾身の記事ですね。知らなかった事もたくさんありました。


>(rifkeyはEBOOT.BINの物に限りブルートフォースツールが存在するので時間を掛ければPC上で取得可能ではある)

この部分なのですが、PSN版のゲームのEBOOT.BINはLicense(rap)無しで復号出来ると言う事なのでしょうか。
PSNゲームはDRMフリーでない限り必ずrapが必要だと思っていたのですが・・

何かツール等があれば、もしよろしければ教えていただけないでしょうか。
管理人 kood 2020/03/26 21:22
>>aさん
もちろん復号のためにはrapもといそこから導出されるrifkeyが必要です。
ただ、rapが用意できない場合でもBruteForce EBOOT(現在はPS3 Tools Collectionに実装されている)というツールを用いて
総当りで復号させる事で理論的には時間を掛ければrifkeyは取得出来るはずです。そういう意味で書きました。
成功したとして取得出来るのはrapではなくrifkeyなのでklic2rapでrapに変換する必要があります。
(klic2rapはRif Converterにも実装されており、Rif Converter場合、拡張子.klcのファイルがrapに変換可能です)
あくまでも時間を掛ければ可能という話で、EBOOT.BINがあるのならそのコンテンツを購入済みという事になりますので、
私としてはそんな事に時間を掛けるよりもPS3から必要なファイルを持ってきてrapを作成する方が良いと思っています。
あまり勧められる作業では無いので記事に手順として書くのはやめました。
もちろんpkgのURLだけが分かってる場合には有用だと思いますが…
a 2020/03/27 00:42
管理人さんありがとうございます。

重ねて質問で申し訳ないのですが、それは現実的な時間内でkeyを割り出せるものなんでしょうか。
rapは16byteなので128bitのkeyですよね?(rifkeyについてはしっかり理解できてないのですが、恐らく同じく128bit?)。
それを愚直にbruteforceするのは現実的ではない = 「rapなしでは復号不可」、という認識でした。
VitaのNoNpDrm fake licenseも同様ですよね。

例えばPS3(or PSNゲーム)の暗号化実装に何か不備や脆弱性のような物があるのであれば話は分かるのですが。


>そんな事に時間を掛けるよりもPS3から必要なファイルを持ってきてrapを作成する方が良い

これは全く仰る通りですね。
問題があるようでしたら私のコメントは無視してください。

いずれにせよ、ツール名等まで教えていただきありがとうございました。
自分でももうちょっと調べてみようと思います。
管理人 kood 2020/03/27 01:56
>>aさん
仰る事は正しいと思いますし、一般的にはむしろその認識(現実的ではない=不可)の方が良いです。
私は個人的な見解として、専用のツールが存在する以上は不可能では無いと言いたいだけです。
元々BruteForce EBOOTはaldostools氏によって実験的な物としてリリースされました。
0からの総当りも可能ですが、デフォの方式はランダム生成ですので、現実的な時間内に終わる「かも」しれません。
この方式だからこそaldostools氏は見つかるかどうかは "if you are extremely LUCKY" と表現されています。
このツールに不備や脆弱性を突いたような手法は使われていないと思います。
Vitaにこういうツールが存在しないのは現実的な開発者が多いからであり、PS3の場合はそうではなかったというだけの事です。
a 2020/03/27 21:36
あぁ完全に合点がいきました。単純に私が意図を読みとれておらず勘違いしていただけでした。
揚げ足取りの様になってしまい申し訳ありません。

いつも的確な回答をいただき本当に感謝しております。
ありがとうございました。

ライン 2020/04/08 23:56
rpcs3用にCFWから吸い出してUSB保存してみたのですがウインドウすら出なかったので確認させてほしいです。
multiMANでISOバックアップしたのと、PCでird当てたものは同じものと考えてよろしいのでしょうか?
管理人 kood 2020/04/09 00:36
>>ラインさん
はい。全く同じ物という認識で構いません。私の知る限りではどちらもファイルの変換処理は行われていません。
PS3が復号状態でマウントした物をISOにするか、暗号化されている物をPC上で復号するか、の違いだけと私は認識しています。


▼コメントを投稿












※「英数字90%以上」のコメントを規制中です。コメントを投稿する際は日本語でお願いします。
※確認ボタンを押すと投稿確認フォームに移ります。投稿確認フォームの送信ボタンを押してください。
※確認フォームにある「メールアドレス」に入力された内容は管理人のみ確認可能です。空欄で構いません。
※確認フォームにある「タイトル」「パスワード」は当ブログでは使用していません。空欄で構いません。
※確認フォームにある「URL」は名前のリンクとして機能します。空欄で構いません。
※確認フォームには非公開コメントのチェック項目がありますが、非公開コメントは受け付けていません。
メールフォームより連絡頂ければメールにてお返事致します。