dashingsoft/pyarmor

GitHub: dashingsoft/pyarmor

一个用于混淆Python脚本、绑定运行机器和设置有效期的代码保护工具,帮助开发者防止源码被逆向分析。

Stars: 5076 | Forks: 356

# Pyarmor Pyarmor 是一个命令行工具,旨在混淆 Python 脚本,将混淆后的脚本绑定到特定机器,并为混淆后的脚本设置有效期。 ## 主要特性 - **无缝替换**:混淆后的脚本仍为标准的 `.py` 文件,在大多数情况下可以无缝替换原始的 Python 脚本。 - **平衡混淆**:提供多种混淆脚本的方式,以平衡安全性和性能。 - **不可逆混淆**:重命名函数、方法、类、变量和参数。 - **C 函数转换**:将部分 Python 函数转换为 C 函数,并使用高优化选项将其编译为机器指令,从而实现不可逆混淆。 - **脚本绑定**:将混淆后的脚本绑定到特定机器,或为混淆后的脚本设置有效期。 - **Themida 保护**:使用 Themida 保护混淆后的脚本(仅限 Windows)。 ## 支持的平台 - Python 2 和 Python 3[^1] - Windows - 各种 Linux 发行版,包括嵌入式系统和 Raspberry Pi - Apple Intel 和 Apple Silicon - 支持的架构:x86_64、aarch64、armv7 等[^2] 更多信息,请查看 [Pyarmor 环境][encironments]。 [^1]: 某些功能可能仅适用于 Python 3。 [^2]: 某些功能可能仅适用于特定架构。 ## 快速入门 1. **安装 Pyarmor**: ``` pip install pyarmor ``` 2. **混淆 `foo.py` 脚本**: ``` pyarmor gen foo.py ``` 此命令会在 `dist/foo.py` 中生成如下所示的混淆脚本: ``` from pyarmor_runtime import __pyarmor__ __pyarmor__(__name__, __file__, b'\x28\x83\x20\x58....') ``` 3. **运行混淆脚本**: ``` python dist/foo.py ``` 更多信息,请查看 [入门教程][tutorial]。 ## 许可证 Pyarmor 以共享软件的形式发布。免费试用版永不过期,但有一些限制。 有关许可证类型、功能、限制以及购买 Pyarmor 许可证的信息,请参阅 [Pyarmor 许可证][licenses]。 请阅读 [Pyarmor EULA](LICENSE)。 ## 获取帮助 - **[在学习系统中提问][learning] 或 [查看检查清单][checklist]** - **查阅 [Pyarmor 文档][doc]。** - **查看 [常见问题解答][faq] 以获取常见问题的答案。** - **尝试使用文档 [索引][genindex] 或 [详细目录][mastertoc]。** - **如果仍然找不到所需的信息,请参见 [在 GitHub 上提问][asking]。** - **按照 issue 模板 [报告 Bug][issues]。** - **有关商业和安全咨询,请发送电子邮件至 。** 还有一个第三方学习平台 - **[向 Pyarmor Guru 提问][gurubase],它是一个专注于 Pyarmor 的 AI,可以回答您的问题**(非 Pyarmor 团队制作,其回答不代表 Pyarmor 团队的观点) ## 资源 * [网站](https://pyarmor.dashingsoft.com) * [文档][doc] * [8.x 文档](https://pyarmor.readthedocs.io/en/v8.5.12/) * [7.x 文档](https://pyarmor.readthedocs.io/en/v7.7/) * [Pyarmor 9.1 新特性](https://pyarmor.eke.org.cn/v9.html) * [Pyarmor 学习系统][learning] 中文资源 * [Pyarmor 网站](https://pyarmor.dashingsoft.com/index-zh.html) * [Pyarmor 在线文档](https://pyarmor.readthedocs.io/zh/latest/) * [Pyarmor 8.x 在线文档](https://pyarmor.readthedocs.io/zh/v8.5.12/) * [Pyarmor 7.x 在线文档](https://pyarmor.readthedocs.io/zh/v7.x/) * [Pyarmor 9.1 新功能](https://pyarmor.eke.org.cn/v9.html) * [Pyarmor 学习系统][learning] ## 更新日志 每个主要版本都附带一个单独的更新日志文件,详细说明了已修复的问题、新功能以及不同版本之间的兼容性问题。 在升级 Pyarmor 之前,请务必仔细阅读更新日志: - [Pyarmor 8.x 更新日志](docs/ChangeLogs.8) - [Pyarmor 9.x 更新日志](docs/ChangeLogs.9) **完整更新日志**请见 [releases][releases] **即将推出的功能**请见 [Pyarmor 发布计划](docs/ReleasePlan.md)
标签:aarch64, C语言转换, DevTools, DNS 反向解析, DRM, Pyarmor, Python, Python2, Python3, Python打包, SOC Prime, Themida, x86_64, 代码加密, 代码安全, 代码混淆, 开发工具, 授权管理, 无后门, 机器绑定, 源码保护, 漏洞枚举, 知识产权保护, 编译器, 脚本保护, 脚本加密, 软件保护, 运行时限, 逆向工具, 防逆向工程