RELEASE 1.0 · 2026-09

让 Python 源码
从交付物中彻底消失

TAO 是企业级 Python 源码保护与无源码交付平台:AST 级五维混淆 × 代码虚拟化 × Cython 原生编译 × 运行时防护纵深,一键把项目变成不含任何 Python 源码的 .pyd / .exe。28+ 轮逆向红队对抗迭代出厂。

395全量回归用例通过
7 / 7强度评分维度全过线
28+红队对抗轮次
0交付物内源码文件
⚡ 立即在线试用
ONLINE TRIAL

在线试用 — 上传单个脚本,立刻锻造

🐍
点击或拖入单个 .py 文件(≤100KB)
试用版 exe 启动时会显示横幅广告;完整版无广告且支持全项目交付、更强档位。
排队中…
能力在线试用完整版
单脚本混淆(控制流 / 改名 / 字符串 / 数字 / 常量池) ✓✓
函数虚拟化(自研栈式 VM) ✓✓ 更细粒度
单文件 Windows exe(PyInstaller onefile) ✓ 带广告✓ 无广告
多文件项目 / 全项目依赖自动携带 —✓
Cython 编译 .pyd(机器码级,无字节码) —✓
宿主门禁 / 授权系统 / 反调试 / 自定义档位 —✓
商用授权与批量构建 —✓

完整版 敬请期待 —— 正在完善收费机制,留下邮箱,开放时第一时间通知你:

CORE ENGINE

源码层五维混淆引擎

每一个维度都以「产物可读信息残留」为度量持续加固,支持多轮叠加与 120 个配置项微调。

🌀控制流平坦化

结构化函数体 → 不透明状态机循环。

  • 哈希分派 (s*K)%2³²==c,逐函数随机奇乘数
  • 运行期恒假的不透明算术谓词,抗常量折叠
  • 状态乱序 + 垃圾块 + 假分支 + 隐藏控制流
  • match / except* 语义保留,async 有意跳过

🔤标识符改名

全项目符号映射一致,跨文件 import 自动同步。

  • homoglyph 同形字符风格,视觉无模式特征
  • 框架装饰器(Click/Flask/FastAPI)保名保参数
  • 内建引用别名化 + 强制改名池(key/secret/token)
  • 9 类垃圾模板 + 表达式拆分 + 假调用间接

🔐字符串加密

逐串随机选用四种算法,运行期还原。

  • XOR / Base64+Shift / ROT13-Hex / AES-256
  • 密钥拆分内联,密文侧无独立密钥常量
  • 模块级共享置换表(C 级查表),体积钉死
  • 中文 / emoji / 密文 token 全覆盖不明文

🔢数字混淆

三档复杂度:偏移 → 位运算重构 → 位分解+噪声对消。

  • 浮点按 IEEE-754 位模式异或,逐位精确还原
  • 含 -0.0、次正规数、float 上限,零 ULP 损失
  • 比较运算符保护,不破坏平坦化分派

🧊常量池

全部 int 字面量编码进 varint+zigzag 字节池。

  • 代码只剩池下标访问,端口/超时/哈希种子不可读
  • is 身份比较、match 模式、注解位置智能豁免
  • 多轮各建新池、顺序收敛

🛡️反射安全网

动态特性不再以「整体保名」代价换兼容。

  • globals()/eval() 作用域冻结 + 字符串引用保名
  • __name__ 读取双层保护(wraps/注册表分发)
  • f(**{'k':v}) 字面量键 → 参数保名
  • Protocol/Enum 族类体跳过垃圾注入
VIRTUALIZATION

重要代码虚拟化 — 函数体成为数据

标记的核心函数编译为逐构建随机的加密字节码,源文件只留原签名引导壳;内嵌解释器继续被整条混淆链加固。

# 虚拟化后:函数体消失,只剩引导壳
def derive_seed(master, rounds=8):
    return _taogo_vm_exec(_taogo_vm_p_1, (master, rounds))

_taogo_vm_p_1 = _taogo_vm_dec(密钥, (指令流...),
    (常量...), (名字表...), (局部槽表...), 2)

