Enum bip39::MnemonicType
[−]
[src]
pub enum MnemonicType { Type12Words, Type15Words, Type18Words, Type21Words, Type24Words, }
Determines the number of words that will be present in a Mnemonic
phrase
Also directly affects the amount of entropy that will be used to create a Mnemonic
,
and therefore the cryptographic strength of the HD wallet keys/addresses that can be derived from
it using the Seed
.
For example, a 12 word mnemonic phrase is essentially a friendly representation of a 128-bit key, while a 24 word mnemonic phrase is essentially a 256-bit key.
If you know you want a specific phrase length, you can use the enum variant directly, for example
MnemonicType::Type12Words
.
You can also get a MnemonicType
that corresponds to one of the standard BIP39 key sizes by
passing arbitrary usize
values:
use bip39::{MnemonicType}; let mnemonic_type = MnemonicType::for_key_size(128).unwrap();
Variants
Type12Words
Type15Words
Type18Words
Type21Words
Type24Words
Methods
impl MnemonicType
[src]
fn for_word_count(size: usize) -> Result<MnemonicType, Error>
[src]
Get a MnemonicType
for a mnemonic phrase with a specific number of words
Specifying a word count not provided for by the BIP39 standard will return an Error
of kind ErrorKind::InvalidWordLength
.
Example
use bip39::{MnemonicType}; let mnemonic_type = MnemonicType::for_word_count(12).unwrap();
fn for_key_size(size: usize) -> Result<MnemonicType, Error>
[src]
Get a MnemonicType
for a mnemonic phrase representing the given key size as bits
Specifying a key size not provided for by the BIP39 standard will return an Error
of kind ErrorKind::InvalidKeysize
.
Example
use bip39::{MnemonicType}; let mnemonic_type = MnemonicType::for_key_size(128).unwrap();
fn for_phrase<S>(phrase: S) -> Result<MnemonicType, Error> where
S: Into<String>,
[src]
S: Into<String>,
Get a MnemonicType
for an existing mnemonic phrase
This can be used when you need information about a mnemonic phrase based on the number of
words, for example you can get the entropy value using MnemonicType::entropy_bits
.
Specifying a phrase that does not match one of the standard BIP39 phrase lengths will return
an Error
of kind ErrorKind::InvalidWordLength
. The phrase will not be validated in any
other way.
Example
use bip39::{MnemonicType}; let test_mnemonic = "park remain person kitchen mule spell knee armed position rail grid ankle"; let mnemonic_type = MnemonicType::for_phrase(test_mnemonic).unwrap(); let entropy_bits = mnemonic_type.entropy_bits();
fn total_bits(&self) -> usize
[src]
Return the number of entropy+checksum bits
Example
use bip39::{MnemonicType}; let test_mnemonic = "park remain person kitchen mule spell knee armed position rail grid ankle"; let mnemonic_type = MnemonicType::for_phrase(test_mnemonic).unwrap(); let total_bits = mnemonic_type.total_bits();
fn entropy_bits(&self) -> usize
[src]
Return the number of entropy bits
Example
use bip39::{MnemonicType}; let test_mnemonic = "park remain person kitchen mule spell knee armed position rail grid ankle"; let mnemonic_type = MnemonicType::for_phrase(test_mnemonic).unwrap(); let entropy_bits = mnemonic_type.entropy_bits();
fn checksum_bits(&self) -> usize
[src]
Return the number of checksum bits
Example
use bip39::{MnemonicType}; let test_mnemonic = "park remain person kitchen mule spell knee armed position rail grid ankle"; let mnemonic_type = MnemonicType::for_phrase(test_mnemonic).unwrap(); let checksum_bits = mnemonic_type.checksum_bits();
fn word_count(&self) -> usize
[src]
Return the number of words
Example
use bip39::{MnemonicType}; let mnemonic_type = MnemonicType::Type12Words; let word_count = mnemonic_type.word_count();
Trait Implementations
impl Debug for MnemonicType
[src]
impl Copy for MnemonicType
[src]
impl Clone for MnemonicType
[src]
fn clone(&self) -> MnemonicType
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Default for MnemonicType
[src]
fn default() -> MnemonicType
[src]
Returns the "default value" for a type. Read more