OFW4.82のPS3でバックアップゲームを起動する方法 2018/2/5

2018/02/05 17:28 PS3 3

今回紹介するのはOFW4.82のPS3でバックアップゲームを起動する方法です。
全モデル対応ですが、面倒なのでCFWが導入出来ない初期FW3.60以上のPS3のユーザーがメインターゲットです。
初期FW3.56以下のPS3のユーザーはPS3Xploit(Flash Memory Writer)を使用してCFWを導入してください。
CFWが導入可能なのにも関わらず今回の方法を取るのは、まあOFW環境である事を意識するなら無くは無いかな…
具体的な解説は後述するとしてまず概要を。Step1とStep2に分かれます。

●Step 1
OFWのPS3でバックアップゲームを起動する方法 - 2017/12/08
まず上記の記事で紹介した方法を取ります。やっている事としてはPS3のバックアップ機能で生成されたデータに
「OFW用として変換したバックアップゲーム」を挿入し、それをPS3で復元してやるというものです。
変換はゲームのアップデートを利用するのでアップデートが配信されていないゲームに関しては無理です。
また、変換出来たとしても全ゲームが起動出来るわけではありません。
この方法はゲームのライセンスファイル(LIC.DAT)をLIC.EDATに変換/置き換えをしています。
そこでソニーはFW4.75でバックアップ復元の際にLIC.EDATを無視するという対策を行ってきました。
しかし、この対策後もLIC.EDATはバックアップゲームを起動するために機能します。
また、PS3から別のPS3へデータを移すデータ転送ユーティリティーはLIC.EDATに関する対策が入っておらず、
FW4.70以下のPS3との二台持ち環境であればFW4.75以降のPS3でもバックアップ起動が行えるという、
言ってしまえばソニーは中途半端な対策をしてきたわけです。
Step1はバックアップデータを復元して「LIC.EDAT無しのゲームが入ってるPS3」を用意するという所までです。
FW4.70以下のPS3との2台持ちの方はデータ転送ユーティリティー使うなりStep2の方法使うなり、まあ好きにしてください。

●Step 2
OFW4.82の全モデルのPS3で使用可能なROPチェーンをまとめた PS3 Exploitation Tutorial Template
このテンプレートにはReturn-oriented programming、通称ROPと呼ばれる手法で行える事がまとまっており、
その中の1つ「Read/Write File Test」というROPチェーンは、簡単に言えばファイルのコピーを行います。
USBポートに挿したUSBメモリ等のストレージがコピー元として使用可能なので、このROPチェーンを使用して
USBメモリにあるLIC.EDATをPS3のHDDにコピーしてしまおうじゃないか、というのがStep2です。

この記事ではStep1で書いた事、つまり「バックアップデータにOFW用へと変換したゲームデータを挿入してPS3で復元」
というのはすでにやったものとして話を進めます。この記事で紹介するのはStep2で書いた事です。



●用意するもの

・PS3 / FW4.75~4.82
・PC(Windows)
・USBメモリ等のUSBストレージ(FAT32)
・ネットワーク環境
・LIC.EDAT
PS3 Exploitation Tutorial Template v0.0.2
MiniWeb HTTP server (miniweb.exe)

LIC.EDATはバックアップゲームをOFW用に変換した際のデータ内にあります。
※ "タイトルID/LICDIR/LIC.EDAT"
このタイトルIDも使用するので覚えておいてください。
Bから始まるタイトルIDでは無くNPから始まるタイトルIDなのが注意点です。

miniwebはローカルネットワークにHTTPサーバを構築可能なツールで、この手順ではそこにPS3からhttpで接続します。
そのためPCとPS3は同一のネットワークに接続している必要があります。

用意したUSBメモリ等のUSBストレージは事前にFAT32でフォーマットしておいてください。



●LIC.EDATをPS3のHDDに転送する手順

0、LIC.EDATのサイズ(バイト単位)を確認し、そのサイズを16進数に変換する
※おそらく65936バイトだと思いますが一応。65936バイトなら10190です

1、適当な場所に専用フォルダを作成し、miniweb.exeをコピー
※例:C:/PS3/miniweb.exe

2、手順1で作成した専用フォルダ内にhtdocsフォルダを作成
※例: C:/PS3/htdocs/

3、htdocsフォルダに PS3 Exploitation Tutorial Template のファイルをコピー
※ .../htdocs/index.html となるように

4、miniweb.exeを起動し、コンソール内にあるHostアドレスを確認する
※miniwebのコンソールは最後まで閉じない

5、USBストレージのルートにLIC.EDATをコピーする
※ "USBメモリ:/LIC.EDAT"

6、PS3を起動する
※以降PS3上での作業

7、インターネットブラウザを起動する

8、Startボタンを押して手順4で確認したアドレスを入力して接続

