#block-cipher #tea #extended #read-stream #slice #u8 #xtea

extended-tea

XTEA(扩展TEA),一种为了纠正TEA的弱点而设计的块加密算法

3个不稳定版本

0.1.1 2021年12月30日
0.1.0 2021年12月30日
0.0.0 2021年12月27日

#1811 in 加密学

每月25次下载
2 crates 中使用

MIT 许可证

15KB
179

extended-tea

Build API Crate dependency status

此crate提供了一个Rust实现的XTEA加密算法。

此crate还提供了加密和解密 u8 切片和Read流的便利方法。

有关XTEA加密算法的更多信息,请参阅 维基百科

注意

仅当您正在开发使用XTEA的现有应用时才应使用此crate。如果您想在项目中实现加密或密码系统,请勿使用此crate。

安装

要使用此crate,请在您的 Cargo.toml 中添加以下内容

[dependencies]
extended-tea = "0.1.1"

示例

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);

依赖项

~120KB