Crates.io | aes-keywrap-rs |
lib.rs | aes-keywrap-rs |
version | 0.2.0 |
source | src |
created_at | 2020-12-28 13:44:30.643733 |
updated_at | 2020-12-29 01:04:35.317954 |
description | AES Key Wrap for Rust (AES-KW, RFC 3394 / RFC 5649) |
homepage | https://github.com/hwiorn/aes-keywrap-rs |
repository | https://github.com/hwiorn/aes-keywrap-rs |
max_upload_size | |
id | 328273 |
size | 19,801 |
This crate implements the AES KeyWrap(RFC 3394 / RFC 5649) using AES Block function(128/192/256 ECB mode) of Crypto2.
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();
let encrypted_out = aes_wrap_key_with_pad(&kek, &plain).unwrap();
let plain_out = aes_unwrap_key_with_pad(&kek, &encrypted).unwrap();