Skip to content

RustyXOR is a command-line tool for encrypting and decrypting files using the XOR cipher in ECB mode. It features a user-friendly interface, progress visualization, and ensures secure handling of your data. Built with Rust, RustyXOR provides efficient and transparent operations.

Notifications You must be signed in to change notification settings

martian58/rustyxor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RustyXOR: File Encryption and Decryption using XOR Cipher

RustyXOR is a command-line tool for encrypting and decrypting files using the XOR cipher in ECB mode. It features a user-friendly interface, progress visualization, and ensures secure handling of your data. Built with Rust, RustyXOR provides efficient and transparent operations.

Features

  • Encrypt files using the XOR cipher in ECB mode.
  • Decrypt files using the XOR cipher in ECB mode.
  • Simple and intuitive command-line interface (CLI).
  • Progress bar to monitor the encryption/decryption process.

Prerequisites

Make sure you have Rust installed on your system.

Installation

Clone the repository and navigate to the project directory:

git clone https://github.com/martian58/rustyxor.git
cd rustyxor

Building the Project

To build the project, use the following command:

cargo build

For a release build, use:

cargo build --release

Running the Project

Command-Line Interface

The CLI provides the following options:

  • --input or -i: The input file to use (required).
  • --output or -o: The output file to use (optional).
  • --key or -k: The encryption/decryption key (optional, will prompt if not provided).
  • --decrypt or -d: Decrypt the input file instead of encrypting.

Example Usage

Encrypt and Overwrite the Input File

cargo run --bin rustyxor -- --input input_file.txt

Encrypt and Create a New Output File

cargo run --bin rustyxor -- --input input_file.txt --output output_file.txt

Decrypt and Overwrite the Input File

cargo run --bin rustyxor -- --input encrypted_file.txt --decrypt

Decrypt and Create a New Output File

cargo run --bin rustyxor -- --input encrypted_file.txt --output decrypted_file.txt --decrypt

Running Tests

To run the tests for the project, use the following command:

cargo test

This will execute the test suite and verify the correctness of the implementation.

License

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

Contributing

Contributions are welcome! Please open an issue or submit a pull request for any improvements or bug fixes.

Contact

For any questions or inquiries, please contact martian58.

About

RustyXOR is a command-line tool for encrypting and decrypting files using the XOR cipher in ECB mode. It features a user-friendly interface, progress visualization, and ensures secure handling of your data. Built with Rust, RustyXOR provides efficient and transparent operations.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages