d5122b7f04
In this commit, we publicly export the `word` field as it makes it easier to programmatically interact with the package when attempting to re-derive proper `cipherseed` instances. We also add a new `Index` field as well to provide additional context for programmatic manipulating of seeds.
37 lines
1.2 KiB
Go
37 lines
1.2 KiB
Go
package aezeed
|
|
|
|
import "fmt"
|
|
|
|
var (
|
|
// ErrIncorrectVersion is returned if a seed bares a mismatched
|
|
// external version to that of the package executing the aezeed scheme.
|
|
ErrIncorrectVersion = fmt.Errorf("wrong seed version")
|
|
|
|
// ErrInvalidPass is returned if the user enters an invalid passphrase
|
|
// for a particular enciphered mnemonic.
|
|
ErrInvalidPass = fmt.Errorf("invalid passphrase")
|
|
|
|
// ErrIncorrectMnemonic is returned if we detect that the checksum of
|
|
// the specified mnemonic doesn't match. This indicates the user input
|
|
// the wrong mnemonic.
|
|
ErrIncorrectMnemonic = fmt.Errorf("mnemonic phrase checksum doesn't " +
|
|
"match")
|
|
)
|
|
|
|
// ErrUnknownMnenomicWord is returned when attempting to decipher and
|
|
// enciphered mnemonic, but a word encountered isn't a member of our word list.
|
|
type ErrUnknownMnenomicWord struct {
|
|
// Word is the unknown word in the mnemonic phrase.
|
|
Word string
|
|
|
|
// Index is the index (starting from zero) within the slice of strings
|
|
// that makes up the mnemonic that points to the incorrect word.
|
|
Index uint8
|
|
}
|
|
|
|
// Error returns a human readable string describing the error.
|
|
func (e ErrUnknownMnenomicWord) Error() string {
|
|
return fmt.Sprintf("word %v isn't a part of default word list "+
|
|
"(index=%v)", e.Word, e.Index)
|
|
}
|