By: Ryan Hatch / Zencrypt Tech
Keeping It Simple and Secure.
Overview • Features • Requirements • Installation • Usage • Cryptography Notes • Build • Contributing • Disclaimer • License
© 2026 Ryan Hatch / Zencrypt Tech
All Rights Reserved.
Zencrypt CLI Python is a terminal-based encryption and hashing tool from the Zencrypt Tech project family.
This CLI is designed to provide a simple local interface for generating and verifying SHA-256 hashes, encrypting and decrypting text, encrypting and decrypting files, and testing basic RSA message encryption workflows.
This repository is the Python CLI version of Zencrypt. It is intended for learning, experimentation, and local encryption workflows.
- Hash generation using the SHA-256 hashing algorithm with an optional salt value.
- Hash verification by comparing provided text and salt input against a known hash.
- Encrypt and decrypt text using Fernet symmetric encryption.
- Encrypt and decrypt files with password-derived AES encryption.
-
RSA message encryption using RSA-OAEP through Python's
cryptographylibrary. - Public key export and import for RSA public keys.
- Copy output to the clipboard.
- Clear content from the clipboard.
Python 3.10+ is recommended.
Required runtime packages:
cryptography
pyperclip
Recommended requirements.txt:
cryptography>=41.0.4
pyperclip>=1.8.2
If you build a Windows executable with PyInstaller, keep that dependency
separate in requirements-dev.txt.
Recommended requirements-dev.txt:
pyinstaller>=6.0.0To install Zencrypt CLI Python, you will need Python and pip installed on your system.
-
Clone the repository:
git clone https://github.com/zencrypt-tech/zencrypt-cli-python.git -
Navigate into the project folder:
cd zencrypt-cli-python -
Optional but recommended: create a virtual environment.
Windows PowerShell:macOS/Linux:python -m venv .venv .\.venv\Scripts\Activate.ps1python3 -m venv .venv source .venv/bin/activate -
Install the required dependencies:
pip install -r requirements.txt
Run the application with:
python zencrypt.pyFollow the on-screen prompts to perform the desired operation.
1 | Hash Manager
2 | Encrypt Text
3 | Encrypt Files
4 | PGP/RSA Encryption
5 | Clear Clipboard
6 | ExitThis project is a learning-focused CLI and should be treated as a local utility, not a production-grade security product.
- Text encryption uses Fernet symmetric encryption.
- File encryption uses password-derived AES encryption.
-
RSA message encryption uses RSA-OAEP through Python's
cryptographylibrary. - The RSA feature is not full OpenPGP compatibility, even if older project text refers to it as PGP.
- Local key files should be protected and excluded from version control.
- AES-GCM or Fernet-based authenticated file encryption.
- Better key management.
- Cleaner import and export workflows.
- Dedicated tests.
- Packaged releases through GitHub Releases instead of committed executables.
zencrypt-cli-python/
├── README.md
├── LICENSE
├── requirements.txt
├── requirements-dev.txt
├── .gitignore
└── zencrypt.py
If PyInstaller is installed through requirements-dev.txt, you
can build a local executable with:
pyinstaller --onefile zencrypt.pyBuild output should remain local and should not be committed to the source repository.
If you want to distribute an executable, attach it to a GitHub Release instead.
Please reach out to verify and validate ideas and contributions before continuing any further. Although contributions may be welcome, they should stay focused on the Python CLI version of Zencrypt.
Recommended workflow:
- Fork the repository.
-
Create a new branch:
git checkout -b feature/your-feature-name - Make your changes.
- Confirm that no keys, secrets, generated files, executables, or local test files are included.
-
Commit your changes:
git commit -m "Add your feature" -
Push to the branch:
git push origin feature/your-feature-name - Open a pull request.
<=> <=> <=> <=> <=> <=> <=>
This script is provided for educational and demonstration purposes only.
Use it responsibly and only on files, messages, and systems that you own
or are authorized to work with.
The project maintainer is not responsible for data loss, misuse, damage,
or improper use of this software.
<=> <=> <=> <=> <=> <=> <=>
This software is the property of the copyright holder and is protected by copyright laws. All rights are reserved by the copyright holder unless explicitly granted in writing.
The copyright holder grants no implied or express license for the use, copying, modification, distribution, or reproduction of this software, in whole or in part, without prior written permission from the copyright holder, unless a separate license file states otherwise.
Any unauthorized use, copying, modification, distribution, or reproduction of this software, in whole or in part, is strictly prohibited and may constitute a violation of copyright law.
By using this software, you acknowledge that you have read and understood
the terms of this license and agree to comply with all applicable laws.
For inquiries, suggestions, or project-related questions, contact the project maintainer through the Zencrypt Tech organization or open a GitHub issue.
Zencrypt Tech
Keeping It Simple and Secure.