逐构建随机化

  • 操作码 37~9000 不重复抽样 — 两次构建不可横向对比
  • 指令流 LCG 密钥流逐元素异或 + 随机 tag 校验
  • 程序数据内嵌函数体(C 级常量),模块字典只剩函数对象
  • 名字表协同改名 — pyd 元数据不再泄露 verify_serial 类原名
  • 不支持的结构诚实跳过并记录原因,绝不产出错误代码
DELIVERY PIPELINE

无源码交付链

从明文项目到最终交付物,全链路一个平台完成,每一步都有验收门。

01
代码虚拟化核心函数 → 加密 VM 字节码(管线最前)
▼
02
五维混淆(可多轮)反调试/宿主绑定注入 → 平坦化 → 改名 → 字符串 → 数字 → 常量池 → 完整性
▼
03
交付硬化入口封装(秘密下沉)· 代码对象交付(RAM 无明文)· 原生校验桩(PBKDF2 下沉 C)· 密钥卫生门禁
▼
04
Cython 整包编译.py → .pyx → C → .pyd/.so,指纹剥离 + PE 卫生 + 尺寸预算优雅降级
▼
05
exe 封装PyInstaller onefile/onedir + Ed25519 门禁锚值回填 + 依赖自动携带
▼
06
验收门语法/导入/exe 冒烟 + 差分测试 + 七维强度评分 + 源码泄漏扫描

📦四种交付形态

混淆 .py 树 · 无源码 .pyd/.so 目录 · onefile/onedir exe · zipapp。exe 目标机零依赖(运行时与 vcruntime 已打包)。

🩺构建健壮性

toolchain_doctor 真实编译探针秒级快速失败;分块并行免疫 BrokenProcessPool;C1002 巨模块降级阶梯;看门狗整树收割孤儿编译器。

🧹失败安全

单文件校验原子落盘;混淆失败的文件写成 import 即抛桩 — 明文永不进失败产物;中间产物自动清理、外人目录拒绝覆盖。

RUNTIME SHIELD

十层运行时防护

全部 fail-closed:拦截即无提示静默退出,先于一切秘密物化。

防护机制触发行为
反调试gettrace 检测 / SMBIOS 只读 VM 指纹(装虚拟机软件不误伤)/ 进程表扫 IDA·Ghidra·r2·Frida;delayed 模式随机延迟引爆exit(2) / 延迟无提示 exit(3)
完整性自校验SHA256 自哈希块,运行期重哈希比对篡改即 exit(1)
宿主绑定sys.frozen + _MEIPASS + 解释器指纹 + argv[0] 四项校验os._exit(2)
C 层宿主门禁门禁块编译进机器码,只读进程/文件证据 + 归档全树锚定锚值漂移 → rc2 静默
内存防卫后台枚举系统句柄表,陌生 PROCESS_VM_READ 句柄即感知;祖先链豁免+白名单污染秘密缓冲 + exit(3)
入口封装模块级秘密赋值下沉到函数局部 — Cython 模块字典不再可 dump结构性防御
代码对象交付exec 源码捕获 → marshal 加密嵌入,RAM 无明文源码;密钥分片 + 用后 memset 清零形态不符诚实跳过
原生校验桩PBKDF2 校验整体下沉自包含 C 函数(全函数白名单匹配,fail-closed 拒改写);盐/摘要嵌 C 静态数组,常量时间比较Python 层只拿布尔值
密钥卫生历史泄露密钥清单编辑距离比对 + 弱哈希(md5/sha1/无盐 32 位)强警告过近默认拒绝构建
授权系统Ed25519 离线授权:机器绑定 / 有效期 / 特性开关;产物内只有公钥,无私钥不可伪造校验失败 exit(4)
ASYMMETRIC ANCHORING

C 层门禁 × Ed25519 非对称锚定

重打包、换引导、替换同胞 pyd、树内篡改、伪造签名 —— 全部 rc2 静默失败。重钉需要私钥,而私钥从不出构建机。

⚙️ 每构建随机化的验证机器

🎭sys 四件套伪造

