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.0.8.tar.gz (2.7 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.0.8-py3-none-any.whl (2.8 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyarmor-9.0.8.tar.gz
  • Upload date:
  • Size: 2.7 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.0.8.tar.gz
Algorithm Hash digest
SHA256 eda8d0f342e7cd4232ea9f608bb4c926ce382c5b35c51d7a181ae8bd4ec5e8cb
MD5 e7489d3f4acd4f3ca25b9d96f576c047
BLAKE2b-256 7450da25c2252852f68d2753f71540f8c1740f5ea11c4d84050638f04352aff0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyarmor-9.0.8-py3-none-any.whl
  • Upload date:
  • Size: 2.8 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.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 aa6f40f4aa5bc8f95fa4d65803b3f07d239ce8a7f31b63de7952086e69c79794
MD5 b5d30dee1336eaa2ebb57e5284f36a86
BLAKE2b-256 24b6013452cc63be5ceff57bb3b3d5fa260a734511ee9d6491a032e2a1942a65

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