3.1. Concepts¶
- Activation File
A text file used to initial registration Pyarmor License
When purchasing any Pyarmor License, an activation file is be sent to registration email after payment is completed.
- BCC Mode
- An obfuscation method of Pyarmor by converting Python functions to C functions
- Registration File
- A zip file generated after initial registration is successful. It’s used to register Pyarmor License excpet initial registration.
- Pyarmor
Pyarmor is product domain, the goal is to provide functions and services to obfuscate Python scripts in high security and high performance. The mission of Pyarmor is let Python use easily in commercial product.
Pyarmor is composed of
- Pyarmor Basic
- A Pyarmor License type
- Pyarmor Group
- A Pyarmor License type
- Pyarmor Home
Host in github: https://github.com/dashingsoft/pyarmor/
It serves open source part of Pyarmor, issues and documentations.
- Pyarmor License
Issued by Pyarmor Team to unlock some limitations in Pyarmor trial version.
Refer to Pyarmor License Types
- Pyarmor Package
A Python Package, it includes
- Pyarmor Pro
- A Pyarmor License type
- Python
- A program language.
- Python Script
A file that serves as an organizational unit of Python code.
Refer to https://docs.python.org/3.11/glossary.html#term-module
- Python Package
- Refer to https://docs.python.org/3.11/glossary.html#term-package
- RFT Mode
- An obfuscation method of Pyarmor by renaming function/class in the scripts
- Runtime Files
All the files required to run the obfuscated scripts.
Generally it equals Runtime Package. If outer key is used, plus this outer key file.
- Runtime Key
The settings of obfuscated scripts. It may include the expired date, device information of bind to obfuscated scripts. Also include all the flags to control the behaviours of obfuscated scripts.
Generally it’s embedded into Runtime Package, but it also could be stored to a independent file outer key
- Runtime Package
A Python Package generally named
pyarmor_runtime_000000
.When obfuscating the scripts, it’s be generated at the same time.
It’s required to run the obfuscated scripts.
- Outer Key
A file generally named
pyarmor.rkey
to store Runtime KeyThe outer key file must be located in one of path
- Runtime package
PYARMOR_RKEY
sys._MEIPASS
- Current path
- Home Path
- Store Pyarmor registration file, global configuration, other data file
generated by pyarmor, the default path is user home path
~/.pyarmor
- Global Configuration Path
- Store Pyarmor local configuration file, default is
.pyarmor
in the current path - Local Configuration Path
- Store Pyarmor local configuration file, default is
.pyarmor
in the current path - Registration File Path
- Store registration information of Pyarmor License, default is same as Home Path
- Build Machine
- The device in which to install pyarmor, and to run pyarmor to generate obfuscated scripts.
- Pyarmor Users
- Developers or organizations who use Pyarmor to obfuscate their Python scripts
- Target Device
- In which run the obfuscated scripts distributed by Pyarmor Users, generally it’s in customer side
- Platform
The standard platform name defined by Pyarmor. It’s composed of os.arch.
Supported platforms list:
- Windows - windows.x86_64 - windows.i386
- Many Linuxs - linux.x86_64 - linux.i386 - linux.aarch64
- Apple Intel and Silicon - darwin.x86_64 - darwin.aarch64
- JIT
- Abbr. JUST-IN-TIME, just generating machine instructions in run time.
- extension module
- A module written in C or C++, using Python’s C API to interact with the core and with user code.