Skip to content

NovaCrypt is a lightweight cryptographic library in C++ designed for simple encryption and decryption of text and file contents. It features customizable encryption parameters, including a secure key and salt, and supports basic file operations for encrypting and decrypting data. Ideal for educational purposes and lightweight encryption tasks.

License

Notifications You must be signed in to change notification settings

shovan04/NovaCrypt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NovaCrypt System

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.

Features

  • 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.

Project Structure

  • 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.

Requirements

  • C++11 or later
  • CMake 3.10 or higher
  • A C++ compiler (e.g., g++, clang++)

Installation

  1. Clone the repository:
    git clone https://github.com/shovan04/NovaCrypt.git
    cd NovaCrypt
  2. Create a build directory:
    mkdir build
    cd build
  3. Run CMake to configure the project:
    cmake ..
  4. Build the project:
    make
  5. Run the executable:
    ./NovaCrypt

Usage

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.

Modes

  • 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.

Example

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

Contributing

Contributions to the NovaCrypt project are welcome! Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a feature branch:
    git checkout -b feature/your-feature
  3. Commit your changes:
    git commit -m "Add new feature"
  4. Push to the branch:
    git push origin feature/your-feature
  5. Open a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

  • C++ Standard Library
  • CMake

About

NovaCrypt is a lightweight cryptographic library in C++ designed for simple encryption and decryption of text and file contents. It features customizable encryption parameters, including a secure key and salt, and supports basic file operations for encrypting and decrypting data. Ideal for educational purposes and lightweight encryption tasks.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published