立项背景和目标
Python 脚本极易被反编译,商用自动化工具、内网脚本交付后源码容易泄露,市面上缺少轻量化一体化防护工具。本项目目标为开发天蚕加密编译器,给 Python 程序提供完整逆向防护,保护开发者的业务知识产权,输出可直接分发的受保护可执行文件。
软件功能、核心功能模块
项目分为五大核心模块:AST 代码混淆模块、字节码加密解密模块、二进制编译打包模块、硬件授权管控模块、文件完整性校验模块。支持变量函数重命名、字符串加密、控制流混淆;字节码 AES‑256 加密与内存动态解密;支持 Nuitka C++ 编译、PyInstaller 打包输出独立 EXE;支持一机一码硬件绑定、限时授权;提供篡改检测、基础反调试。
业务流程、功能路径
使用者输入原始 Python 源码,工具先经过 AST 混淆做代码变形,接着对字节码执行加密处理,选择编译模式完成二进制打包,可按需配置硬件授权参数,最终输出加固后的 EXE 程序。终端用户运行加固程序时,运行加载器在内存完成解密执行,磁盘不会留存明文字节码,程序自检文件完整性,异常则拒绝启动。
整体架构和设计思路,技术栈
采用分层递进防护架构,依次为源码混淆层、字节码安全层、二进制编译层、授权控制层、完整性校验层。
技术栈:Python AST 抽象语法树、AES‑256‑CBC 对称加密、RSA 非对称加密、CPython 字节码改造、自定义内存 Loader、Nuitka、PyInstaller、SHA‑256 哈希校验;读取 CPU、MAC、硬盘序列号获取设备硬件指纹。
本人负责模块和结果
本人独立完成全部自研模块开发:实现 AST 语法树混淆变形、字节码加密内存加载器开发;完成硬件指纹采集与一机一码授权逻辑;实现文件完整性校验与反调试检测。工具可以防护绝大多数主流 Python 反编译工具,加密打包后的程序可以在 Windows 环境正常运行,兼容大部分第三方 Python 依赖库。