Electrum Mnemonics (electrum v2 and greater)


Install
npm install electrum-mnemonic
Usage
- Generate a mnemonic (English only for now)
const mn = require('electrum-mnemonic')
console.log(mn.generateMnemonic())
console.log(mn.generateMnemonic({ prefix: mn.PREFIXES.segwit }))
console.log(mn.generateMnemonic({ prefix: mn.PREFIXES.standard }))
console.log(mn.generateMnemonic({ prefix: mn.PREFIXES['2fa'] }))
console.log(mn.generateMnemonic({ prefix: mn.PREFIXES['2fa-segwit'] }))
- Validate mnemonic phrase (default prefix: segwit)
const mn = require('electrum-mnemonic')
const segwitPhrase = mn.generateMnemonic();
const standardPhrase = mn.generateMnemonic({ prefix: mn.PREFIXES.standard });
console.log(mn.validateMnemonic(segwitPhrase, mn.PREFIXES.segwit));
console.log(mn.validateMnemonic(standardPhrase, mn.PREFIXES.standard));
- Convert mnemonic into 64 byte seed (for bip32)
const mn = require('electrum-mnemonic')
const phrase = mn.generateMnemonic()
const seed = mn.mnemonicToSeedSync(phrase, { passphrase: 'extrapassword' })
console.log(seed)
;(async () => {
const seed2 = await mn.mnemonicToSeed(phrase)
console.log(seed2)
})()
- mnemonicToSeed prefix must match the prefix used to generate (default: segwit)
const mn = require('electrum-mnemonic')
const phrase = mn.generateMnemonic({ prefix: mn.PREFIXES.standard })
const seed = mn.mnemonicToSeedSync(phrase, { prefix: mn.PREFIXES.standard })
console.log(seed)
const segwitPhrase = mn.generateMnemonic()
const segwitSeed = mn.mnemonicToSeedSync(phrase)
console.log(segwitSeed)
- Skip valid version prefix check
const mn = require('electrum-mnemonic')
const seed = mn.mnemonicToSeedSync('abc', { skipCheck: true })
console.log(seed)
- Custom prefixes for checking
const mn = require('electrum-mnemonic')
const phrase = mn.generateMnemonic({ prefix: 'fed' })
const seed = mn.mnemonicToSeedSync(phrase, { prefix: 'fed' })
console.log(seed)