Vita 偽ライセンスを作成してゲームのDRM保護を回避する事が可能な NoNpDrm v1.0 がリリース

GitHubで、TheFloW‏氏がHENkaku環境のVitaでゲームの偽ライセンスを作成してDRM保護を回避する事が可能な
HENkaku向けプラグイン NoNpDrm v1.0 をリリースしていました。先週の予告通り早速リリースされました。

DRM保護の回避、それはつまり他人とゲームを共有可能である事を意味します。
readmeに"Sharing"と書いてある所からそれは分かると思います。ただ、やはりそれを推奨するのはよろしくないというかなんというか…
私としてはそういう思いなので、あくまでも個人使用の範疇でNoNpDrmが使われる事を思って記事を書きます。
決して海賊行為の助長を目的としているわけではありません。

では、私なりにNoNpDrmの使用方法を紹介する記事を書きたいと思います。



(訳)
法的放棄声明
・自らがライセンスを保有するコンテンツをアーカイブ/保存する以外の目的で
 DRM保護やコピープロテクトの施されたコンテンツの配布、また、それら保護やプロテクトを回避する事は違法です。
・本ソフトウェアでは個人利用のみを想定しています。
・本ソフトウェアの開発者は本ソフトウェアを利用するにあたっては一切の責任を負いません。
by TheFloW 


●NoNpDrmの特徴
・PS Vitaのコンテンツのライセンスファイルとして使える偽ライセンスを作成可能(=DRM保護回避)
・PSプラスのフリープレイやその他の事柄で存在する"残り時間"を回避する事が可能
・一部の体験版を製品版として扱えるように
・作成した偽ライセンスを使う事で他のPSNアカウントの環境下でもそのゲームを起動可能
・偽ライセンスを使用したゲームは要求がFW3.60以下であれば通常のゲームと同じように動作し、アップデートの適用も可能
・偽ライセンスを使用したゲームは通常のゲームと同じようにVitaminやMaiDumpToolを使ってダンプ可能(=PFSの復号化が可能)
・機器認証を解除したPS Vitaで、過去に購入したインストールされたままのゲームをプレイする事が可能(偽ライセンスが必要)

>・一部の体験版を製品版として扱えるように
こいつはおそらくダンプアプリであるVitaminの機能と同じなのではないかと思います。
例えばマ〇〇ラとかテ〇〇アで使えるんじゃないかと。試してないからどうなるかは知らない。


●NoNpDrmでは出来ない事
・ゲームデータのモディファイ(MOD,改変)
・PFSが復号化済のゲーム(VitaminやMaiDumpToolでダンプした物)の偽ライセンス作成
・有効な正規ライセンスファイルや偽ライセンスが無いゲームの偽ライセンス作成及び起動
・PSPのゲームやPS1のゲームのDRM保護回避
・要求されるFWが3.61以上のゲームのDRM保護回避

>・ゲームデータのモディファイ(MOD,改変)
これが出来ない理由としてはPFSと呼ばれる暗号化がゲームデータに施されており、
それがゲームプレイ時にのみ復号化される物のためこういう自体が起こる、とそう私は認識しています。
ただこれで困るかと言われると困りはしないかと。特徴でも挙げたようにNoNpDrmの偽ライセンスで動作するゲームはダンプ可能です。
ダンプアプリではPFS復号化済の物がダンプ可能なため、もちろんダンプして動作するタイトルに限りますが、
ダンプアプリを利用する事でゲームデータの改変は可能だという事です。


●不明な点
・ゲームを対象にしたプラグインの動作

ダンプをしなくても動作する事がありますが、起動時にエラーが出る事もあるため。
多分プラグインとゲームの組み合わせで変わる。これに限ってはエラー出たらダンプするしかないかと。




