接了个私单,对方老板要求测试下服务,我这边需要把源码发过去才能测试,如何防止反编译呢?
1
Inn0Vat10n 248 天前
pyarmor
|
2
elioti 248 天前
你去服务器跑起来,然后删代码
|
3
gerorim 248 天前 via iPhone
转译 pyd ,Linux 和 Windows 都支持
|
4
kuanat 248 天前
能做成网络请求的方式是最好的,即使是内网也可以临时用穿透方式来测试。
如果因为实时性或者与其他模块集成没办法,那就编译成 pyd/so ,如果是 so 的话记得移除符号表,pyd 应该是默认移除的。 做一点简单的限时逻辑,不要有明显的特征,尽量以 silent crash 的形式来处理。这样一般防老板是够用了。有应对措施的大概率就能自己做了。 |
5
macaodoll 248 天前 via Android
服务器跑起来给个接口测试呢?或者开个远控让他测试,没给钱不给代码。
|
6
vicalloy 248 天前
用 Nuitka 编译成二进制。
Nuitka 现在已经比较成熟了,用下来没有发现什么问题。 |
7
ktyang 248 天前
问题不是光反编译吧。。。他拿着二进制文件只要能用就不会给钱。。。血泪教训。。。还得限制使用才行
|
8
xhatt510 248 天前
做成服务化最好吧。4 楼老哥说的很全了。
|
9
xhatt510 248 天前
其他方法,增加了你很多无意义的工作量
|
10
jstony 248 天前 2
nuitka 编译,加上时间服务器验证,无法验证或者过期直接 exit 0.
|
11
pipixiarwksb OP |
12
iorilu 248 天前
远程演示
实在不行, 上门演示阿 如果老板都不愿意, 那乘早走人就是, 不用浪费时间 |
13
noahlias 248 天前
黑盒不是很危险吗(老板要是想 code review 咋办)
python 做这种分发的话 我觉得不应该封装一些核心 你认为有价值的逻辑吗 用 c/c++ /rust 等 bind |
14
pipixiarwksb OP |
15
pipixiarwksb OP @noahlias 也是一哥思路,我这边也会 go 可以把核心代码封装成 go,问题是 go 会被反编译吗?
|
16
iorilu 248 天前
@pipixiarwksb 这种事没底的
你这假设就几千块的事, 就别折腾了 假如是几万的活, 一般都是有合同按完成度给钱, 包括怎么演示 正常远程演示都是可以接受的, 如果对方不接受演示, 直接让你交付再给钱, 显然也不合理 另外, 这活交付包不包含源代码也要说清楚的 |
17
gerorim 246 天前 via iPhone
@pipixiarwksb #11 pyd 就是动态链接库 so ,不是 pyc 。外加绑定机器码+限定时间。
|
18
pipixiarwksb OP @gerorim 阔以 老哥强 ,正在为这个发愁,绑定机器码+这个时间阔以
|