pyconcrete的简单学习
Python Python Module pyconcrete 的简单学习 pypi-pyconcrete 0.12.1 (个人感觉用这个库加密 python 程序的人不多。。。) (我在 MacOS python3.7.3 下又无法安装了) pyconcrete 是一个 python 文件加密库,它可以将常规的 .py 文件或 .pyc 文件加密为 .pye 文件,这样就无法直接打开源代码,避免了源代码的泄漏,也为 python 项目商用提供了解决方案。 该库在国内用的人不多,中文教程也少得可怜,Google 首页就两篇中文相关内容,一篇还是认识的人写的,一篇是对 GitHub 上对应项目的自述文件进行机翻,这里参考的是Falldog/pyconcrete。 安装 尽量不要使用 pip 安装!!! 我的几次安装经历,通过 pip 安装总是会出现各种各样的问题,可以试着通过 $ pip install pyconcrete --egg --install-option="--passphrase=<your passphrase>" 进行安装,或者下载源代码,进行安装,这可能是最快的安装方式。 保护你的 python 代码工作流 在 your_script.py 首行 import pyconcrete pyconcrete 将会自动和其他模块挂钩 当 your_script.py 开始导入其他模块,pyconcrete 首先会尝试寻找 MODULE.pye,然后通过 _pyconcrete.pyd 对MODULE.pye 进行解密 执行加密后的文件。 加密 只支持 AES 128 位加密 通过 OpenAES 加解密 用法 完整加密 将所有以 .py 结尾的文件转为 .pye。 $ pyconcrete-admin.py compile --source=<your py script> --pye $ pyconcrete-admin.py compile --source=<your py module dir> --pye 移除所有的 *.py 和 *.pyc 文件,或者将所有的 *.pye 文件移动到其他的文件夹 main.py 文件也会被加密为 main.pye,它无法被普通的 python 直接调用。必须使用 pyconcrete 来启动 main.pye。 pyconcrete main.pye src/*.pye # your libs 部分加密 将库文件被部分加密。 ...