fastpbkdf2

Crates.iofastpbkdf2
lib.rsfastpbkdf2
version0.1.0
sourcesrc
created_at2015-10-11 17:35:04.418919
updated_at2015-12-11 23:58:51.47213
descriptionA rust binding for fastpbkdf2. This is a PBKDF2 with HMAC-SHA1, HMAC-SHA256 and HMAC-SHA512 and is faster than other implementations.
homepagehttps://github.com/ctz/rust-fastpbkdf2
repositoryhttps://github.com/ctz/rust-fastpbkdf2
max_upload_size
id3196
size65,245
Joe Birr-Pixton (ctz)

documentation

README

rust-fastpbkdf2

This is a rust binding for fastpbkdf2.

Build Status

Interface

pub fn pbkdf2_hmac_sha1(password: &[u8], salt: &[u8], iterations: u32, out: &mut[u8]);
pub fn pbkdf2_hmac_sha256(password: &[u8], salt: &[u8], iterations: u32, out: &mut[u8]);
pub fn pbkdf2_hmac_sha512(password: &[u8], salt: &[u8], iterations: u32, out: &mut[u8]);

Performance

Hash rust-fastpbkdf2 ring rust-crypto
SHA1 380ms 5299ms (13.9x) 41015ms (108x)
SHA256 855ms 8244ms (9.6x) 71521ms (84x)
SHA512 1329ms 15172ms (11.4x) 81378ms (61x)

On Intel i3-2100T CPU @ 2.50GHz in 64-bit mode, 220 iterations.

Building and testing

You'll need OpenSSL for fastpbkdf2. cargo build builds, cargo test runs tests.

License

CC0.

Author

Joseph Birr-Pixton jpixton@gmail.com

Commit count: 14

cargo fmt