3

When you create a Metamask account, you are asked to enter a password and then you are given a seed phrase with 12 random words.

Is it possible to define your own 12-word seed phrase?

__

Update:

Is there a way to define a seed phrase with my own chosen words?
(for example, words from a different language or any other thing that could be easier for a user to remember or codify)

3 Answers 3

2

Just to add to Rob's answer:

and then you are given a seed phrase with 12 random words

The words aren't completely random. They are selected from a list of 2048 words - which themselves have been specifically chosen to reduce the likelihood of confusing two or more of them. (e.g. When trying to remember them, or when salvaging a wallet because your dog ate two of them...)

Given that the context of your question is Metamask, the wordlist (it's the same for any tool that uses BIP-39... ) is used by Metamask by way of the bip39 NPM package, the wordlist for which is here: https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt

Is it possible to define your own 12-word seed phrase?

Or: Can I just pick 12 words from the wordlist and remove the need to trust a tool?

No.

Not all combinations of 12 words from the list are valid.

What you can do is choose 12 words from the list, then feed them into the tool that Rob pointed to. If it's not a valid combination a big orange warning message will appear.

(There are 204812 combinations, but only 204811 * 2048/(11-4) are valid - some combinations are lost due to the need to checksum.)


Update:

With regards to different languages, you have the choice of the following wordlists:

However, you can't mix words from the different lists: all 12 words have to be in the same language.

3
  • thanks Richard and Rob! From your answers, I guess it's not possible to choose words outside of the given list. Could you pls confirm?
    – ludovico
    Mar 17, 2021 at 18:53
  • 1
    That's correct - only words in that list are valid :-) Mar 17, 2021 at 18:56
  • Updated with information about different languages. Mar 17, 2021 at 19:01
4

Use Ian Coleman's BIP-39 tool. https://github.com/iancoleman/bip39

Technically, it might be tricky to make up your own random phrase because the words have to be from a certain set. The tool will generate random phrases for you.

In case you are concerned, the online version runs entirely in your browser and doesn't save anything. If you are especially security-conscious, you can download the standalone offline version from GitHub and run it on an air-gapped computer.

Once you have a phrase you are happy with, import it into MetaMask.

Hope it helps.

2
  • You don't need to select Ethereum, the word list is the same for all networks using BIP-39. Selecting the coin is only used for deriving the private keys etc.
    – Morten
    Mar 17, 2021 at 0:32
  • @Morten You're right. Fixed. Mar 17, 2021 at 2:12
0

The last word in the phrase serves as a checksum.

So what you can do is pick the first 11 words, and then for the last word you will have to choose from a list of valid checksum words which you can generate using the Python script found at https://github.com/bharathrao/bip39check.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.