pyprotect 是一个由 C++ 开发的 python 模块加载器,可以在运行时把事先加密的 python 文件解密出来,增加了被逆向的难度。
目前只支持 python3
优势
- 非侵入,任何已有代码都可以直接集成,无需修改代码,加密之后的 python 工程的调用入口保持不变(比如,原本的 project 通过执行命令 "python3 app.py" 启动,加密之后仍然通过同样的命令启动)
- 易于使用,只需要执行一个脚本,即可加密整个代码树
- 提高破解难度,如果想要破解,至少需要基本的二进制逆向知识,无法在 python 层面逆向或者绕过保护 (如果你发现了在 python 层面可以破解的办法,请一定告诉我!谢谢!)
- 跨平台, mac, linux 测试通过,( windows 应该问题不大,但是没有 windows 开发机,没测试…… 尴尬……)
路线图
- [x] 支持 python3.x
- [ ] 支持 python2.7
- [ ] 支持简单的反 debug 机制
- [ ] 支持软件许可证
使用风险
只提供基本的加密保护,对于经验丰富的黑客,几乎没啥用。
如果你觉得有用的话,请帮忙加星,谢谢! 目前还是初期阶段,如果遇到程序 bug 或者安全性问题,欢迎提 Issue 和 PR。