作者cassine (Savannah)
看板Modchip
标题[PS3 ] 修改EBOOT.BIN主程式
时间Sun Mar 13 14:11:48 2011
前言:
近来有些游戏放入光碟後会提示要求更新3.56版韧体,如同之前推文说过的,
这些游戏其实是以SDK350编译完成,只是用了3.56版的金钥进行加密而已。低
版本的韧体因为没有3.56版的解密金钥app-pub-356 所以无法解密执行。SONY
在光碟PS3_GAME目录里面的环境设定档PARAM.SFO 里面有指定最低执行需求版
本是3.56,所以对不JB的人是完全没问题的。
那如果我只有3.55版就不能执行了吗?非也,上面提到这些游戏到底还是用
3.50版的 SDK编译完成,所以只要有3.50的韧体,就可以正常执行。如果是
3.41版的韧体,还要修改程式里面呼叫套件的版本。这些要调整的参数,就是
在主程式档案EBOOT.BIN 里面。
事前准备:
这次要准备的工具可多了,简列如下:
1.标准 Linux环境或cygwin
需求套件至少有zlib、gmp 、openssl、gcc 、automake、python 、git ,
请装好备用
2.geohot的工具程式ps3publictools
内含make_self 、make_self_npdrm、与package_finalize 三支程式,请编
译好备用,然後将PATH环境变数指到build目录方便从别处执行
3.fail0verflow的工具程式ps3tools
内含readself、unself两支程式,其他的暂时用不到,也请编好然後将环境
变数PATH指过来
4.金钥
要解密3.56版的程式,需要app-priv-356跟app-pub-356 这两支金钥,其实
只要有後者就可以解密,只是readself会要求用前者验证解密成功与否的样
子,准备好後摆在~/.ps3目录里面备用
5.PS3SFOEdit
这个可以拿来调整PARAM.SFO 档案里面的参数,比如说将韧体需求从3.56降
到3.55、将原本限定从光碟载入改成从硬碟载入
6. PSN升级包装程式
指的是psn_package_npdrm 这支程式,免费开发套件PSL1GHT 里面有
操作方式:
1.将光碟利用备份管理员整个读到PS3 的内建硬碟,然後尝试执行,理所当然
会提示要求升级,如果你同意的话就直接左转出去吧!
如果不同意,接下来才有搞头。
2.以《真.三国无双6》这款游戏为例(先说好我有买正版),用 FTP将
BLMJ-60291下面的PARAM.SFO、ICON0.PNG跟BLMJ-60291/USRDIR 下的
EBOOT.BIN 下载到工作目录,存成EBOOT.orig.BIN
3.利用fail0verflow的工具将主程式解密,需要用到3.56版韧体的金钥,指令
host $ readself EBOOT.orig.BIN
会看到萤幕输出一大串讯息,没有 ERROR字样就是没问题,然後
host $ unself EBOOT.orig.BIN eboot.elf
将主程式解密存成eboot.elf ,unself会将主程式前0x980 长度的档头部份
去掉,所以会稍微小一些,但也有20MB左右
4.利用geohot的工具将主程式重新加密成更新档的形式,指令
host $ make_self_npdrm eboot.elf EBOOT.BIN
UP0001-BLJM60291_00-0000111122223333 (是同一行)
之後可以看到压缩後的EBOOT.BIN 档案大小只有7,134,144 位元组,只有原
本的1/3 而已,原本KT社给的程式不知道是在大什麽XD
5.用PS3SFOEdit打 开PARAM.SFO,有两个地方要改,首先右边DataType从DG改
成HG,允许EBOOT.BIN 从硬碟执行,毕竟更新档是存在硬碟上的。其次按下
Advanced Edit,第 8项PS3_SYSTEM_VER 从03.5600 改成 03.5500,然後按
OK存档,再按Save存档
6.最後是制作假的 pkg更新档,将工作目录按照以下形式调整
BLMJ60291
├PARAM.SFO //刚刚改好的PARAM.SFO
├ICON0.PNG
└USRDIR
└EBOOT.BIN //刚刚改好的EBOOT.BIN
拿出文字编辑器,编写BLJM60291.conf档,内容如下
Content-ID =
UP0001-BLJM60291_00-0000111122223333
k_licensee = 0x00000000000000000000000000000000
DRM_Type = Free
Content_Type = Game_Exec
PackageVersion = 01.00
基本上所有的游戏都可以类推适用,把Content-ID换成相应的值就好,只是
注意要跟第 4步包装EBOOT.BIN 时候用的相同
然後下指令
host $ psn_package_npdrm BLJM60291.conf BLJM60291
UP0001-BLJM60291_00-0000111122223333 (是同一行)
完全没错的话就可以看到程式开始跑,最後产生
UP0001-BLJM60291_00-0000111122223333.pkg档案,如果是3.55-Kmeaw跟
3.55-Wanikoko V2到此为止就可以安装了,3.55-geohot 则还要再用geohot
的package_finalize签证才能安装。
安装之後用平常的方式从备份管理员载入游戏执行即可。
******
转录本文前请知会本人并取得同意
--
○ ____ _ _ _ _ ____ _ _ ____ _____ ____
。 ★(_ _)( \( )( \/ )( ___)( \( )(_ _)( _ )( _ \
o _)(_ ) ( \ / )__) ) ( )( )(_)( ) / ● ‧
(____)(_)\_) \/ (____)(_)\_) (__) (_____)(_)\_) ★
o
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.117.54.160
1F:→ flypenguin:感谢,GOOGLE半天比不上C大一篇文 XD 220.135.24.180 03/13 14:56
2F:→ like5566fans:用3.55CFW的不用改EBOOT.BIN吧123.194.164.248 03/13 15:30
3F:推 rabbit83035:推 C大真的很专业 122.116.176.30 03/13 16:08
4F:→ cassine:其实制作这些东西根本不算什麽,重点是那 140.120.31.137 03/13 16:32
5F:→ cassine:些在幕後替我们生出这些工具的人,对岸一 140.120.31.137 03/13 16:32
6F:→ cassine:堆人只要看到破解档就在那边喊「神降临」 140.120.31.137 03/13 16:33
7F:→ cassine:未免也太夸张Orz... 140.120.31.137 03/13 16:33
8F:推 kivencco:这篇文章一定要M起来。118.167.246.139 03/13 17:16
9F:推 SuperSnoopy:超级大推!! 118.169.64.19 03/13 18:50
10F:→ flypenguin:遇到3.56甚至3.60的GAME,就要改EBOOT 220.135.24.180 03/13 20:32
11F:推 SuperSnoopy:目前有哪些一定要3.56或以上的吗? 118.169.64.19 03/14 01:01
12F:推 djboy:推一个,大大用心啊!!140.124.114.151 03/14 10:29
13F:→ flypenguin:真三六3.56 116.59.23.95 03/14 13:45
14F:推 PaganTsai:DA2 3.56 220.136.48.235 03/14 14:04
※ 编辑: cassine 来自: 140.120.31.137 (03/31 17:36)