extended-tea 0.0.0

XTEA (eXtended TEA), a block cipher designed to correct weaknesses in TEA.
Documentation
# XTEA
This crate provides a Rusty implementation of the XTEA cipher, written in Rust.

This crate also provides convenience methods for ciphering and deciphering `u8` slices
and Read streams.

See <https://en.wikipedia.org/wiki/XTEA> for more information on the XTEA cipher.

## Note

This crate should only be used if you're working on an existing application that uses XTEA.
If you're wanting to implement an encryption or a cipher system in your project DO NOT USE THIS.

## Documentation

Run the command `cargo doc` in the directory to generate documentation in ./target/doc/

## Installation

To use this crate, add the following to your `Cargo.toml`:

```toml
[dependencies]
extended-tea = "0.0.0"
```

## Example

```rust
use extended_tea::XTEA;
use byteorder::BE;

let input: Box<[u8]> = vec![10u8; 16].into_boxed_slice();

let xtea = XTEA::new([0x1380C5B5, 0x28037DF9, 0x26E314A2, 0xC57684E4]);

let encrypted = {
	let mut output = vec![0u8; input.len()].into_boxed_slice();
	xtea.encipher_u8slice::<BE>(&input, &mut output);
	output
};

let decrypted = {
	let mut output = vec![0u8; input.len()].into_boxed_slice();
	xtea.decipher_u8slice::<BE>(&encrypted, &mut output);
	output
};
assert_eq!(input, decrypted);
```