●必要な物
・PS Vita / PS Vita TV - FW3.60 HENkaku導入済み
・正規ライセンスを持っているゲーム(= ゲームカード所持 or PSNからダウンロードした物)
・nonpdrm.skprx
・PC(ゲームデータや偽ランセンスを他の環境にコピーするために。)(ただ単に自分のメモカ上で偽ライセンスで動作させたい場合は不要。)
・別のVita/別のメモカ(ただ単に自分のメモカ上で偽ライセンスで動作させたい場合は不要。)

同じメモカでアカウントを切り替えている人も偽ライセンスを正規ライセンスと入れ替えるだけで良いのでPCは必要無いかもしれません。

●導入方法
nonpdrm.skprxをダウンロードし、ux0:tai/ にコピーし、config.txtの*KERNEL行にパスを書き足してリロード。
*KERNEL
ux0:tai/nonpdrm.skprx
※ux0にtaiフォルダが無い場合はur0:tai/を使う

●偽ライセンスの作成方法
プラグインを有効にしてゲームを起動すれば以下の場所にrif形式の偽ライセンスが作成されます。
ux0:nonpdrm/license/app/タイトルID/
ux0:nonpdrm/license/addcont/タイトルID/DLC_FOLDER/
※ライセンスのファイル名は全て「6488b73b912a753a492e2714e9b38bc7.rif」になる模様

めちゃくちゃお手軽ですね。
後者のaddcontフォルダ内に作成される偽ライセンスは追加コンテンツが存在する場合にのみ作成される追加コンテンツの偽ライセンスです。
偽ライセンスが作成されない場合はプラグインが有効になっていない可能性があるので、
config.txtを見直してからVitaを再起動してください。再起動でconfig.txtが強制的にリロードされます。


●DL版のゲームを偽ライセンスで動作させる方法
同じメモリースティックでアカウントを切り替えている場合
(フリープレイの残り時間回避やただ単に偽ライセンスで動作させたい場合もこれで)
偽のライセンスを"ux0:license/app/タイトルID/" と "ux0:app/タイトルID/sce_sys/package/" にコピー。
"ux0:app/タイトルID/sce_sys/package/work.bin" を念のためバックアップしておき、packageフォルダに入れた偽ライセンスをwork.binにリネーム。
同じメモリースティックの場合はそのまま"ux0:app/タイトルID/"が参照されるのでゲームデータをどこかに移動するような事はしなくてOK。

別のVita/別のアカウントでDL版ゲームを偽ライセンスで動作させる方法
まずゲームデータである"ux0:app/タイトルID/"をPCにコピーしておき、偽ライセンスもPCにコピーしておく。
そして、ゲームデータを別のVitaの"ux0:app/タイトルID/"にコピーし、偽のライセンスファイルを"ux0:license/app/タイトルID/" にコピー。
次に、"ux0:app/タイトルID/sce_sys/package/work.bin"を削除して、"ux0:app/タイトルID/sce_sys/package/"に偽のライセンスファイルをコピーし、
それをwork.binにリネーム。最後にVitaShellのホームで△ボタンを押し、"Refresh livearea"を実行すればインストール完了となり、Vitaのホームにバブルが現れる。
バブルが現れない場合はVitaを再起動してから"Refresh livearea"を実行する。
Refresh livearea機能はwork.binを見ているようなので、どうしてもインストール出来ない場合は偽ライセンスに問題がある可能性あり。

work.binはライセンスファイルと合わせて参照されるファイルで、ライセンスファイルと同様の働きをするファイルのようです。
DL版の本来のwork.binはアカウントと関連付けされているみたいで、アカウントIDの情報が含まれているそうです。
ただ、偽ライセンスはそういった情報が含まれていないそうで、licenseフォルダに入れた偽ライセンスと合わなくなるため、
work.binを偽ライセンスで置き換える必要があるとの事。


