Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


PyArmor is a command line tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts. It protects Python scripts by the following ways:

  • Obfuscate code object to protect constants and literal strings.
  • Obfuscate co_code of each function (code object) in runtime.
  • Clear f_locals of frame as soon as code object completed execution.
  • Verify the license file of obfuscated scripts while running it.

Also refer to The Security of PyArmor

Support Platforms

  • Python 2.5, 2.6, 2.7 and Python3
  • Prebuilt Platform: win32, win_amd64, linux_i386, linux_x86_64, macosx_x86_64
  • Embedded Platform: Raspberry Pi, Banana Pi, Orange Pi, TS-4600 / TS-7600

Refer to Standard Platform Names

Quick Start


pip install pyarmor

Obfuscate scripts

pyarmor obfuscate

Run obfuscated scripts

python dist/

Pack obfuscated scripts into one bundle

pip install pyinstaller
pyarmor pack

Obfuscate scripts with an expired license

pyarmor licenses --expired 2018-12-31 r001
pyarmor obfuscate --with-license licenses/r001/license.lic

There is also a web-ui package pyarmor-webui

pip install pyarmor-webui

Start webui, open web page in browser (snapshots)


More usage, refer to


PyArmor is published as shareware, free trial version never expires, but there are some limitations:

  • The maximum size of code object is about 32768 bytes in trial version
  • All the trial version uses same public capsule other than private capsule
  • In trial version the module could not be obfuscated by advanced mode if there are more than about 30 functions (code objects) in this module.
  • ...

For details, refer to PyArmor License.


Click Purchase,

A registration keyfile generally named "" will be sent to your by email immediately after payment is completed successfully. There are 3 files in the archive:

  • REAME.txt
  • license.lic (registration code)
  • (private capsule)

Run the following command to take this keyfile effects:

pyarmor register /path/to/

Check the registeration information:

pyarmor register

The registration code is valid forever, it can be used permanently. But it may not work with new versions, although up to now it works with all of versions.


If you feel like showing your love and/or appreciation for this project, then how about shouting me a coffee or beer :)

Buy me a coffee

Change Logs

Report issuses

Any question feel free email to, or click here to report an issue

You can’t perform that action at this time.