Pyarmor is a command line tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.
Key Features
The obfuscated script is still a normal .py script, in most of cases the original python scripts can be replaced with obfuscated scripts seamlessly.
Provide many ways to obfuscate the scripts to balance security and performance
Rename functions/methods/classes/variables/arguments, irreversible obfuscation
Convert part of Python functions to C function, compile to binary by high optimize option, irreversible obfuscation
Bind obfuscated scripts to fixed machine or expire obfuscted scripts
Protect obfuscated scripts by Themida (Only for Windows)
Support Platforms
Python 3.7~3.15
Windows
Many linuxs, include embedded systems
Apple Intel and Apple Silicon
Quick Start
Install:
pip install pyarmor
Obfuscate the script foo.py:
pyarmor gen foo.py
This command generates an obfuscated script dist/foo.py like this:
from pyarmor_runtime import __pyarmor__
__pyarmor__(__name__, __file__, b'\x28\x83\x20\x58....')
Run it:
python dist/foo.py
More Resources
Metadata
Release files for pyarmor 9.2.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyarmor-9.2.7-3-py3-none-any.whl | Python 3 | none | any | Details |
| pyarmor-9.2.7-2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.2 MB
Release files / pyarmor-9.2.7-3-py3-none-any.whl
| Download URL | pyarmor-9.2.7-3-py3-none-any.whl |
|---|---|
| Size | 3.1 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7dc03740cd31ab38d6064fbd822a1b62aae7d2267aa1dd99be3055f2107b1909
|
|
BLAKE2b-256 checksum How to use checksums |
de0aa95f56b2ecb352080d9f36d3ace313cdcc2b6662cc66ecbdebd137833f8d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.10
|
Release files / pyarmor-9.2.7-2-py3-none-any.whl
| Download URL | pyarmor-9.2.7-2-py3-none-any.whl |
|---|---|
| Size | 3.1 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7cf7659f822b4da2434b2e19c3adc9f17868c5610d0e53f4dc2321ff9eefbf5d
|
|
BLAKE2b-256 checksum How to use checksums |
d0861a8937731f28e0fe6fe603da1fc4a8d27525dcd26f7b723326e8e83a562c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.10
|