keyphrase/lib.rs
1//!
2//! KeyPhrase generator for the [EARTH Network](https://www.earth.engineering). KeyPhrases are based on [BIP0039](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) mnemonics.
3//!
4//! ## Quickstart
5//!
6//! ```rust
7//! use keyphrase::{KeyPhrase, KeyPhraseType, Language, Seed};
8//!
9//! /// create a new randomly generated keyphrase
10//! let keyphrase = KeyPhrase::new(KeyPhraseType::Words12, Language::English);
11//!
12//! /// get the phrase
13//! let phrase: &str = keyphrase.phrase();
14//! println!("{}", phrase);
15//! // grocery unknown bench gold grant slim assist monster laptop cruise hamster any
16//!
17//! /// get the HD wallet seed
18//! let seed = Seed::new(&keyphrase, "");
19//!
20//! // print the HD wallet seed as a hex string
21//! println!("{:X}", seed);
22//! // F9BF84A82DD338E08FF79096A8E9ABB3C621B61C64F4906C7FC8BD27B63CEA3773B1EA464CDE3B1272364C6F673713FCB07C97357E75C31EF787E9C251BEDB
23//! ```
24//!
25#[macro_use]
26extern crate failure;
27#[macro_use]
28extern crate once_cell;
29
30mod error;
31mod keyphrase;
32mod keyphrase_type;
33mod language;
34mod seed;
35mod util;
36
37mod crypto;
38
39pub use self::keyphrase::KeyPhrase;
40pub use error::ErrorKind;
41pub use keyphrase_type::KeyPhraseType;
42pub use language::Language;
43pub use seed::Seed;
44pub use util::*;