5. Pyarmor License Types¶
Contents
5.1. Introduction¶
This documentation is only apply to Pyarmor 8.0 plus.
Pyarmor is published as shareware, free trial version never expires, but there are some limitations:
- Can not obfuscate big scritps [1]
- Can not use feature mix-str [2] to obfuscate string constant in scripts
- Can not use RFT Mode [3], BCC Mode [4]
- Can not be used for any commercial product without permission
- Can not be used to provide obfuscation service in any form
These limitations can be unlocked by different License Types except last one.
5.2. License types¶
Pyarmor has 3 kind of licenses:
- Pyarmor Basic
Basic license could unlock big script [1] and mix-str [2] feature.
It requires internet connection to verify license
- Pyarmor Pro
Pro license could unlock big script [1] and mix-str [2] feature.
Pro license also unlocks BCC Mode [4] and RFT Mode [3]
It requires internet connection to verify license
- Pyarmor Group
- Group license unlocks all limitions and doesn’t require internet.
Internet connection is only used to verify Pyarmor License in the build machine to generate the obfuscated scripts.
For the obfuscated scripts run in the customer’s device, Pyarmor has no any limitions, it’s totally controlled by users. Pyarmor only cares about build machine.
Each license has an unique number, the format is pyarmor-vax-xxxxxx
, which x
stands for a digital.
Each product requires one License No. So any product in global also has an unique number in Pyarmor world.
If user has many products, many license are required.
One product in Pyarmor world means a product name and everything that makes up this name.
It includes all the devices to develop, build, debug, test product.
It also includes product current version, history versions and all the future versions.
One product may has several variants, each variant name is composed of product name plus feature name. As long as the proportion of the variable part is far less than that of the common part, they’re considered as “one product”.
Pyarmor License could be installed in many machines and devices which belong to licensed product. But there is limitation to be used at the same time.
In 24 hours only less than 100 devices can use one same Pyarmor License. Pyarmor License be used means use any feature of Pyarmor in one machine. Running obfuscated scripts generated by Pyarmor is not considered as Pyarmor License be used.
In details read EULA of Pyarmor
5.2.1. License features¶
Features | Trial | Basic | Pro | Group | Remark |
---|---|---|---|---|---|
Basic Obfuscation | Y | Y | Y | Y | [5] |
Expired Script | Y | Y | Y | Y | [6] |
Bind Device | Y | Y | Y | Y | [7] |
JIT Protection | Y | Y | Y | Y | [8] |
Assert Protection | Y | Y | Y | Y | [9] |
Themedia Protection | Y | Y | Y | Y | [10] |
Big Script | No | Y | Y | Y | |
Mix Str | No | Y | Y | Y | |
RFT MODE | No | No | Y | Y | |
BCC MODE | No | No | Y | Y |
notes
[1] | (1, 2, 3) Big Script means file size exceeds a cerntain value. |
[2] | (1, 2, 3) Mix Str: obfscating string constant in script |
[3] | (1, 2) RFT Mode: renaming function/class/method/variable in Python scripts |
[4] | (1, 2) BCC Mode: Transforming some Python functions in scripts to c functions, compile them to machine instructions directly |
[5] | Basic Obfuscation: obfuscating the scripts by default options |
[6] | Expired Script: obfuscated scripts has expired date |
[7] | Bind Device: obfuscated scripts only run in specified devices |
[8] | JIT Protection: processing some sentensive data by runtime generated binary code |
[9] | Assert Protection: preventing others from hacking obfuscated scripts |
[10] | Themedia Protection: using Themedia to protect Widnows dlls |
5.3. Purchasing license¶
Open shopping cart in any web browser:
If you have Pyarmor 8.0+ installed, this command also could open shopping cart:
$ pyarmor reg --buy
In the shopping cart, select License Type and complete the payment online.
Please fill regname with personal or company name when placing order.
License Type | Net Price($) | Remark |
---|---|---|
Basic | 52 | |
Pro | 89 | |
Group | 158 |
An activation file named pyarmor-regcode-xxxx.txt
will be sent by email
immediately after payment is completed successfully.
Following the guide in activation file to take the purchased license effects.
There are no additional license fees, apart from the cost of the license. And it only needs to be paid once, not periodically
5.3.1. Refund policy¶
If activation file isn’t used, and purchasing date is in six months, refund is accepted. Please send request to pyarmor@163.com, Pyarmor will refund the order in a week. Out of six monthes, or activation file has been used to activate the license, refund request is not accepted.
Why no refund even if my PayPal account is hacked and someone else bought Pyarmor by this PayPal account?
Imaging you lost cash €100, someone else got it and buys a cloth, I don’t think the shopper should refund money to you. It’s same for money in PayPal, you lost money by yourself, the shopper should not bear loss because of your fault.
5.4. Upgrading old license¶
Not all the old license could be upgraded to latest version.
The old license could be upgraded to Pyarmor Basic freely only if it matchs these conditions:
- Following new EULA of Pyarmor
- The license no. starts with
pyarmor-vax-
- The original activation file
pyarmor-regcode-xxxx.txt
is used not more than 100 times.
If it’s not matched, please purchase new license to use Pyarmor latest version.
Upgrading to Pyarmor Pro needs extra fees.
License Type | Upgrading fee($) | Remark |
---|---|---|
Basic | 0 | following new EULA and match some conditions |
Pro | 50 | |
Group | N/A |
5.4.1. Freely to Pyarmor-Basic¶
First find the activation file pyarmor-regcode-xxxx.txt
, which is sent
to registration email when purchasing the license.
In any build machine which has old license, first install Pyarmor 8.0+.
Be careful to keep old license file still in the Pyarmor Home Path,
generally it’s ~/.pyarmor
.
If product name is set when purchasing old license, run this command:
$ pyarmor reg -u pyarmor-regcode-xxxx.txt
If no product name is set when purchasing old license, please decide which product will use this upgraded license. According to new EULA of Pyarmor, each license is only for one product.
If this license is only for internal use or non-profits use, run this command as
above, in this case product name will be set to non-profits
:
$ pyarmor reg -u pyarmor-regcode-xxxx.txt
For commercial use, assume product Robot Studio
will use this license, run
this command:
$ pyarmor reg -u -p "Robot Studio" pyarmor-regcode-xxxx.txt
Check the upgraded license information:
$ pyarmor -v
If old license is used by many products (mainly old personal license), only one product could be used after upgrading. For the others, it need purchase new license.
5.4.2. With extra fee to Pyarmor-Pro¶
Open shopping cart in any web browser:
If you have Pyarmor 8.0+ installed, this command also could open shopping cart:
$ pyarmor reg --buy
In the shopping cart, select Pyarmor-upgrade
and complete the payment online.
An activation file named pyarmor-regcode-to-pro.txt
will be sent by email
immediately after payment is completed successfully.
Following the guide in activation file to take the purchased license effects.