PyCryptic is a Python-based command-line tool for encrypting and decrypting files and directories using AES encryption. It ensures data security by allowing users to provide their own passwords for encryption and decryption. Designed to be simple, robust, and efficient, PyCryptic is a great solution for securing sensitive information.
- File Encryption: Encrypt single files securely using AES.
- Directory Encryption: Recursively encrypt all files within a directory.
- File Decryption: Decrypt encrypted files with the correct password.
- Cross-Platform: Works seamlessly on Linux, macOS, and Windows.
- Custom Passwords: Users can specify their own password for encryption and decryption.
- Python 3.10 or later
- pip (Python package manager)
-
Clone the repository:
git clone https://github.com/JonathanInTheClouds/pycryptic.git cd pycryptic -
Install the dependencies:
pip install -r requirements.txt
-
(Optional) Install PyCryptic in editable mode:
pip install -e .
python -m pycryptic.cli <action> <input_path> <output_path> --password <password><action>:encryptordecrypt<input_path>: Path to the file or directory to process<output_path>: Path to the output file or directory--password: Password for encryption or decryption
python -m pycryptic.cli encrypt myfile.txt myfile.enc --password mypasswordpython -m pycryptic.cli decrypt myfile.enc myfile.txt --password mypasswordpython -m pycryptic.cli encrypt myfolder encrypted_folder --password mypasswordpython -m pycryptic.cli decrypt encrypted_folder decrypted_folder --password mypasswordPyCryptic includes a comprehensive test suite to ensure reliability.
-
Run all tests:
pytest
-
Generate a code coverage report:
pytest --cov=.
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch for your feature or bugfix.
- Submit a pull request with a clear explanation of your changes.
This project is licensed under the MIT License.
Thank you for using PyCryptic! 🔒