防止核心代码泄露-项目代码保护(游戏服务器端)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chenggong2dm/article/details/78924433

重要的核心代码,是不希望被非核心成员,或者新招来的程序接触到的。否则,招个新程序,人家试用期没过,反倒把你代码拷走了,回头想攻击、破解、贩卖,都是分分钟的事儿。这种事儿,我已经见过不止一次了。本文就讲一下,如何去做代码保护。防止核心(底层)代码泄露。


代码保护的基本需求:

1,不影响被防范的成员(比如新程序员)工作。让其能正常运行、调试、查看日志等。

2,对核心代码完全封死,需要保护的部分,完全不可见。绝对透明。


具体做法:

1,首先,先确保架构做了分层。比如我写的架构,一般是分为:

底层(包含通信、数据库、核心算法等等)

逻辑层(实现业务逻辑的代码)。

注意,层内要高内聚,低耦合。


2,找一台服务器(可以是公网服务器)。给每个程序员,建立不同的文件夹,这里以【A程序员】为例:

【coder_A】 文件夹:用于放入A程序员的工程。A程序员,可以修改他有权限的逻辑文件,比如工程下的 logic文件夹 里的所有文件。但是,A程序员无权访问整个工程。实现这个目标,比较简单的,有两个方法:

方法一:使用FTP。简单粗暴,给A程序员一个,可以读写 logic文件夹 的FTP权限。

方法二:使用SVN。稍微复杂,利用SVN的权限功能,A程序员提交 logic文件夹 内的程序,然后在服务器端用SVN命令更新logic文件夹

【log_A】 文件夹:程序员A的工程,输出的日志,产生到这里。便于查看调试。这个文件夹,A程序可以完全访问。比较简单的方法:

给A程序员一个,可以读写 logic_A 文件夹 的FTP权限。

下图,以新增3个程序员为例:


3,让程序员,在更新之后,可以重启对应的进程(或者其他需要在服务器进行的操作):

方法:做个网页端,在网页端提供操作,比如【重启A程序员的游戏服务】、【重启B程序员的游戏服务】等等。这个网页端里面,很简单,就是查找对应程序员的进程,然后重启。


总结:

以上配置之后,程序员不需要登录到服务器。也根本访问不到程序、数据库。但是,不影响运行程序,不影响查看输出。可以做对应的开发了。







猜你喜欢

转载自blog.csdn.net/chenggong2dm/article/details/78924433
今日推荐