bincode_aes

Summary

bincode_aes is a decorated bincode serializer/deserializer. Its purpose is to transparently encrypt (and decrypt) data as it is serialized/deserialized. * A common use case would be encrypting data as it is written to disk. * For transporting encrypted data over the network, you'd be better off using regular bincode & TLS.

Example

```rust extern crate bincodeaes; fn main() { let key = bincodeaes::randomkey().unwrap(); let bc = bincodeaes::withkey(key); let target: Option = Some("hello world".tostring());

let mut encoded: Vec<u8>    = bc.serialize(&target).unwrap();
let decoded: Option<String> = bc.deserialize(&mut encoded).unwrap();
assert_eq!(target, decoded);

} ```

Notes

TODO:

What I have now works well-enough in its current state for my own purposes. Here are some improvements that may be coming in the future.

Short Term:

Long Term:

License

bincode_aes is dual licensed under the MIT and Apache 2.0 licenses, the same licenses as the Rust compiler.