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.5.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.5-py3-none-any.whl (3.1 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyarmor-9.2.5.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.5.tar.gz
Algorithm Hash digest
SHA256 6f2253282d9e502e583d18413c8fb666f6c5b94e5da939a7a13cd834b639ed96
MD5 6855e92ebf4d2bd6c0fba351d1535e47
BLAKE2b-256 f31642a6ddc287cd228fae6c2cf6590f579406efed7c85ac508bb6c5f940f073

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyarmor-9.2.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 bad7d878396c654a9e9fb0103ede00784b9bafdf9df893152f4b29bfce7c564c
MD5 168cfbdc1f743449c02243ded97d91ab
BLAKE2b-256 2516af84ca6cd432f84bd94eacbef3f531d86f4bcdf6ce3583fa0267568a4e4f

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