大致思路是这样的:给别人部署的时候,其实只时给对方一个启动脚本,在服务器启动的时候,通过一次性密钥(启动脚本中)从指定服务器上下载源代码,然后运行之后,脚本命令就把源代码文件目录删除。
好处:源代码不用存放在对方服务器上
坏处:服务器断电重启,服务就完蛋不能用了。你必须给对方再分发一个新的一次性密钥,再下载一次。
好处:源代码不用存放在对方服务器上
坏处:服务器断电重启,服务就完蛋不能用了。你必须给对方再分发一个新的一次性密钥,再下载一次。
|
ysc3839Jul 29, 2018 via Android
1
可以禁止删除文件。
|
|
t6attackJul 29, 2018
2
这不又是 防君子不防小人么。
|
|
niubee1Jul 29, 2018
3
很早前这么干过, 但是如果是单机部署没有热备的话, 会出事故的, 所以后面还是放弃了这个方案
|
|
xy90321Jul 29, 2018
4
只要到过对方服务器,那主动权就根本不在你手上了
对方在自己服务器上部署个监视目录自动拷贝留档备份什么的那都不是个事儿 除非你把业务逻辑都做成 rpc 根本不经过对方服务器(可是那样又是性能噩梦) |
|
jowuIMJul 29, 2018
5
。。。都下下来了,你害怕他拿不到?
|
|
6
|
|
standin000Jul 29, 2018
7
混淆代码工具
|
|
murmurJul 29, 2018
8
dump 内存了解下
|
|
inframeJul 29, 2018 via Android
9
真的有必要就做成服务提供,不要下发代码了
|
|
tomfsJul 29, 2018
10
增加自己的工作量,感觉没其他效果.
真的有必要的话,就直接做 api 接口提供吧. |
|
LukeChienJul 29, 2018 via Android
11
做游戏 SF 才这么做
|
|
sujin190Jul 29, 2018 via Android
12
没用吧,内存中照样弄得出来,再说你都需要下载启动后才删除,那弄出来更是轻而易举了
|
|
innoinkJul 29, 2018 via Android
13
10 年前这种做法就已经过时
|
|
aver4vexJul 29, 2018
14
管你是什么语言,没有不能破解的,只是难度大小的区别。所以还是别瞎折腾了。
|
|
15
防 copy ?
我只相信二进制,所以 python -> exe ? linux 上就不要搞什么闭源了吧 ,大家都闭源,还发展个屁。。。。。 |
|
miao1007Jul 29, 2018 via Android
16
还是类似于 aot 的方式构建为二进制更好
|
|
bomb77Jul 29, 2018
17
真的这么在意代码被 copy,要么服务化,要么用静态语言重写个
|
|
xuboyingJul 29, 2018
18
kill -6 <processID>
|
|
suntoryliquJul 29, 2018
20
哈哈不可行,所有在客户端上执行的代码,都有被反编译的可能,只是看 cracker 耐心与否……
|
|
MacJul 30, 2018 via Android
21
有这个带宽和服务器资源,还不如搞成 API,本地就只能解析数据。后台全控在你手。
|
|
msg7086Jul 30, 2018
22
不说别的高深的做法,我底层写个监控程序启动时自动对文件系统做快照的脚本就行了。
|
|
23
楼主没想过下载劫持?直接 dns 到本地服务器中转一下,中转过程中缓存记录一下。大概也就第一次要访问你的服务器,后面就直接本地读取外加拿到源代码了。上 https 也不是个事,都本地部署了,给个自签证书系统信任分分钟的事情。
|
|
waruqiJul 30, 2018 via Android
24
内存 dump 下不就好了
|
|
momo1999Jul 30, 2018
25
你不会用矛,你的盾也设计不好
|
|
fyyzJul 30, 2018 via Android
26
反编译你的启动脚本看汇编不就好了?
|
|
fyyzJul 30, 2018 via Android
27
启动程序
|
|
znoodJul 30, 2018 via iPhone
28
你自己写个静态程序,动态代码解压出来执行
|
|
reusJul 30, 2018
29
没用的,防君子不防小人的东西
|
|
saricesJul 30, 2018
30
还不如你直接在服务器计算,这样盗版也没用,非允许 ip 不允许请求
|
|
cyspyJul 30, 2018 via Android
31
记得有个 Python 模块可以直接在进程里开 repl
|
|
zhzerJul 30, 2018
32
没用,连混淆都防不住"有心人",更何况这个呢
|
|
yufpgaJul 30, 2018
33
那你还不如弄一个 docker 镜像给它部署呢
|
|
dorothyRENJul 30, 2018
34
linux 下的 alias 命令了解一下,alias rm='mv !:1 /tmp'
|
|
xxxyJul 30, 2018
35
在 dump 内存面前一切都无所遁形
|
|
2pangJul 30, 2018
36
修改虚拟机中的操作码和指令,然后发布的时候发布修改后的虚拟机以及编译出来的字节码
|
|
yufpgaJul 30, 2018
39
@liudaqi 能够搞出来 Dockfile. 这个得看你的镜像怎么做了,docker 设计的初衷也不是这个,只是没那么容易被别人看到源码。基于楼主这个场景,我觉得 docker 是一种性价比比较高的交付方式。正如你们所说,只要想办法,总有人能够
反编译你的代码,但是他们这么做的目的是什么,真有这个必要么?不见得吧 |
|
fulvazJul 30, 2018
40
...........你干脆弄成云服务算了.
|
|
whnzyJul 30, 2018
41
像 python,报错的时候会读源文件的
|
|
PythonAnswerJul 31, 2018
42
关键算法部分搞成 api 啊。其他调用操作什么的,抄就抄了。
|