海盗王原版登录器kop.exe原理分析

编程入门 行业动态 更新时间:2024-10-04 09:28:54

海盗王<a href=https://www.elefans.com/category/jswz/34/1753384.html style=原版登录器kop.exe原理分析"/>

海盗王原版登录器kop.exe原理分析

之前自己开发了一个比较简单的海盗王登录器,采用版本号+压缩更新包的方法。这个方法主要是配置简便省事,对使用人员要求比较低。

昨天从一个服里看到了比较原版的登录器,复杂了很多,但功能强大很多,然后分析了一下它的设计原理和思路,希望对开发客户端游戏登录器的同学们有帮助。

1、客户端基本配置:

只需要kop.exe和Update.cfg这2个文件就能运行起来。没有Update.cfg会提示连接失败的。其中,kop.exe是主更新程序,Update.cfg是配置文件,内容如下:

server_ip = 222.222.222.222
server_ipn = 222.222.222.222
server_port = 8889
run = system\game.exe
Homepage = :8888
Register = :8888/reg
News = :8888/gameupdate_mid1
Activity = :8888/gameupdate_mid2
Update = :8888/gameupdate_mid3
Ad = :8888/gameupdate_top
Agreement = :8888
skip_update = 0
passive = 1
overtick = 200
group = 最新体验专区

打开更新器后是这样的:
2、工作原理:
1)这个kop.exe会把自己复制一份,改名kop_d.exe,然后运行它。其实真正运行的是kop_d.exe这个程序,从进程列表可以看到。原因后面会讲到,比较巧妙。
2)读取配置文件中的
server_ip = 222.222.222.222
server_port = 8889
连接到网站,下载ver文件(没有后缀名的):

里面的内容是一串加密后的乱码。猜测是一串MD5校验码,然后稍作加密处理了,所以看不到真实字符。
猜测ver这个文件的内容是另外一个文件VerComp.dat的MD5校验码。更新程序会在本地找是否存在ver对应的上次更新下载保留的文件,应该是ver.rec这个文件,里面就是一个MD5码。如果2个文件不一致,证明是服务端文件有更新了,就下载VerComp.dat,在客户端转成VerInfo.rec保存。VerComp.dat是加密的,但是VerInfo.rec是明文的,里面如下:

NULL
GameAutoLogin.exe,5a6dd64d32ed400e617e8e0d5f2f5cef,1204825
kop.exe,efdabde6b898a39f6f55d0307489b196,1175901
scripts/lua/forms/ChaoShen.clu,b6bb7c68ad8013c11feeaad017e18674,1041
scripts/lua/forms/ForgeTransfer.clu,2134fedfca01fccd76e5933fe8d8cb0f,1056
scripts/lua/forms/main.clu,4e68bb78ef2c83099efbf676a0e5a372,24254
scripts/lua/forms/NPC.clu,6120236b8f7fd0b03f81cb7becf9cdd8,7403
scripts/lua/forms/Status.clu,311d8348af56437163e14670c5cb2ef2,1482

这个就是对应更新文件的文件路径、MD5校验码、文件大小。
下载的VerComp.dat 和 VerInfo.rec 对比,找出不一样的,从服务端下载文件。

可以把kop.exe和配置文件Update.cfg都能更新。这个其实很有用,比如登录器更换皮肤、升级新版功能,更换服务器等,都可以实现,不需要玩家另外下载文件,设计还会比较远见的。这就是上面kop.exe复制自己成kop_d.exe后,运行kop_d.exe的原因,实现自己更新自己,真是牛人!

更新后文件结构如下:

文件没有压缩,都是直接从网站下载文件,覆盖的。

3、服务端猜想:
1)应该有一个版本生成工具。当有客户端新文件添加进来后,运行版本工具,会逐个目录和文件遍历一次,生成VerComp.dat并加密,然后将VerComp.dat进行MD5,生成的校验码放到ver里面再加密。
2)如果自己做这个生成工具的话,我觉得VerComp.dat 和 ver 明文就可以了。
3)因为我没深入研究这2个文件的加密方式,所有没有复原出来这个生成器,所以一整套工具没办法分享出来直接用。希望有能力的同学,多多研究下。

更多推荐

海盗王原版登录器kop.exe原理分析

本文发布于:2024-02-14 13:13:01,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1763480.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:原版   海盗王   原理   登录器   exe

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!