本故事纯属虚构,如有雷同纯属巧合。

0  游戏的加密

对着网游《天x八x》的网络请求数据,研究了一阵子,石胖子,才搞明白。原来游戏的请求数据使用了对称加密的算法。

因为网游的的实时性要求高,为了降低延时,使用了计算成本相对较低的对称加密算法。

  • 网游的的实时性要求高
  • 非对称加密更安全,但是耗时久
  • 对称加密安全性也有一定保障
  • 对称加密耗时短

并且由于这一切都是游戏的客户端,自己悄悄进行的,所以怎么解密,让石胖子好一阵子头疼。

01 一扇门

无心搬砖的石胖子,在认真研究对称加密算法,不知不觉中一整天过去了….

临近傍晚,石胖子哀叹一声:“没有人告诉我密钥是啥,这些密文,全是各种行位移,列混合,多轮加密….破解难度难以想象”

得出的结论是,如果有能力破解这些,应该就不差钱买学区房了。大别野也是信手捏来。

而且如果破解了,后续工作就可能涉及篡改数据,胆小的石胖子想了想,还是别为难自己的数学能力了。

02  一扇窗

关上了一扇门,总能找到一扇窗。石胖子决定换个思路,想了下人类是如何玩游戏的:

  • 肉眼看到游戏中人物的状态和环境
  • 通过手来操作人物

也就是说,游戏外挂只要做到2点,就可以了。所以需求变成了

  • 通过程序来判断游戏人物状态和环境
  • 程序操作游戏人物

如果从这个思路考虑,并且成功的话,就完全不需要关心游戏的数据传输了。因为外挂就是在模拟人的行为。

石胖子,想到自己去年做的一次公司内分享。分享的题目是:图片识别与Opencv。

所谓“模式识别”,通俗点讲就是 图片识别。当然,广域来说还包括声音,文字等等的识别

石胖子打算通过图片识别的方式来获取游戏人物当前的状态。简单来说,就是赋予游戏外挂视觉。

至于如何让外挂操作人物行动,就是石胖子要考虑的另一件事情了。

事情就这么欢快的决定了。石胖子打算在别人成功的路上走出自己的辉煌。改用“模式识别”的方式来继续自己的外挂之路。

03  外挂的图片识别

为了搞清楚这块的工作怎么做,石胖子又进行了一番调研。发现很多游戏外挂的制作者,并没有相关的专业知识。甚至连高数都没学过,连矩阵的秩是什么不知道,却完全不妨碍他们完成外挂的制作。

石胖子在想,那些不是互联网的从业人员的外挂制作者,编码能力肯定不如自己这个5年老码农。

而且这些不懂互联网的人也是用这种“高大上”的“图片识别”的方式来制作外挂。究竟是怎么一回事。

答案是:借力

使用现成的工具,提供收费/免费的相关底层能力支持的。比如“某mo插件”

有大量的游戏外挂制作者,都是使用这类的第三方工具/插件来处理底层工作的。

这些第三方的工具/插件都喜欢推荐制作者使用“易语言”来进行上层的外挂开发。因为有几个好处:

  • 易语言多为中文

虽然中文不是合适的编程用语言,但是可以降低一部分人的语言阅读成本。增加了受众。

对,就是阅读成本,而不是学习成本。

  • 依赖性强

这些插件/工具所使用的易语言都各不相同,所以如果你学了这家的易语言,就必须使用这家的工具。

  • 收益点多

这里的收益点,还是对工具/插件的提供方而言。

当你使用他们的工具/插件时,你的学习课程,你的后期外挂打包,你的拓展功能定制。

这一切都是依赖于他们。都是被收钱的点。

04 石胖子要自力更生

石胖子觉得这样受制于人不好,自己又不是没有能力做这些基础的事情,只不过是少一点休息时间,为什么不从最基础的开始,做这些呢。

而且让一个互联网开发去学“易语言”花的时间,可能比自己做定制化的图片识别工具久。

新的一周:石胖子要开始写自己的图片识别代码了.....

< 未完待续 >

往下拖下面还有“加密”的小科普哦

码农在中年

人虽中年,心已老年

-1  战争中

说到战争中的加解密,就是谍报工作的一部分了,有耳熟能详的各种电影电视剧,在中国古代,军中也有密信的说法。比如:

一封平平无奇的信函,唯一需要关心的是,寄件方的印章盖在哪个字上。  然后根据事先的约定来确定这个字代表:进攻,还是撤退。

很简单,但是感觉也很难破解。

-2  对称加密

上面的例子就是典型的对称加密。

双方拿一样的密码本来进行加密和解密

常用的有ase和3des。3des之所以名字前面有个3,是因为会进行3轮的des加密,而ase则会进行10-14轮的加密循环,基本木办法解密。

-3  非称加密

理论基础是

欧拉函数 欧拉定理 费马小定理 模反元素.....

结论就是

两个素数的乘积作为公钥,而素数本身作为私钥。公钥加密数据,私钥解密数据。

人话就是:

  • 有两把不一样的钥匙,叫:公钥和私钥
  • 公钥锁上的箱子,公钥却开不了
  • 私钥可以打开公钥锁上的箱子

比如我们常听到的HTTPS就是HTTP加上这种非对称加密协议组合而成。

-4  加密摘要加密

这是一种对数据有损的加密方式,所以解密也就变得没有什么意义了。就如同压扁的汽车,外壳恢复的再好,也启动不了一样。

不能验证“数据内容是什么”,只能验证“数据内容是否被篡改”。

一般用来保证数据的一致性。

最耳熟能详的就是MD5了

