ash-encrypt
Encrypt and decrypt files and directories with AES-256-GCM.
Features
- AES-256-GCM encryption — authenticated encryption with strong confidentiality and integrity guarantees
- File and directory support — encrypt individual files or entire directories
- Simple CLI — intuitive command-line interface with encrypt/decrypt modes
- Progress bars — visual feedback for large file operations via tqdm
- Streaming encryption — handles large files without loading them entirely into memory
- Cross-platform — works on Linux, macOS, and Windows
Installation
pip install ash-encrypt
Quick Start
Encrypt a file
ash-encrypt e -p <password> -f <file>
This produces a .ash encrypted file. For example:
ash-encrypt e -p mysecretpass -f document.pdf
# Output: document.ash
Decrypt a file
ash-encrypt d -p <password> -f <file.ash>
ash-encrypt d -p mysecretpass -f document.ash
# Output: document.pdf
CLI Flags
| Flag | Description |
|---|---|
e |
Encryption mode |
d |
Decryption mode |
-p |
Password |
-f |
File or directory path |
Supported Platforms
- Linux
- macOS
- Windows
Requirements
- Python 3.8+
- pycryptodome >= 3.15
- tqdm >= 4.60
Development
Clone the repository and install with dev dependencies:
git clone https://github.com/shimafallah/ash_encryptor.git
cd ash_encryptor
pip install -e ".[dev]"
License
Links
Release files for ash-encrypt 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ash_encrypt-0.3.0.tar.gz | 9.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ash_encrypt-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.4 kB
Release files / ash_encrypt-0.3.0.tar.gz
| Download URL | ash_encrypt-0.3.0.tar.gz |
|---|---|
| Size | 9.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
64d28345cf7d74766b0af03ea857469c4b47f9d6611c182c7909e65323abd2ef
|
|
BLAKE2b-256 checksum How to use checksums |
f700f31be923c73677b17ce808b5a84e0285fc4b7eef230c8e68d63bdcb61409
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / ash_encrypt-0.3.0-py3-none-any.whl
| Download URL | ash_encrypt-0.3.0-py3-none-any.whl |
|---|---|
| Size | 12.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8e835dfb29d8b5e17ff82201b9fac6b2422c0ec7e83111eb83f0a52e72633ecd
|
|
BLAKE2b-256 checksum How to use checksums |
671ff13d911bed155f651366212eaf16e4da847e4306c259f5216f71a71c93ed
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|