●ゲームカードのゲームを偽ライセンスで動作させる方法
(ゲームデータをメモカに入れて偽ライセンスを使う事でゲームカードレスなゲームプレイが可能)
ゲームデータである"gro0:app/タイトルID/"と偽ライセンスをPCにコピーし、メモカや別のVitaの"ux0:app/タイトルID/"にゲームデータをコピーし、
偽ライセンスを"ux0:license/app/タイトルID/にコピー。"ux0:app/タイトルID/sce_sys/package/"に偽ライセンスをコピーし、それをwork.binにリネーム。
最後にVitaShellのホームで△ボタンを押し、"Refresh livearea"を実行すればインストール完了となり、Vitaのホームにバブルが現れる。
バブルが現れない場合はVitaを再起動してから"Refresh livearea"を実行する。
Refresh livearea機能はwork.binを見ているようなので、どうしてもインストール出来ない場合は偽ライセンスに問題がある可能性あり。

ただ単に自分のメモカでゲームカードレスなプレイがしたい場合はPC通さずにVitaShell上だけのコピー操作リネーム操作で作業を終える事も可能。
VitaShellの設定でUSB device設定を"Game Card"にすればPCと接続した際に直接ゲームカードが参照されるようで、そちらは高速なコピーが望めるとの事。
ただしVitaTVではそもそもPCとUSB接続が出来ないので、この方法は通常のVitaでのみ行う事が可能。


●追加コンテンツを偽ライセンスで動作させる方法
追加コンテンツデータである"ux0:addcont/タイトルID/DLC_FOLDER/" もしくは "grw0:addcont/タイトルID/DLC_FOLDER"をPCにコピーし、
追加コンテンツの偽ライセンスもPCにコピー。メモカや別のVitaへ追加コンテンツは"ux0:addcont/タイトルID/DLC_FOLDER/"となるようにコピーし、
偽ライセンスは"ux0:license/addcont/タイトルID/DLC_FOLDER/" にコピー。


●ゲームの更新データについて
"ux0:patch/タイトルID/" もしくは "grw0:patch/タイトルID" をPCにコピーして別のVitaの同じ場所に コピーする事で共有が可能。
ただ、NoNpDrmの偽ライセンスを使ったゲームはPSNから更新データをダウンロードしてアップデート可能なので、更新データのコピーやらは不要。


(訳)
トラブルシューティング
・「ゲームを起動しようとするとC1-2758-2エラーが発生する」
 →何らかのファイルが壊れている可能性があるので、全部コピーし直して再挑戦。
・「ゲームを起動しようとするとC1-6703-6エラーが発生する」
 →Devkit/Testkit (PDEL/PTEL)でそのエラーが発生する。現在その2つのデバイスはサポートしてない。
・「ゲームを起動しようとするとC0-9250-6エラーが発生する」
 →nonpdrm.skprxが有効になっていないため。config.txtを見直してから再挑戦。
・「ゲームを起動しようとするとNP-6182-7エラーが発生する」
 →再現する事が出来ていないので、何度も発生する場合はGitHubのIssuesで報告が欲しい。
・「製品版になった体験版タイトルがLiveareaでは体験版表示のまま」
 →体験版の状態でゲームをコピーしたため。
・「インストール手順をミスった。ゲームの再インストールをするには」
 →"ux0:license/app/タイトルID/"から偽ライセンスを削除してVitaShellのRefresh liveareaを使う。
by TheFloW 



まあ、こんな感じでしょうか。法的放棄声明とトラブルシューティングは簡単な訳をそのままここに。
これでゲームカードレスでゲームプレイが可能ですし、サブアカ持ってる人はそっちでもメインアカウントのゲームをプレイする事が可能です。
プラスの残り時間も回避可能です。あ、それに関して思った事が1つ。
プラグインを有効にすると残り時間の表示が消えます。ただそれはプラグインが消してるだけです。多分ですけど。
多分、偽ライセンスを正規ライセンスと入れ替えるまでは残り時間は回避されないままなんじゃないかなあと…。
ああ、それと、DL版でNoNpDrmを使う場合は正規のwork.binだけじゃなく正規ライセンスも念のためバックアップ取った方が良いかも。
そこは皆様の判断で。

では今回の記事はここまで。