使用得当,技术才无罪,爬虫的前车之鉴,谨记。

< 科普时间END>

面向监狱编程 - 石胖子写网游外挂 (2) 加密和解密相关推荐

  1. 面向监狱编程 - 石胖子写网游外挂 (1) 请求是乱码

    " 本故事纯属虚构,如有雷同纯属巧合." ​ 0  穷中年男人的苦 - 学区房 某年,某家互联网金融公司(俗称p2p)的开发工程师石胖子.最近由于老婆闹着要给孩子买学区房,心情烦闷 ...

  2. 从 Nginx 到 Pandownload,程序员如何避免面向监狱编程?

    作者 | 马超 来源 | CSDN博客,责编 | 夕颜 封图 | CSDN付费下载视觉中国 出品 | CSDN(ID:CSDNnews) 据扬州网警巡查执法官方消息,百度网盘破解版Pandownloa ...

  3. 频频曝出程序员被抓,我们该如何避免面向监狱编程?

    过去几年,频频有程序员被抓的消息刷爆技术圈,无论是技术高手.公司合伙人还是普通程序员,甚至整个科技公司,都有因为违法被抓的案例. 案例 比如: 1.著名的Nignx之父Igor Sysoev的前东家R ...

  4. 程序员,技术的“背锅侠”,盘点 2020 年面向监狱编程的那些事!

    [CSDN 编者按]过去一年,"删库跑路".安全漏洞等事件层出不穷,企业.技术人深受其害,作为一名程序员,在新的一年即将到来之际,我们该如何避免面向监狱编程? 作者 | 马超    ...

  5. 第四十六期:最近程序员频繁被抓,如何避免面向监狱编程?!

    最近,有很多关于程序员被抓甚至被判刑的新闻在朋友圈疯传:"某程序员因为接了个外包,帮别人写了个软件,结果这个软件被用于赌博导致被抓.某公司利用爬虫抓取用户信息,最后被发现,导致该公司的程序员 ...

  6. 最近程序员频繁被抓,如何避免面向监狱编程?!

    最近,有很多关于程序员被抓甚至被判刑的新闻在朋友圈疯传: "某程序员因为接了个外包,帮别人写了个软件,结果这个软件被用于赌博导致被抓. 某公司利用爬虫抓取用户信息,最后被发现,导致该公司的程 ...

  7. 最近程序员频繁被抓,如何避免面向监狱编程!?

    最近,有关程序员因为参与某些项目开发导致被起诉,甚至被判刑的事件发生的比较多: 某程序员因为接了个外包,帮别人写了个软件,结果这个软件被用于赌博导致被抓. 某公司利用爬虫抓取用户信息,最后被发现,导致 ...

  8. 最近经常看到网上程序员被抓,如何避免面向监狱编程!?

    最近,有关程序员因为参与某些项目开发导致被起诉,甚至被判刑的事件发生的比较多: 某程序员因为接了个外包,帮别人写了个软件,结果这个软件被用于赌博导致被抓. 某公司利用爬虫抓取用户信息,最后被发现,导致 ...

  9. 程序员如何避免面向监狱编程?避免踩雷!

    △Hollis, 一个对Coding有着独特追求的人△ 这是Hollis的第 233篇原创分享 作者 l Hollis 来源 l Hollis(ID:hollischuang) 最近,有很多关于程序员 ...

最新文章

  1. c语言编程学生管理系统的代码,C语言学生管理系统源代码.doc
  2. 二叉查找树(二叉排序树)创建,插入,删除操作。
  3. php protobuf 性能,php中使用protobuffer
  4. 零窗口探测怎么抓包_Linux服务器下的HTTP抓包分析
  5. python调用qt动态库_QT开发——动态库(.so文件)的生成与调用
  6. Mysql 时间类型整理
  7. 17. JavaScript Math(算数)对象
  8. 【运动学】基于matlab Singer模型算法机动目标跟踪【含Matlab源码 1157期】
  9. 【优化算法】量子遗传优化算法(QGA)【含Matlab源码 1123期】
  10. 太阳能充电板给锂电池充电电路设计
  11. WPS按Tab键无效果
  12. 一封超级牛的数据库程序员的情书表白
  13. PL/SQL破解方法(不需要注册码)
  14. 运动竞技类图文展示片头fcpx插件
  15. 照片透明背景抠图怎么做?试试这几种抠图方法
  16. vscode在windows端远程连接ubuntu工作站
  17. 字节跳动Android面试全套真题解析在互联网火了,系列教学
  18. 【牛腩】-'T_news_selectByCaId' 需要参数 '@caid',但未提供该参数。”
  19. 分享一个 Python + Django 实现的电商小项目
  20. Python语言_理論與習題

热门文章

  1. 好的阅读就是主动阅读
  2. 海南大学施超杰计算机与科学,HAAI新闻丨20支精英队伍!2019高校计算机大赛人工智能创意赛(海南赛区)进入决赛阶段,29日总决赛!...
  3. 设计模式-工厂模式三种类型
  4. Python学习手册(第4版) pdf
  5. 排队叫号 服务器 不同区域显示,银行排队叫号系统,让你摆脱排队久的问题!...
  6. 【Kotlin】Kotlin 函数总结 ( 具名函数 | 匿名函数 | Lambda 表达式 | 闭包 | 内联函数 | 函数引用 )
  7. 解答:C语言中结构体的定义中,后面跟的“结构体变量”到底是什么?
  8. Linux指令——crontab
  9. SaaS巨头总市值破万亿美元 独立云服务商萨摩耶云打开想象空间
  10. 被大厂卡学历该如何自救?