9、"△ボタン/ツール/ホームページ" で "現在のページを使用する" を押してOKを選択

10、△ボタンを押し、メニュー一番下の"終了"からブラウザを終了

11、ブラウザを再度起動
※ホームページとして PS3 Exploitation Tutorial Template に接続出来ていればOK
※これはPS3のメモリが出来る限りクリーンである事が推奨されるために必要な作業

12、LIC.EDATの入ったUSBストレージをPS3に接続する
※BDドライブに近い方のUSBポートに接続すると良い(そっちがusb000のため)

12、Preset Chains で Read/Write File Test を選択する

13、Sourceのテキストボックスにコピー元のファイルパスを入力
※ /dev_usb000/LIC.EDAT

14、Destinationのテキストボックスにコピー先のファイルパスを入力
※ /dev_hdd0/game/タイトルID/LICDIR/LIC.EDAT
※タイトルID部分をそのゲームのNPから始まるタイトルIDにする

15、File SizeのテキストボックスにLIC.EDATのファイルサイズを16進数で入力
※0xを付ける
※65936バイトなら0x10190

16、手順15のテキストボックス横の Set New Size ボタンを押す

17、ページ下にあるイニシャライズボタン(Initialize ROP Chain)を押す
※これによりメモリ上のオフセットをサーチする処理が始まる

18、水色の字で "SUCCESS! You Can Now Execute Your Chain!"と表示されるまで待つ
※Did Not Find All Offsets! と表示されたら一度ブラウザを終了して再度試す
※10回やって無理ならPS3を再起動した方が多分良い

19、手順18の文字が表示されたら実行ボタン(Execute Chain)を押す

20、水色の字で "Successfully Transferred Source To Destination!" と表示されたらLIC.EDAT転送成功

21、ブラウザを終了してゲームを起動してみる。



ロシア語ですが、各ゲームのアップデートの有無は以下にまとめられています。
https://docs.google.com/spreadsheets/d/1n43hG2Wo2NtXFYAV84WU_Bga2r9KnQeEpGtpCzS1suU
また、こちらもロシア語ですが、OFW用に変換したゲームの起動確認リストがあります。
https://docs.google.com/spreadsheets/d/156vq0nYKkXa0sE_KXXD_aUZqFconjpueRds_ksbppTI
以下は英語の起動確認リストです。
http://www.psdevwiki.com/ps3/CFW2OFW_Compatibility_List



PSXHAXに画像付きのチュートリアルが有ります。
変換したゲームをバックアップデータに挿入するためのTrueAncestor BACKUP Retailerの解説も画像付きで載っています。
Tutorial: Inject PS3 Backup and Transfer LIC.EDAT Using PS3Xploit
私は画像用意するのが面倒だったんで用意していませんが、あった方が分かりやすいという方はPSXHAX見てください。



OFW用に変換する手順の記事は精神的にちょっと不安定な時にざっと書いたので読み辛いと思います…
気が向いたら修正して多少は読みやすくしたいと思います…
あ、DLCの変換手順はめんどくさいので書いてません。理解こそしているものの試してない。

私は基本的には読者さんの質問に答えるスタンスですが、この方法に関してはなんか質問来ても無視するかもしれません。
だってこの方法めんどくさいし…特にバックアップゲームの変換はめんどくさいので、分からない事は多分無視します。
私に分かる事なら普通に回答するつもりです…

kood

▼コメント


チャド 2018/08/04 00:39
いろいろ検索してたらここにたどり着きました。
本体はCECH-3000番で、OFW4.82のHDDに入っているDL版ゲームを吸い出す方法ってありますか?
吸い出して、CFWの入っている本体やエミュで起動したいなと思っています。
管理人 kood 2018/08/04 01:59
>>チャドさん
DL版の場合、吸い出すのではなくrap(rif+act.dat+idps)とPKGが必要になります。それならCFWでも起動可能になります。
OFWの場合はPS3のフルバックアップを展開する事でrifが取得可能で、HANを導入する過程でact.datとidpsが取得可能です。
http://cmd0725.blog.fc2.com/blog-entry-1975.html
上記記事はHANの導入記事です。rapに関しても書いています。(少しだけHANの情報が古いですが、多分大丈夫なはず…)
PKGのURLを取得するPSDLEに関しても少しだけ触れています。

CFWではrapを扱うreActPSNがあり、それを使った後にPKGをインストールすればCFWでそのDL版ゲームが起動可能です。
reActPSNに関しては海外の方がいろいろと解説していると思うのでググればすぐ解決するはずです。
チャド 2018/08/04 12:16
>>管理人さん
レスありがとうございます。
無理かと思っていましたが、やりようがあるみたいなのでトライしてみようと思います。
直ぐには理解出来ませんが、リンク先の記事を読んで勉強させて頂きます。


▼コメントを投稿












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