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.11

  • 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-8.2.1.zip (2.3 MB view details)

Uploaded Source

Built Distribution

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

pyarmor-8.2.1-py2.py3-none-any.whl (2.3 MB view details)

Uploaded Python 2Python 3

File details

Details for the file pyarmor-8.2.1.zip.

File metadata

  • Download URL: pyarmor-8.2.1.zip
  • Upload date:
  • Size: 2.3 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-8.2.1.zip
Algorithm Hash digest
SHA256 221788f2514b66d839dfba6de6cf1e8e47d07b6ea12b8d3d2dae0b44c58c677d
MD5 f764a95549d0e71f0ef8c9f5762d4e17
BLAKE2b-256 a45fb142f6521065494db25ea51be2d7a5091734a5ddfc6928abbd03ea6cf900

See more details on using hashes here.

File details

Details for the file pyarmor-8.2.1-py2.py3-none-any.whl.

File metadata

  • Download URL: pyarmor-8.2.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: Python 2, 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-8.2.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ceb1f98d7de94595263524749b6878b81093997cef5f646a0f0e9b4649e7c628
MD5 008dad1d3be105fce8374400c2dc8afd
BLAKE2b-256 e4444bb7a3e5db577b00705188dbf1c08376f4f9776c1658c0eee7eca263f287

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