1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
//! # rustywallet-mnemonic
//!
//! BIP39 mnemonic (seed phrase) generation and management for cryptocurrency wallets.
//!
//! This crate provides functionality to:
//! - Generate random mnemonic phrases (12, 15, 18, 21, or 24 words)
//! - Validate mnemonic phrases (checksum and wordlist)
//! - Derive seeds from mnemonics with optional passphrase
//! - Derive private keys from seeds
//!
//! ## Example
//!
//! ```
//! use rustywallet_mnemonic::prelude::*;
//!
//! // Generate a new 12-word mnemonic
//! let mnemonic = Mnemonic::generate(WordCount::Words12);
//! println!("Generated mnemonic: {}", mnemonic.to_phrase());
//!
//! // Parse an existing mnemonic
//! let phrase = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about";
//! let mnemonic = Mnemonic::from_phrase(phrase).unwrap();
//!
//! // Derive seed with passphrase
//! let seed = mnemonic.to_seed("my-passphrase");
//! println!("Seed: {}", seed.to_hex());
//!
//! // Derive private key
//! let private_key = mnemonic.to_private_key("my-passphrase").unwrap();
//! ```
//!
//! ## BIP39 Specification
//!
//! | Word Count | Entropy Bits | Checksum Bits |
//! |------------|--------------|---------------|
//! | 12 | 128 | 4 |
//! | 15 | 160 | 5 |
//! | 18 | 192 | 6 |
//! | 21 | 224 | 7 |
//! | 24 | 256 | 8 |
//!
//! ## Security
//!
//! - Entropy and seed bytes are zeroized on drop
//! - Debug output is masked to prevent accidental exposure
//! - Uses cryptographically secure random number generation
pub use MnemonicError;
pub use ;
pub use Seed;
pub use Language;