rust_one_time_pad
One Time Pad Implementation in Rust.
Do not use this library for anything other than testing purposes.
One-time Pad Description
Based off the one-time pad description in 0-vername.pdf
Features
- Encrypt files
- Decrypt files
Known limitations
- Easy to break as random bit b only has two options, 0 or 1
- Limited to files with strings
Dependencies
Installation
Use a pre-compiled binary in releases or build from source:
cargo install --git https://github.com/JeffResc/rust_one_time_pad
Usage
For Windows:
rust_one_time_pad <SUBCOMMAND>
For Linux:
./rust_one_time_pad <SUBCOMMAND>
Main
One Time Pad Implementation in Rust.
USAGE:
rust_one_time_pad <SUBCOMMAND>
OPTIONS:
-h, --help Print help information
SUBCOMMANDS:
decrypt Decrypts a file
encrypt Encrypts a file
help Print this message or the help of the given subcommand(s)
Decrypt
Decrypts a file
USAGE:
rust_one_time_pad decrypt <RANDOM_BIT> <INPUT_FILE> <OUTPUT_FILE>
ARGS:
<RANDOM_BIT> Random bit r
<INPUT_FILE> File to decrypt
<OUTPUT_FILE> Decrypted file
OPTIONS:
-h, --help Print help information
Encrypt
Encrypts a file
USAGE:
rust_one_time_pad encrypt <RANDOM_BIT> <INPUT_FILE> <OUTPUT_FILE>
ARGS:
<RANDOM_BIT> Random bit r
<INPUT_FILE> File to encrypt
<OUTPUT_FILE> Encrypted file
OPTIONS:
-h, --help Print help information