func FromKey(key []byte) (string, error) {
	if len(key) != keyLenBytes {
		return "", errWrongKeyLen
	}
	chk := checksum(key)
	uint11Array := toUint11Array(key)
	words := applyWords(uint11Array, wordlist)
	return fmt.Sprintf("%s %s", strings.Join(words, " "), chk), nil
}
FromKey converts a 32-byte key into a 25 word mnemonic. The generated
mnemonic includes a checksum. Each word in the mnemonic represents 11 bits
of data, and the last 11 bits are reserved for the checksum.
package mnemonic
import (
	"crypto/sha512"
	"fmt"
	"strings"
)
const (
	bitsPerWord      = 11
	checksumLenBits  = 11
	keyLenBytes      = 32
	mnemonicLenWords = 25
	paddingZeros     = bitsPerWord - ((keyLenBytes * 8) % bitsPerWord)
)
var sepStr = " "
var emptyByte = byte(0)
func init() {
	if mnemonicLenWords*bitsPerWord-checksumLenBits != keyLenBytes*8+paddingZeros {
		panic("cannot initialize passphrase library: invalid constants")
	}
}