伪装 frozen/_MEIPASS/解释器/argv[0]?门禁读主进程映像基名与 pyd 真实加载目录 — 编译进机器码,伪造不了。

rc2 静默

🔁重打包 / 同胞 pyd 替换

本机 PyInstaller 重打包换入口、替换 _internal/main.pyd?覆盖哈希漂移,全部用户 pyd 门禁联动死亡。

rc2 静默

✍️假摘要重钉 / 自造密钥签名

攻击者全知白化密钥 W2(枚举 pyd hex 候选还原)也签不出合法锚 — 私钥仅存在于构建机。

rc2 静默
VERIFICATION

质量保障与红队验证

每个防护能力都以「真实攻击链重放」验收,而非只靠单元测试。

⚖️语义等价

  • 差分测试:原始 vs 混淆 A/B 对比退出码 + stdout,单文件/整项目
  • 语义差分模糊累计 3,000+ 调用对一致(VM / 改名 / 项目级 / 加密组合),固定种子冒烟固化进 CI
  • 全量回归 395 passed;CI 覆盖 Windows/Linux × Python 3.9/3.11/3.12

📊七维强度评分

  • names / strings / numbers / control / protection / packaging / virtualization
  • extreme 全链七维全部过线(packaging 与 virtualization 满分 100)
  • 基线对照度量:原始常量还有多少可直接读

🗡️红队对抗(R8–R28)

  • 解包→拖拽 import→命名空间 dump→VM 复刻→哈希碰撞链 9/9
  • crackme 链:静态 25 项业务特征 0 命中、伪加载器/重打包/同胞 pyd 替换全拦截,onedir 首战 9/9
  • 门禁 E2E 16/16;R28 独立全知 W2 攻击重放无 P0,1.0 放行

🪞自举验证

  • 四组参数自混淆矩阵全部落地,0 失败 0 行为差异,extreme 树内全量测试通过
  • 工具自身 → 无源码 GUI exe → --selfcheck 冒烟通过
  • 自混淆产物 36/36 模块 selfcheck rc=0,三类篡改全 rc2
DEVELOPER EXPERIENCE

傻瓜模式到全参数 CLI

暗色桌面 GUI(pywebview)与 120 项可调配置的 CLI 双入口,三档预设覆盖从快速保护到最高安全。

🖱️GUI · 傻瓜模式(默认)

  • 选输入输出 → 点一下:混淆 → 虚拟化 → Cython → exe 全自动
  • 入口自动探测、第三方依赖自动携带、GUI 程序自动降级冒烟
  • 拖拽入窗 · 实时日志 · 工作流 JSON 保存/导入 · 报告 JSON/text/HTML
  • 自混淆打包:一键把 TAO 自己打成无源码 GUI exe
# 傻瓜一键全链路(GUI),或 CLI:
python advanced_obfuscator.py --project my_app -o out \
    --cython-package --cython-entry app.main \
    --virtualize-funcs license.verify_serial \
    --license-secret <secret> --license-check-key <pub> \
    --diff-test --strength

# 三档预设
Level 1  改名 + 字符串加密      # 快速保护
Level 2  + 控制流平坦化        # 标准生产
Level 3  全特性 + 反调试 + 完整性 + 常量池  # 最高安全
HONEST BOUNDARIES

已知边界 — 我们明说做不到的事

防御目标是把攻击成本从「50 行 ctypes dump 字典」抬高到「逆向编译器产物」,而非虚假承诺绝对安全。

📦onefile 解包仍可行

威胁建模前提即「pyd 必被单独分析」— 宿主绑定与门禁使其失去分析价值,而非假装解包不可能。

🔧机器码多点语义补丁是原理性边界

单字节补丁已被两阶段状态机封死;理解并重写机器码语义的多点补丁无法原理性阻止。

🔑超低熵口令仍是理论爆破路径

GPU 加速 PBKDF2 对弱口令可行 — 全链强度由最弱环节决定,请使用足熵口令。

🪢运行期计算名查找靠验证兜底

globals()[k+'pha'] 类动态构造无法静态保护,由语法/导入冒烟/差分验证覆盖;metaclass 读类名建议 rename_classes: false。