Crates.io | xorio |
lib.rs | xorio |
version | 0.1.0 |
source | src |
created_at | 2021-02-04 22:00:20.37298 |
updated_at | 2021-02-04 22:00:20.37298 |
description | A crate for XOR-ing Read/Write streams |
homepage | |
repository | https://github.com/katharostech/xorio |
max_upload_size | |
id | 350737 |
size | 18,320 |
Read
/Write
implementation that Xor's the bytes that come through it and wraps around
another Read
or Write
.
let mut file = File::create("my_xored_file.bin").unwrap();
let mut writer = Xor::new(file);
writer.write_all("Hello World".as_bytes());
let mut file = File::open("my_xored_file.bin").unwrap();
let mut reader = Xor::new(file);
let mut content = String::new();
reader.read_to_string(&mut content);
You can also customize the bytes that it will XOR the stream with. By default it uses a single
byte 0b01010101
to calculate the XOR.
let mut file = File::create("my_xored_file.bin").unwrap();
let mut writer = Xor::new_with_xor_bytes(file, vec![1, 2, 3]);
writer.write_all("Hello World".as_bytes());
This crate is licensed under the Katharos License which places certain restrictions on what you are allowed to use it for. Please read and understand the terms before using this crate for your project.