Skip to main content

A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.

Project description

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

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyarmor-9.2.6.tar.gz (3.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyarmor-9.2.6-py3-none-any.whl (3.1 MB view details)

Uploaded Python 3

File details

Details for the file pyarmor-9.2.6.tar.gz.

File metadata

  • Download URL: pyarmor-9.2.6.tar.gz
  • Upload date:
  • Size: 3.0 MB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for pyarmor-9.2.6.tar.gz
Algorithm Hash digest
SHA256 98db8a0bda19ff69153bde06a85e544e297f7479be1159caef42d0cee888a7ee
MD5 4a3f15fa2dccff5994218eb7c0e43f24
BLAKE2b-256 bded09703f1799fd10eebf76b465ed13d08506404e328b33e1b97718c57b7702

See more details on using hashes here.

File details

Details for the file pyarmor-9.2.6-py3-none-any.whl.

File metadata

  • Download URL: pyarmor-9.2.6-py3-none-any.whl
  • Upload date:
  • Size: 3.1 MB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for pyarmor-9.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 2efb4ba95ab5c5b08bf70698fb4dcbc1e33cde7b71b040ff1ba7f85bfc11af11
MD5 256b1bef6df13ee81145dbbf794dd262
BLAKE2b-256 ab2d0f0611e872cc92cba7c17a7aa3fb5575088bb1411aa9278d885f569d254e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page