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 scritpt 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.13

  • 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.1.7.tar.gz (2.9 MB view details)

Uploaded Source

Built Distribution

pyarmor-9.1.7-py3-none-any.whl (2.9 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyarmor-9.1.7.tar.gz
  • Upload date:
  • Size: 2.9 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.1.7.tar.gz
Algorithm Hash digest
SHA256 e33e7848c924b981b4d7fc75b2d0c96c70ad53e0700b4ea2411ed464990b5448
MD5 3768a4396974a3e53be4262fe1899147
BLAKE2b-256 311cac295119b681d2886ede8cb58a397c6d31f8ffc81a2f836c2ab3e602d0c1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyarmor-9.1.7-py3-none-any.whl
  • Upload date:
  • Size: 2.9 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.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 b44fa9a2d89570ec697583970bddbc5dccf10c9ceaf802192e16b54463d2165d
MD5 420e7ce23c01aac14fbd464503f87e68
BLAKE2b-256 5b806a79e376bee4b6dcfb68369e00abc60b5b964157e4290257c40aea605885

See more details on using hashes here.

Supported by

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