2017/10/12 追記
NoNpDrmでは出来ない事としてモディファイを挙げましたが、モディファイを行う方法が公開されました。
以下の記事で書きましたので、モディファイに興味がある方の参考になれば。。。
Vita HENkaku環境でゲームデータのモディファイ(MOD)を行う方法 2017/10/08

[ 2017/09/16 01:29 ] カテゴリ PS Vita | コメント(9)
お売りください。駿河屋です。


▼コメント





 2017/09/16 08:06 
プラグインを有効にしてゲームを起動とはどこで有効にさせるんですか?



通りすがり 2017/09/16 14:19 
●導入方法
をよく読もう



 2017/09/16 23:26 
何がよく読もうだよ
書き込んでリロードしてもなんねえからいってんだよ



おやおや 2017/09/18 13:04 
>nonpdrm.skprxをダウンロードし、ux0:tai/ にコピーし、config.txtの*KERNEL行にパスを書き足してリロード。
ux0:tai/config.txtの中はこんな感じで書き換え再起動
# For kernel plugins, you must reboot for changes to take place.
*KERNEL
ux0:tai/nonpdrm.skprx  <---これを追記

これでプラグインが有効になって起動しているのか?・・・ 適当にアプリを起動
フォルダを覗くと、「ux0:nonpdrm/license/app/タイトルID/」となっているが、「ux0:license/app/タイトルID/」とnonpdrmのフォルダは見当たらない。
タイトルIDの中に存在するライセンスのファイル名は「6488b73b912a753a492e2714e9b38bc7.rif」になっている。
何か上手く動作していないような・・・
アドバイスお願い致します。




 2017/09/18 15:46 
●追加コンテンツを偽ライセンスで動作させる方法
これだけが全然認識してくれない
カードレスプレイは成功したけど、これは全然駄目だ



名無し 2017/09/19 13:40 
pluginを有効って
nonpdrmをtaiに置いて
*KERNEL
ux0:tai/nonpdrm.skprx
これ書いて再起動するだけでいいんですよね?
ゲーム起動しても
nonpdrmフォルダがでてこないです…



 2017/09/20 08:12 
ゲームカード(お店で購入したゲーム)
psストアで購入したゲーム出なければ
nonpdrmフォルダはつくれないよ!割れゲーでは無料!ゲオで500円ぐらいのゲーム買って起動しなよ!



 2017/10/02 20:50 
正規に購入したDL版ゲームの偽ライセンスってどうやって所得すればいいんでしょうか?
3.60HENKAKU VITAと3.65無改造VITAを所持しています。
3.65無改造VITAでPSNからDL版をダウンロードし、コンテンツ管理アシスタントを使ってPC経由で3.60HENKAKU VITAに移動したのち起動しようとしたのですが、機器認証してくださいと出て起動自体が出来ないのでnonpdrmフォルダに偽ライセンスが作成されないようなのです。
ゲームカード起動で偽ライセンスが作成されたのは確認済みです。自分は何かやり方を勘違いしているのでしょうか?
どうか教えてください。



管理人 kood 2017/10/02 22:15 
>機器認証してくださいと出て起動自体が出来ないのでnonpdrmフォルダに偽ライセンスが作成されないようなのです。
>自分は何かやり方を勘違いしているのでしょうか?
勘違いをされていると言いますか、その表示の通りで、あなたの3.60機が機器認証されていないという事です。
両機でアカウントが同じなだけではダメなのです。3.60機も機器認証されている必要があります。
DL版のゲームの起動にはVitaを機器認証した時に作成されるact.datというファイルが参照されます。それが無いという事ですね。
解決策があるかと言われると、現状無いと答えるしかありません。Ensoのリリースに合わせてソニーが機器認証に関する対策を行ったからです。
もしあなたが過去にact.datをバックアップしていたのならtm0:npdrm/にコピーする事でゲームの起動は可能だと思います。


(記入必須)

(空白で構いません / 管理人のみ確認可)

(記入必須)






メールフォームより連絡頂ければメールにてお返事致します。


お売りください。駿河屋です。