crates.io API Docs Build Status unlicense

rusterpassword

A [Rust] implementation of the [Master Password algorithm], created for [freepass].

Uses [secstr] secure strings and [libsodium] through [sodiumoxide]'s underlying libsodium-sys.

Also includes a C API for calling from other languages.

Usage

```rust extern crate secstr; extern crate rusterpassword; extern crate sodiumoxide;

use sodiumoxide; use secstr::; use rusterpassword::;

fn main() { sodiumoxide::init(); let masterkey = genmasterkey(SecStr::from("Correct Horse Battery Staple"), "Cosima Niehaus").unwrap(); let siteseed = gensiteseed(&masterkey, "twitter.com", 5).unwrap(); let password = gensitepassword(siteseed, TEMPLATES_MAXIMUM); } ```

Contributing

Please feel free to submit pull requests!

By participating in this project you agree to follow the Contributor Code of Conduct.

The list of contributors is available on GitHub.

License

This is free and unencumbered software released into the public domain.
For more information, please refer to the UNLICENSE file or unlicense.org.