go-ethereum/vendor/github.com/tyler-smith/go-bip39
Guillaume Ballet 86806d8b24 Update bip-39 ref and remove ebfe/scard from vendor 2019-04-08 19:16:27 +02:00
..
Gopkg.lock Update bip-39 ref and remove ebfe/scard from vendor 2019-04-08 19:16:27 +02:00
Gopkg.toml Update bip-39 ref and remove ebfe/scard from vendor 2019-04-08 19:16:27 +02:00
LICENSE Update bip-39 ref and remove ebfe/scard from vendor 2019-04-08 19:16:27 +02:00
Makefile Update bip-39 ref and remove ebfe/scard from vendor 2019-04-08 19:16:27 +02:00
README.md Update bip-39 ref and remove ebfe/scard from vendor 2019-04-08 19:16:27 +02:00
bip39.go Update bip-39 ref and remove ebfe/scard from vendor 2019-04-08 19:16:27 +02:00

README.md

go-bip39

Build Status license Documentation Go Report Card GitHub issues

A golang implementation of the BIP0039 spec for mnemonic seeds

Example

package main

import (
  "github.com/tyler-smith/go-bip39"
  "github.com/tyler-smith/go-bip32"
  "fmt"
)

func main(){
  // Generate a mnemonic for memorization or user-friendly seeds
  entropy, _ := bip39.NewEntropy(256)
  mnemonic, _ := bip39.NewMnemonic(entropy)

  // Generate a Bip32 HD wallet for the mnemonic and a user supplied password
  seed := bip39.NewSeed(mnemonic, "Secret Passphrase")

  masterKey, _ := bip32.NewMasterKey(seed)
  publicKey := masterKey.PublicKey()

  // Display mnemonic and keys
  fmt.Println("Mnemonic: ", mnemonic)
  fmt.Println("Master private key: ", masterKey)
  fmt.Println("Master public key: ", publicKey)
}

Credits

Wordlists are from the bip39 spec.

Test vectors are from the standard Python BIP0039 implementation from the Trezor team: https://github.com/trezor/python-mnemonic