PyArmor is a command line tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts. It protects Python scripts by the following ways:
- Obfuscate code object to protect constants and literal strings.
- Obfuscate co_code of each function (code object) in runtime.
- Clear f_locals of frame as soon as code object completed execution.
- Verify the license file of obfuscated scripts while running it.
Refer to Protect Python Scripts By PyArmor
- Python 2.5, 2.6, 2.7 and Python3
- Prebuilt Platform: win32, win_amd64, linux_i386, linux_x86_64, macosx_x86_64
- Embedded Platform: Raspberry Pi, Banana Pi, Orange Pi, TS-4600 / TS-7600
pip install pyarmor
pyarmor obfuscate examples/simple/queens.py
Run obfuscated scripts
cd dist python queens.py
Pack obfuscated scripts with
pip install pyinstaller pyarmor pack examples/py2exe/hello.py
Generate an expired license and run obfuscated scripts with new license
pyarmor licenses --expired 2018-12-31 Customer-Jondy cp licenses/Customer-Jondy/license.lic dist/ cd dist/ python queens.py
Start webui, open web page in browser for basic usage of PyArmor
PyArmor is published as shareware. Free trial version never expires, the limitation is
- Project Capsule generated by trial version is NOT random, but FIXED by hardcode.
A registration code is required to generate random project capsule.
- Personal user: one registration code is enough.
- Company user: one registration code is only used for one project/product.
For details, refer to About License.
A registration code will be sent to your immediately after payment is completed successfully.
After you receive the email which includes registration code, copy registration
code only (no newline), then replace the content of
license.lic with it.
The registration code is valid forever, it can be used permanently.