关于 Python 代码反编译问题,请老哥们支支招

44 天前
 pipixiarwksb

接了个私单,对方老板要求测试下服务,我这边需要把源码发过去才能测试,如何防止反编译呢?

1658 次点击
所在节点    Python
18 条回复
Inn0Vat10n
44 天前
pyarmor
elioti
44 天前
你去服务器跑起来,然后删代码
gerorim
44 天前
转译 pyd ,Linux 和 Windows 都支持
kuanat
44 天前
能做成网络请求的方式是最好的,即使是内网也可以临时用穿透方式来测试。

如果因为实时性或者与其他模块集成没办法,那就编译成 pyd/so ,如果是 so 的话记得移除符号表,pyd 应该是默认移除的。

做一点简单的限时逻辑,不要有明显的特征,尽量以 silent crash 的形式来处理。这样一般防老板是够用了。有应对措施的大概率就能自己做了。
macaodoll
43 天前
服务器跑起来给个接口测试呢?或者开个远控让他测试,没给钱不给代码。
vicalloy
43 天前
用 Nuitka 编译成二进制。
Nuitka 现在已经比较成熟了,用下来没有发现什么问题。
ktyang
43 天前
问题不是光反编译吧。。。他拿着二进制文件只要能用就不会给钱。。。血泪教训。。。还得限制使用才行
xhatt510
43 天前
做成服务化最好吧。4 楼老哥说的很全了。
xhatt510
43 天前
其他方法,增加了你很多无意义的工作量
jstony
43 天前
nuitka 编译,加上时间服务器验证,无法验证或者过期直接 exit 0.
pipixiarwksb
43 天前
感谢各位老哥回帖
@Inn0Vat10n 后面试下 貌似找了一圈 网上就这个比较好点
@elioti 服务器还要买,都是本地跑的
@gerorim 这个网上说不行,很简单就被破译了
@kuanat 编译成 so 可以试下
@macaodoll 没买服务器
@vicalloy 结合一楼的一块试试
@ktyang 就是这样啊,看网上有类似套路
@jstony 可以
@xhatt510 可以
iorilu
43 天前
远程演示

实在不行, 上门演示阿

如果老板都不愿意, 那乘早走人就是, 不用浪费时间
noahlias
43 天前
黑盒不是很危险吗(老板要是想 code review 咋办)
python 做这种分发的话 我觉得不应该封装一些核心 你认为有价值的逻辑吗 用 c/c++ /rust 等 bind
pipixiarwksb
43 天前
@iorilu 不在一个地方啊
@noahlias 有核心逻辑
pipixiarwksb
43 天前
@noahlias 也是一哥思路,我这边也会 go 可以把核心代码封装成 go,问题是 go 会被反编译吗?
iorilu
43 天前
@pipixiarwksb 这种事没底的

你这假设就几千块的事, 就别折腾了

假如是几万的活, 一般都是有合同按完成度给钱, 包括怎么演示

正常远程演示都是可以接受的, 如果对方不接受演示, 直接让你交付再给钱, 显然也不合理

另外, 这活交付包不包含源代码也要说清楚的
gerorim
42 天前
@pipixiarwksb #11 pyd 就是动态链接库 so ,不是 pyc 。外加绑定机器码+限定时间。
pipixiarwksb
39 天前
@gerorim 阔以 老哥强 ,正在为这个发愁,绑定机器码+这个时间阔以

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1030066

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX