#aes-key #aes #aes-kw #keywrap #crypto #aes-ecb

nightly aes-keywrap-rs

Rust的AES Key Wrap (AES-KW, RFC 3394 / RFC 5649)

2个不稳定版本

0.2.0 2020年12月29日
0.1.0 2020年12月28日

#7 in #aes-key

每月 26 次下载

MIT 许可证

19KB
312

Rust的AES Key Wrap

此包通过使用Crypto2的AES块函数(128/192/256 ECB模式)实现了AES KeyWrap(RFC 3394 / RFC 5649)。

使用方法

Keywrap

let kek = hex::decode("000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F").unwrap();
let encrypted = hex::decode("A8F9BC1612C68B3FF6E6F4FBE30E71E4769C8B80A32CB8958CD5D17D6B254DA1").unwrap();
let plain = hex::decode("00112233445566778899AABBCCDDEEFF0001020304050607").unwrap();
let encrypted_out = aes_wrap_key(&kek, &plain).unwrap();
let plain_out = aes_unwrap_key(&kek, &encrypted).unwrap();

带填充的Keywrap(RFC5649)

let encrypted_out = aes_wrap_key_with_pad(&kek, &plain).unwrap();
let plain_out = aes_unwrap_key_with_pad(&kek, &encrypted).unwrap();

参考资料

许可证

依赖关系

~600KB
~12K SLoC