代码加密

前言

很多群友都有加密代码的需求。为了群友辛辛苦苦写的游戏不被人轻易白嫖,这必须得安排上。

实现方案

lua加载代码通常都是用loadfilerequire,所以我们可以先把lua文件通过string.dump打成二进制格式,再通过加密算法加密,之后直接使用加密的文件去运行,通过重写loadfile的底层函数,内置解密过程,即可实现代码加密的效果。

如何使用

修改解密key

修改skynet_fly\skynet\3rd\lua\lauxlib.c文件中的ENCRY_KEY枚举,密钥只能是8字节,之后重启编译。

加密代码

到需要加密代码的根目录下执行skynet_fly_path\binshell\make_encrycode.sh skynet_fly_path key targetpath即可执行加密。

示例

加密examples/AB_question

  1. cd examples/AB_question
  2. sh ../../binshell/make_encrycode.sh ../../ ‘qwer1234’ ../AB_en

  1. sh ../../binshell/make_server.sh ../../

  2. sh make/script/restart.sh load_mods.lua 0


代码加密
https://huahua132.github.io/2024/10/14/skynet_fly_word/word_3/R_encrycode/
作者
huahua132
发布于
2024年10月14日
许可协议