Enum bdk::keys::bip39::MnemonicType[]

pub enum MnemonicType {
    Words12,
    Words15,
    Words18,
    Words21,
    Words24,
}
This is supported on crate feature keys-bip39 only.
Expand description

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::Words12.

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

Words12
Words15
Words18
Words21
Words24

Implementations

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();

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();

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();

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();

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();

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();

Return the number of words

Example

use bip39::{MnemonicType};

let mnemonic_type = MnemonicType::Words12;

let word_count = mnemonic_type.word_count();

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

Converts the given value to a String. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.