NovaCrypt is a simple cryptographic library for encryption and decryption of text data and files. It allows users to perform basic cryptographic operations using a custom key and salt.
- Encryption and Decryption: Encrypt and decrypt strings and files.
- Customizable Parameters: Define a secure key and salt for cryptographic operations.
- File Operations: Encrypt and decrypt file contents.
main.cpp
: Contains the main program logic and user interface.novacrypt.cpp
: Implements the NovaCrypt encryption and decryption algorithms.novacrypt.hpp
: Header file for the NovaCrypt class.
- C++11 or later
- CMake 3.10 or higher
- A C++ compiler (e.g., g++, clang++)
- Clone the repository:
git clone https://github.com/shovan04/NovaCrypt.git cd NovaCrypt
- Create a build directory:
mkdir build cd build
- Run CMake to configure the project:
cmake ..
- Build the project:
make
- Run the executable:
./NovaCrypt
The NovaCrypt system provides a command-line interface to perform cryptographic operations. Upon running the executable, you will be prompted to choose a mode and enter the necessary parameters.
- Encryption: Encrypt text data.
- Decryption: Decrypt text data.
- Encrypt File: Encrypt the contents of a file and save the result to another file.
- Decrypt File: Decrypt the contents of a file and save the result to another file.
Encrypt Text:
Enter SECURE_KEY(int): 12345
Enter SALT(int): 10
Enter MODE (1/2/31/32): 1
Enter the content: Hello, World!
Output:
Encrypted Data: [encrypted text]
Encrypt File:
Enter SECURE_KEY(int): 12345
Enter SALT(int): 10
Enter MODE (1/2/31/32): 31
Enter File Path for Encryption (Source): input.txt
Enter File Path for Decryption (Destination): encrypted_output.txt
Output:
Encrypted data saved to: encrypted_output.txt
- Fork the repository.
- Create a feature branch:
git checkout -b feature/your-feature
- Commit your changes:
git commit -m "Add new feature"
- Push to the branch:
git push origin feature/your-feature
- Open a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- C++ Standard Library
- CMake