5. 许可模式
本文档仅适用于 Pyarmor 8.0 之后的版本。
Pyarmor 发布在 PyPI ,可以直接使用下面的命令进行安装试用:
$ pip install pyarmor
$ pyarmor gen foo.py
$ python dist/foo.py
试用版本用不过期,但是有功能方面的限制,这些限制可以通过不同的许可证进行解锁。Pyarmor 目前共有四种许可模式:
基础版许可证: 主要解锁大脚本加密限制
专家版许可证: 提供多种不可逆的加密模式
集团版许可证: 满足离线加密的需要
管线版许可证: 专门用于 CI/CD 集成构建环境
功能特征 |
试用版 |
基础版 |
专家版 |
集团版 |
管线版 |
|---|---|---|---|---|---|
大脚本 / 混淆字符串常量 1 |
Y |
Y |
Y |
Y |
|
BCC / RFT / FLY 模式 2 |
Y |
Y |
Y |
||
离线加密 3 |
Y |
||||
最多构建设备数 4 |
100 |
100 |
200 |
0 |
|
本地运行不受限制的 Docker 5 |
Y |
||||
使用在 CI/CD pipeline 6 |
Y |
Y |
Y |
备注
- 1
大脚本文件,是指加密脚本的大小超过一定值
混淆字符串,是指对脚本中的字符串常量进行混淆保护的功能
- 2
RFT 加密模式,是指通过重命名脚本中的函数,类,方法和变量的名称来保护脚本的功能
BCC 加密模式,是指把 Python 脚本中部分函数转换成为对应的 C 函数,通过编译直接生成机器指令代码,从而对脚本进行保护的功能
- 3
离线加密,是指使用 Pyarmor 加密脚本的设备可以离线加密脚本,而不需要在线验证 Pyarmor 许可证
- 4
最多可以安装 Pyarmor 的构建设备数目,管线许可证不可用于本地设备
- 5
在本地设备上面运行不受限制 Docker 容器,本地设备可以离线或者在私有网络
- 6
使用 Pyarmor 许可证在 CI/CD pipeline 需要额外的选项和命令
重要
所有的 Pyarmor 许可证都是被安装在生成加密脚本的构建设备上,而不是运行加密脚本的设备上
运行加密脚本的设备不需要安装 Pyarmor,运行加密脚本的时候也不会去验证 Pyarmor 许可证
虽然加密脚本是被 Pyarmor 生成,但是生成的加密脚本完全独立于 Pyarmor
你可以像使用正常脚本一样使用加密脚本,它的行为由你而不是由 Pyarmor 来决定
如果产品使用的是 Python 2.7 和 Python 3.6 以及之前的任何版本,只能使用老版本的许可证,新版本许可证只支持 Python 3.7+
5.1. 使用条款
只能自己使用 Pyarmor
只能用来加密产权属于自己的脚本,不可以任何形式去加密别人的脚本,例如在自己的程序中调用 Pyarmor 的功能去加密你的客户的脚本,或者通过网站提供基于 Pyarmor 的加密服务等等
无收益无需许可
如果你的脚本不能为你带来大的收入,那么不需要购买 Pyarmor 的许可证,就可以使用 Pyarmor 试用版来加密你的脚本。但是如果你通过销售加密脚本得到收益,那么就需要购买 Pyarmor 许可证
一次性收费
除了**管线版许可证**是按照年度收费外,其他所有的 Pyarmor 许可证都是一次性收费,可以在购买 Pyarmor 时候对应的版本中永久使用, 但是不保证可以在未来的 Pyarmor 版本中可以使用
一个产品一个许可证
每一个许可证都有一个 18 位字符长度唯一的编号,并授权给有且只有一种产品使用。也就是说,任何一种使用本软件进行保护的产品都有自己唯一的许可证编号,不允许两种不同产品使用相同的许可证编号。
Pyarmor 的许可策略是每一个产品都需要购买一个许可证。一个产品是指一种产品,而不是一个产品的拷贝。例如,微软的Excel是一个产品,但是却被装在无数的设备上
允许合理使用
如果你为一个产品购买了许可证,但是你的另外一个产品还没有销售收入,那么在其销售收入还不大于 Pyarmor 许可证费用的 100 倍的时候,可以借用第一个产品的许可证
完整使用条款请参阅 Pyarmor 最终用户许可协议
参见
5.2. 数据隐私
许可证编号和被授权的产品名称会嵌入到加密脚本中,除此之外,加密脚本中没有任何用户相关的注册信息,例如注册名称和邮箱等
使用基础版和专家版许可证进行加密的时候会收集设备信息并发送到服务器进行验证
在 CI/CD 环境中使用基础版和管线版许可证进行加密的时候,会收集容器相关信息以及许可证信息发送到服务器进行验证
除了许可证文件之外,不会上传任何用户脚本到服务器进行验证
5.3. 技术支持
许可费用仅为解锁功能,不包含技术支持
Pyarmor 是一个命令行工具,所有的功能都通过选项实现,所有的选项都有完整的文档。用户需要自己学习和了解 Pyarmor 的各个选项以及使用方法,并根据自己的需求选择正确的选项,Pyarmor 开发组不会去了解用户的项目结构和加密需求,然后告诉用户需要使用什么选项
Pyarmor 提供了完备的在线文档系统
用户通过常见问题的解决方案以及FAQs,可以解决大部分使用方法上的问题
帮助命令 pyarmor man (很快实现) 可以为每一个选项提供丰富的示例,并且为常用的使用场景提供示例
Pyarmor 开发组正在开发新的教程,以动画的方式直观的帮助用户学习和使用 Pyarmor,并且快速解决使用过程中遇到的问题(大约在2024年10月能够完善)
罗马不是一天建成的,Pyarmor 开发组会根据用户反馈,持续改进学习系统,让用户可以快速有效的解决使用过程中遇到的问题
用户在Github 上的 Pyarmor 项目中报告缺陷和请求新功能,也可以通过命令 pyarmor man (很快实现)快速提交。邮件 pyarmor.com 仅用于处理安全或者不适合公开方面的问题,其他技术问题一般不会回复
Pyarmor 开发组对提交问题的响应时间一般为 24 小时之内,节假日或者特殊情况可能会延长
Pyarmor 开发组不提供微信,电话等其他形式的技术支持
5.4. 购买
在浏览器中打开 Pyarmor 官网的购物车,支持微信和支付宝
在购物车页面选择需要的许可证类型,填写注册名称,并完成支付。
支付成功之后,在一个工作日之内激活文件会发送到注册邮箱,请按照激活文件中的方法和步骤完成注册和激活,或者参考这里 使用许可证 。
购买软件许可的费用是一次性收费,可以永久在购买本软件时候的版本中使用,但是许可证可能在任何一个升级版本中失效,Pyarmor 不承诺许可证可以在今后所有的升级版本中使用。
授权模式 |
不含税价格(人民币元) |
含税价格(人民币元) |
说明 |
|---|---|---|---|
基础版 |
298 |
359 |
|
专家版 |
512 |
562 |
|
集团版 |
868 |
918 |
|
管线版 |
520 / 年 |
569 / 年 |
5.5. 退款条款
满足下列所有条件,可以进行退款
购买日期在30天之内
该许可激活文件还没有在命令
pyarmor reg中使用
请直接发送退款请求到 pyarmor@163.com
5.6. 关于一种产品的示例说明
不用于销售的所有的 Python 脚本都属于一种特殊的产品 non-profits
一种产品在本协议中指的是独立销售的软件所有组成部分,包括开发需要的各种设备,以及提供支持的服务器,云服务器等。一种产品也包括产品的当前版本,历史版本,以及将来的升级版本。一种产品也包括基础功能相同,组合不同特殊功能而形成的不同版本的产品,这种产品的特征是不同版本对外销售名称一样,只是通过辅助名称等来进行区分。
Pyarmor 是一种产品,它所包含
Pyarmor 基础版,专家版和集团版 都属于 Pyarmor 这一种产品
pyarmor-webui,为 Pyarmor 提供图形界面的工具,也属于 Pyarmor 这一种产品
Pyarmor 的后台订单系统是用 django 开发的一个程序,这也属于 Pyarmor 这一种产品
开发 Pyarmor 所使用的笔记本电脑,测试 Pyarmor 使用的台式机,以及运行后台订单系统的云服务器都属于 Pyarmor 这一种产品
Pyarmor 7.x 和 Pyarmor 8.x 也都属于 Pyarmor 一种产品。
Microsoft Office 产品系列不是一种产品,它包括的各个产品,例如 Microsoft Word 和 Microsoft Excel 是功能完全不同的两个产品,所以 Microsoft Office 不是一种产品。而 Microsoft Word 是一种产品,它的各个版本系列 Micorsoft Word 2003,Word 2007 等也都属于 Microsoft word 这一种产品。