#aes-kw #aes-key

no-std rust-aes-keywrap

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

1 unstable release

0.1.0 Oct 13, 2020

#11 in #aes-key

ISC license

13KB
281 lines

AES Key Wrap for Rust

AES-KW is a construction to encrypt secret keys using a master key.

This is a standalone AES-KW (RFC 3394 / RFC 5649) implementation.

It is essentially a 5 round Feistel network using AES as the core function. One half of each AES block is used to encrypt the key, and the second half of the last permutation is used to compute a 64-bit MAC.

It doesn't require nonces, but still allows key reuse.

This is a NIST-blessed construction. Other than that, AES-KW is inefficient and is generally not very useful.

Dependencies

~555KB
~13K SLoC