Crate message_verifier [] [src]

Message Verifier library compatible with Rails' MessageVerifier and MessageEncryptor.

A Small Example

Please refer to the README and repo for more examples.

 extern crate message_verifier;

 use message_verifier::{Verifier, Encryptor, DerivedKeyParams};

 fn main() {
     let key_base = "helloworld";
     let salt = "test salt";
     let sign_salt = "test signed salt";

     let verifier = Verifier::new(key_base);

     let dkp = DerivedKeyParams::default();
     let encryptor = Encryptor::new(key_base, salt, sign_salt, dkp).unwrap();

     let message = "{\"key\":\"value\"}";

     println!("{}", verifier.generate(message));
     println!("{}", encryptor.encrypt_and_sign(message).expect("Encryptor failed"));
}

Structs

DerivedKeyParams

Key derivation parameters for PBKDF2 function.

Encryptor

Message Encryptor struct; similiar to ActiveSupport::MessageEncryptor

Error

The Error type.

Verifier

Message Verifier struct; similiar to ActiveSupport::MessageVerifier.

Enums

EncryptorCipher

Encryption cipher options. Only AES in CBC mode with 256, 192 or 128 bits is supported.

ErrorKind

The kind of an error.

Traits

ResultExt

Additional methods for Result, for easy interaction with this crate.

Functions

create_derived_keys

Create one or more PBKDF2 derived keys using a secret, some key parameters and one or more salts.

Type Definitions

Result

Convenient wrapper around std::Result.