如何保护 Python 源代码?
一句话回答: 并没有什么方法能保护你的 Python 源代码.
因为逆向工程和反逆向是个持续多年的战争, 不存在保护代码绝对安全的方法.
不过, 倒是存在一些不算高明的方法, 给你的 Python 源代码加层保护, 防止一些别有用心的人获取你的源代码.
.py
转 .exe
.py
转 .exe
的方法很多. 考虑到 .exe
对 Linux 不友好, 故不展开讨论.
.py
转 .pyc
.pyc
是 Python 的一种文件格式, 由 .py
编译得来. 它和 .py
一样能直接执行, 区别是.pyc
不能用记事本读写, 是一种字节码格式, 不是机器码, 容易被反编译.
用 Python 可把 .py
编译成 .pyc
, 代码如下:
import py_compile
py_compile.compile('main.py')
值得注意的是, 一些在线小工具即可实现将.pyc
反编译成.py
, 基本没乱码, 比如 http://tools.bugscaner.com/decompyle/ 和 https://tool.lu/pyc/ .
因此, 把.py
转 .pyc
的意义不大.
给 Python 源代码加混淆
可以在源代码中加入无意义的代码, 同时把变量名改成随机字符串, 以增加代码的阅读难度.
这里只介绍 pyminifier
.
安装:
pip install pyminifier
应用:
pyminifier -O --nonlatin --replacement-length=2 main.py
给代码加混淆的还有在线版 http://pyob.oxyry.com/ .
评论已关闭