22 releases (9 stable)

2.2.2 Dec 4, 2025
2.2.0 Jun 15, 2025
2.1.0 Oct 6, 2024
2.0.0 Feb 28, 2023
0.1.0 Dec 23, 2016

#13 in #mnemonic

Download history 192218/week @ 2026-04-18 193920/week @ 2026-04-25 201092/week @ 2026-05-02 205219/week @ 2026-05-09 248407/week @ 2026-05-16 250589/week @ 2026-05-23 240087/week @ 2026-05-30 251788/week @ 2026-06-06 244935/week @ 2026-06-13 254059/week @ 2026-06-20 284832/week @ 2026-06-27 246211/week @ 2026-07-04 278851/week @ 2026-07-11 274382/week @ 2026-07-18 310455/week @ 2026-07-25 339057/week @ 2026-08-01

1,243,312 downloads per month
Used in 1,942 crates (338 directly)

CC0 license

330KB
22K SLoC

bip39

A Rust implementation of BIP-39 mnemonic codes.

Word lists (languages)

We support all languages specified in the BIP-39 standard as of writing.

The English language is always loaded and other languages can be loaded using the corresponding feature.

Use the all-languages feature to enable all languages.

  • English (always enabled)
  • Simplified Chinese (chinese-simplified)
  • Traditional Chinese (chinese-traditional)
  • Czech (czech)
  • French (french)
  • Italian (italian)
  • Japanese (japanese)
  • Korean (korean)
  • Portuguese (portuguese)
  • Spanish (spanish)

MSRV

This crate supports Rust v1.41.1 and up and works with no_std.

The bitcoin_hashes range dependency effects the MSRV as follows

  • bitcoin_hashes v0.12: MSRV v1.41.1
  • bitcoin_hashes v0.13: MSRV v1.48.0
  • bitcoin_hashes v0.14: MSRV v1.56.0

When using older version of Rust, you might have to pin the versions of several crates, for an up-to-date list refer to contrib/test.sh:

cargo update --package "bitcoin_hashes" --precise "0.12.0"
cargo update --package "rand" --precise "0.6.0"
cargo update --package "libc" --precise "0.2.151"
cargo update --package "tinyvec" --precise "1.6.0"
cargo update --package "unicode-normalization" --precise "0.1.22"

If you enable the zeroize feature the MSRV becomes 1.51.

Dependencies

~0.6–1.1MB
~24K SLoC