Last updated:
0 purchases
pyencryptpye 0.3.0
pyencrypt-pye
encrypt python source code and import module dynamically.
_
_ __ _ _ ___ _ __ ___ _ __ _ _ _ __ | |_
| '_ \| | | |/ _ \ '_ \ / __| '__| | | | '_ \| __|
| |_) | |_| | __/ | | | (__| | | |_| | |_) | |_
| .__/ \__, |\___|_| |_|\___|_| \__, | .__/ \__|
|_| |___/ |___/|_|
encrypt python source code and import dynamically.
VERSION 0.3.0
How to do
https://github.com/ZhaoQi99/pyencrypt-pye/wiki#how-to-do
Install
pip install pyencrypt-pye
β¨π°β¨
Or you can use pip install git+https://github.com/ZhaoQi99/pyencrypt-pye.git install latest version.
Usage
Usage: pyencrypt [OPTIONS] COMMAND [ARGS]...
Options:
--version Show the version and exit.
-h, --help Show this message and exit.
Commands:
decrypt Decrypt encrypted pye file
encrypt Encrypt your python code
generate Generate loader file using specified key
license Generate license file using specified key
Encrypt
~$ pyencrypt encrypt -h
Usage: pyencrypt encrypt [OPTIONS] PATHNAME
Encrypt your python code
Options:
-i, --in-place make changes to files in place
-k, --key π Your encryption key.If you donβt specify
key, pyencrypt will generate encryption key
randomly.
--with-license Add license to encrypted file
-m, --bind-mac 01:23:45:67:89:AB
Bind mac address to encrypted file
-4, --bind-ipv4 192.168.0.1 Bind ipv4 address to encrypted file
-b, --before [%Y-%m-%dT%H:%M:%S %z|%Y-%m-%d %H:%M:%S|%Y-%m-%d]
License is invalid before this date.
-a, --after [%Y-%m-%dT%H:%M:%S %z|%Y-%m-%d %H:%M:%S|%Y-%m-%d]
License is invalid after this date.
-y, --yes Automatically answer yes for confirm
questions.
-h, --help Show this message and exit.
Entry File
In your entry file, you must import loader firstly, and then you can import encrypted modules as usual.
import loader
from test import *
Decrypt
~$ pyencrypt decrypt -h
Usage: pyencrypt decrypt [OPTIONS] PATHNAME
Decrypt encrypted pye file
Options:
-i, --in-place make changes to files in place
-k, --key π Your encryption key. [required]
-h, --help Show this message and exit.
Generate
~$ pyencrypt generate -h
Usage: pyencrypt generate [OPTIONS]
Generate loader file using specified key
Options:
-k, --key π Your encryption key. [required]
-h, --help Show this message and exit.
License
pyencrypt's loader will search for the license file in the following manner:
~/.licenses/license.lic file in your home directory.
licenses/license.lic file in loader file's directory.
licenses/license.lic file in the current working directory.
~$ pyencrypt license -h
Usage: pyencrypt license [OPTIONS]
Generate license file using specified key
Options:
-h, --help Show this message and exit.
-k, --key π Your encryption key. [required]
-m, --bind-mac 01:23:45:67:89:AB
Bind mac address to encrypted file
-4, --bind-ipv4 192.168.0.1 Bind ipv4 address to encrypted file
-b, --before [%Y-%m-%dT%H:%M:%S %z|%Y-%m-%d %H:%M:%S|%Y-%m-%d]
License is invalid before this date.
-a, --after [%Y-%m-%dT%H:%M:%S %z|%Y-%m-%d %H:%M:%S|%Y-%m-%d]
License is invalid after this date.
Shell Completion
Bash
Add this to ~/.bashrc:
eval "$(_PYENCRYPT_COMPLETE=bash_source pyencrypt)"
Zsh
Add this to ~/.zshrc:
eval "$(_PYENCRYPT_COMPLETE=zsh_source pyencrypt)"
Fish
Add this to ~/.config/fish/completions/foo-bar.fish:
eval (env _PYENCRYPT_COMPLETE=fish_source pyencrypt)
Example
Encrypt
~$ pyencrypt encrypt --in-place -y test.py
~$ pyencrypt encrypt test/
~$ pyencrypt encrypt test.py -y --with-license\
--before="2000-01-01T00:00:00 +0800" --after="2030-01-01T00:00:00 +0800"\
--bind-mac="AC:DE:48:00:11:22" --bind-ipv4="192.168.0.1"
Decrypt
~$ pyencrypt decrypt -k xxx test.pye
Generate
~$ pyencrypt generate -k xxx
License
~$ pyencrypt license -k xxx\
--before="2000-01-01T00:00:00 +0800" --after="2030-01-01T00:00:00 +0800"\
--bind-mac="AC:DE:48:00:11:22" --bind-ipv4="192.168.0.1"
Development
Format Code
black pyencrypt
isort pyencrypt
License
GNU General Public License v3.0
Author
Qi Zhao([email protected])
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.