工具用的顺手吗?
你的反馈能帮助我们做得更好
将单个 Python 脚本或项目 ZIP 加密为 .pyz,并附带与本次密钥匹配的 Linux 运行器。
点击选择文件选择或拖入文件
.py · .zip
最大 1 MB
当前账号单文件上限 1 MB(游客 1 MB / 普通会员 2 MB / 高级会员 5 MB / 专业会员 20 MB)
云端处理:文件通过短期 OSS 凭证上传,在独立 FC 容器处理;OSS 文件会按存储桶生命周期规则清理。
支持单个 .py 脚本或项目 .zip,上传上限按账号等级递增,最高 20 MB。项目压缩包需要 __main__.py,或填写入口函数。
运行器目前面向 Linux x86_64、CPython 3.12。混淆/加密会增加逆向成本,不能阻止有经验的用户提取代码或密钥;不要把它当作 DRM 或绝对安全边界。
概览
了解工具能解决的问题、计算或处理逻辑,以及数据边界。
pyconcrete 会把 Python 模块转换为加密字节码,并由配套运行组件在导入或启动时解密执行。本工具接受单个 .py 或项目 ZIP,生成加密 .pyz、运行器及相关文件的下载包。运行器与本次构建所用密钥相匹配,不能随意替换为另一项目生成的运行器。
当前生成目标是 Linux x86_64 与 CPython 3.12。项目 ZIP 应有根目录 __main__.py,或在页面填写 package.module:function 入口;第三方依赖需要在目标机器另行提供。该方案提高直接查看源码的成本,但密钥和代码在运行环境中必须可用,不能构成绝对防逆向边界。
指南
按步骤完成操作,并通过示例核对输入与结果。
选择单个 .py,或上传保留包目录、资源文件和入口模块的 ZIP。ZIP 根目录放置 __main__.py,也可准备可调用函数作为入口。
如果 ZIP 没有根目录入口,在输入框填写 package.module:function,例如 myapp.cli:main。模块和函数名必须与压缩包中的实际路径一致,函数应能在运行器启动时调用。
页面会显示当前账号的上传大小限制。启动后文件经云端隔离处理,构建会生成匹配本次密钥的运行器和加密归档;如果依赖编译环境、入口或项目结构不满足要求,任务会失败并给出错误提示。
解压输出包,在 Linux x86_64 且安装 CPython 3.12 的环境中运行。按项目要求准备未随包安装的第三方依赖,检查资源相对路径、启动命令和实际业务流程。
场景
查看这项工具在不同工作与生活流程中的用法。
团队可把入口明确的脚本和项目资源打成加密包,再将运行器与受控版本一起交付给 Linux x86_64 用户。
软件维护者可减少直接散发明文模块的情况,并在发布说明中明确 CPython 版本、系统架构、依赖安装方式和启动入口。
发布工程师可以先用小型示例核对入口识别、加密包布局、运行器调用和资源定位,再决定怎样接入自己的部署脚本。
问答
集中解答高频疑问与容易混淆的问题。
当前提供的运行器针对该操作系统架构与解释器版本构建。其他 Python 版本、Windows/macOS 或 ARM 设备不一定兼容;需要在目标部署环境单独准备匹配的运行组件。
不是必须。如果根目录没有 __main__.py,可填写 package.module:function 入口。模块路径和可调用函数要与项目一致,入口无法导入或调用时构建/启动会失败。
不会自动安装。项目代码和打包资源可以随输出归档,但外部依赖应在目标环境按项目需求准备,并确认 CPython 版本、平台及依赖版本兼容。
不能。程序运行时必须使用代码和密钥,拥有运行环境控制权的人仍可能分析它们。加密能增加读取成本,但不能替代授权设计、秘密管理或服务端安全边界。
须知
使用前了解适用范围、结果限制与必要提醒。
输出运行器针对 Linux x86_64 和 CPython 3.12。构建结果依赖 pyconcrete 及其本地编译工具链,运行时还需要项目用到的第三方库和系统依赖。部署前应先在与生产一致的系统镜像上验证启动、数据文件路径、异常退出和升级方式。
密钥与运行器匹配;妥善保存和限制分发输出包,不要误把同一运行器用于无关项目。加密/混淆只能提升逆向成本,经验丰富的使用者仍可能提取代码或密钥。请只处理拥有或获准处理的源码,并为真正的访问控制保留服务器端校验。
推荐
查找相关工具、专题与可用的 API 能力。