Crate keybob[−][src]
Utility crate that creates cryptographic keys
This crate provides an easy API to create and work with cryptographic keys. For now only Aes128 (32 byte) and Aes256 (64 byte) keys are supported but more can be added easily.
To create a key, you can either generate one from scratch or use a user provided password/ name (as salt) combination.
extern crate keybob; use keybob::{Key, KeyType}; let key = Key::new(KeyType::Aes256);
Additionally, all keybob keys are easily serialized with serde
extern crate serde_json; extern crate keybob; use keybob::{Key, KeyType}; let k = Key::new(KeyType::Aes128); let ser = serde_json::to_string(&k).unwrap(); let de: Key = serde_json::from_str(&ser).unwrap(); assert_eq!(k, de);
Key::from_pw uses the pbkdf2 key derivation function with
a Hmac<Blake2b> hash to expand a user password/name (salt) into
a key object of a certain type.
To then use the key, use as_slice() or as_mut_slice() on the
key object.
For more examples, check the tests directory
Structs
| Key | A crytographic key of a certain type |
Enums
| KeyType | The type of key that should be created |