#password #security #master-password

rusterpassword

An implementation of the Master Password algorithm

5 releases

Uses old Rust 2015

0.2.3 Oct 2, 2022
0.2.2 Sep 4, 2018
0.2.1 Jun 2, 2017
0.2.0 Nov 4, 2015
0.1.0 Oct 31, 2015

#2071 in Cryptography

25 downloads per month

Unlicense

11KB
159 lines

crates.io API Docs unlicense

rusterpassword

A Rust implementation of the Spectre / Master Password algorithm.

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

Also includes a C API for calling from other languages.

Usage

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

fn main() {
    sodiumoxide::init();
    let master_key = gen_master_key(SecStr::from("Correct Horse Battery Staple"), "Cosima Niehaus").unwrap();
    let site_seed = gen_site_seed(&master_key, "twitter.com", 5).unwrap();
    let password = gen_site_password(site_seed, TEMPLATES_MAXIMUM);
}

License

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

Dependencies

~16MB
~70K SLoC