Python:如何安全编译脚本?
大家好!
跟我上一个问题相反,我觉得我之前的方法不太对。其实我想要的是能把一个Python脚本编译成一个不容易被别人拿到源代码的形式,这样别人就不能随便使用我的代码了。虽然我知道Python是一个开源语言,不是为了保护的,但总得有办法吧?
举个例子,Py2Exe这个工具要求你把源代码放在一个普通的文本文件里,然后才能编译。这正是我不想要的。因为我这个项目不仅仅是在我自己的电脑上编译,而是要编译成PE可执行文件,准备给大家使用,我可不想让他们随便打开我的源代码。
有没有人能帮帮我?
4 个回答
3
你可以找找Python的混淆器或者加密工具,但其实没有什么办法能真正保护你的知识产权。如果你开发了完全新的东西,建议申请专利,试着控制它。
同时,可以继续阅读这个链接:我该如何保护Python代码?。
2
完全保护你的代码不被逆向工程是做不到的。不过,有一些方法可以增加难度:
- 分发 .pyc 文件。这会让逆向工程稍微复杂一些。
- 使用代码混淆工具(这种工具不多,我也没找到特别好用的)。
- 把重要的部分(比如许可证检查等)用 C 语言写,然后调用它们。
- 把重要的部分做成网络服务。
如果你分发的是 .pyc 文件或者用 py2exe 打包,大多数人可能根本不会去看你的代码。如果有人从字节码逆向工程你的代码,那又有什么大不了的呢?如果他们足够有决心,完全可以自己写一个应用程序。别太担心这些,做好你的应用,如果它足够优秀,自然会保护好你的源代码。