pyencrypt-pye 0.3.0

Creator: bradpython12

Last updated:

Add to Cart

Description:

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(zhaoqi99@outlook.com)

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.