一、桌面图形程序加密
pyinstxtractor
这个工具,就能把 PyInstallers 编译出来的 exe 还原回去;之后,再对还原出来的 pyc 文件进行反编译即可。二 、Web 应用程序
from distutils.core import setup
fromCython.Buildimport cythonize
setup(ext_modules = cythonize(["zmister.py"]))
三、通用加密
PyArmor 是一个用于加密和保护 Python 脚本的工具。它能够在运行时刻保护 Python脚本的二进制代码不被泄露,设置加密后 Python 源代码的有效期限,绑 定加密后的Python源代码到硬盘、网卡等硬件设备。它的保障机制主要包括:
加密编译后的代码块,保护模块中的字符串和常量 在脚本运行时候动态加密和解密每一个函数(代码块)的二进制代码 代码块执行完成之后清空堆栈局部变量 通过授权文件限制加密后脚本的有效期和设备环境
pip install pyarmor
obfuscate
选项就能对代码进行加密:
pyarmor obfuscate foo.py
licenses
选项即可生成许可文件:
pyarmor licenses \
--expired "2018-12-31" \
--bind-disk "100304PBN2081SF3NJ5T" \
--bind-mac "70:f1:a1:23:f0:94" \
--bind-ipv4 "202.10.2.52" \
r001
--with-license
参数即可指定许可文件:
pyarmor obfuscate --with-license licenses/r001/license.lic foo.py
pack
选项即可打包脚本:
pyarmor pack foo.py