Documentation ¶
Index ¶
- Variables
- func NewCosmosKeyring(cdc codec.Codec, opts ...ConfigOpt) (sdk.AccAddress, cosmkeyring.Keyring, error)
- type Backend
- type ConfigOpt
- func WithDefaultKey(v string) ConfigOpt
- func WithKey(opts ...KeyConfigOpt) ConfigOpt
- func WithKeyringAppName(v string) ConfigOpt
- func WithKeyringBackend(v Backend) ConfigOpt
- func WithKeyringDir(v string) ConfigOpt
- func WithNamedKey(name string, opts ...KeyConfigOpt) ConfigOpt
- func WithUseLedger(b bool) ConfigOpt
- type KeyConfigOpt
Constants ¶
This section is empty.
Variables ¶
var ( ErrCosmosKeyringCreationFailed = errors.New("cosmos keyring creation failed") ErrCosmosKeyringImportFailed = errors.New("cosmos keyring unable to import key") ErrDeriveFailed = errors.New("key derivation failed") ErrFailedToApplyConfigOption = errors.New("failed to apply config option") ErrFailedToApplyKeyConfigOption = errors.New("failed to apply a key config option") ErrFilepathIncorrect = errors.New("incorrect filepath") ErrHexFormatError = errors.New("hex format error") ErrIncompatibleOptionsProvided = errors.New("incompatible keyring options provided") ErrInsufficientKeyDetails = errors.New("insufficient cosmos key details provided") ErrKeyIncompatible = errors.New("provided key is incompatible with requested config") ErrKeyRecordNotFound = errors.New("key record not found") ErrPrivkeyConflict = errors.New("privkey conflict") ErrUnexpectedAddress = errors.New("unexpected address") ErrMultipleKeysWithDifferentSecurity = errors.New("key security is different: cannot mix keyring with privkeys") )
Functions ¶
func NewCosmosKeyring ¶
func NewCosmosKeyring(cdc codec.Codec, opts ...ConfigOpt) (sdk.AccAddress, cosmkeyring.Keyring, error)
NewCosmosKeyring creates a new keyring from a variety of options. See ConfigOpt and related options.
Types ¶
type Backend ¶
type Backend string
Backend defines a known keyring backend name.
const ( // BackendTest is a testing backend, no passphrases required. BackendTest Backend = "test" // BackendFile is a backend where keys are stored as encrypted files. BackendFile Backend = "file" // BackendOS is a backend where keys are stored in the OS key chain. Platform specific. BackendOS Backend = "os" )
type ConfigOpt ¶
type ConfigOpt func(c *cosmosKeyringConfig) error
ConfigOpt defines a known cosmos keyring option.
func WithDefaultKey ¶
WithDefaultKey specifies the default key (name or address) to be fetched during keyring init. This key must exist in specified keys.
func WithKey ¶
func WithKey(opts ...KeyConfigOpt) ConfigOpt
WithKey adds an unnamed key into the keyring, based on its individual options.
func WithKeyringAppName ¶
WithKeyringAppName option sets keyring application name (used by Cosmos to separate keyrings).
func WithKeyringBackend ¶
WithKeyringBackend sets the keyring backend. Expected values: test, file, os.
func WithKeyringDir ¶
WithKeyringDir option sets keyring path in the filesystem, useful when keyring backend is `file`.
func WithNamedKey ¶
func WithNamedKey(name string, opts ...KeyConfigOpt) ConfigOpt
WithNamedKey adds a key into the keyring, based on its individual options, with a given name (alias).
func WithUseLedger ¶
WithUseLedger sets the option to use hardware wallet, if available on the system.
type KeyConfigOpt ¶
type KeyConfigOpt func(c *cosmosKeyConfig) error
KeyConfigOpt defines a known cosmos keyring key option.
func WithKeyFrom ¶
func WithKeyFrom(v string) KeyConfigOpt
WithKeyFrom sets the key name to use for signing. Must exist in the provided keyring.
func WithKeyPassphrase ¶
func WithKeyPassphrase(v string) KeyConfigOpt
WithKeyPassphrase sets the passphrase for keyring files. Insecure option, use for testing only. The package will fallback to os.Stdin if this option was not provided, but pass is required.
func WithMnemonic ¶
func WithMnemonic(v string) KeyConfigOpt
WithMnemonic allows to specify a mnemonic pharse as plaintext. Insecure option, use for testing only. The package will create a virtual keyring to derive the keys and meet all the interfaces.
func WithPrivKeyHex ¶
func WithPrivKeyHex(v string) KeyConfigOpt
WithPrivKeyHex allows to specify a private key as plaintext hex. Insecure option, use for testing only. The package will create a virtual keyring holding that key, to meet all the interfaces.