Keys allows you to manage your local tendermint keystore (wallets) for iris.

Available Commands



Add an encrypted private key (either newly generated or recovered), encrypt it, and save to <name> file


Delete the given keys


Export private keys


Import private keys into the local keybase


List all keys


Migrate keys from amino to proto serialization format


Compute the bip39 mnemonic for some input entropy


Parse address from hex to bech32 and vice versa


Retrieve key information by name or address


Rename an existing key


**UNSAFE** Export an Ethereum private key


**UNSAFE** Import Ethereum private keys into the local keybase

uptickd keys add

Derive a new private key and encrypt to disk.

uptickd keys add <name> [flags]


Name, shorthandTypeDefaultRequiredDescription



List of key names stored in keyring to construct a public legacy multisig key




K out of N required signatures. For use in conjunction with --multisig (default 1)


Keys passed to --multisig are taken in the order they're supplied



Parse a public key in JSON format and saves key info to <name> file.


Interactively prompt user for BIP39 passphrase and mnemonic


Store a local reference to a private key on a Ledger device


Provide seed phrase to recover existing key instead of creating


Don't print out seed phrase (if others are watching the terminal)


Perform action, but don't add key to local keystore



Manual HD Path derivation (overrides BIP44 config)




coin type number for HD derivation (default 60)



Account number for HD derivation (less than equal 2147483647)



Address index number for HD derivation (less than equal 2147483647)




Key signing algorithm to generate keys for (default "eth_secp256k1")

Create a new key

uptickd keys add MyKey


Importantwrite the seed phrase in a safe place! It is the only way to recover your account if you ever forget your password.

Recover an existing key from seed phrase

If you forget your password or lose your key, or you wanna use your key in another place, you can recover your key by your seed phrase.

uptickd keys add MyKey --recover

You'll be asked to enter the seed phrase. Then you get your key back.

> Enter your bip39 mnemonic

Create a multisig key

The following example creates a multisig key with 3 sub-keys, and specify the minimum number of signatures as 2. The tx could be broadcast only when the number of signatures is greater than or equal to 2.

uptickd keys add <multisig-keyname> --multisig-threshold=2 --multisig=<signer-keyname-1>,<signer-keyname-2>,<signer-keyname-3>


<signer-keyname> can be the type of "local/offline/ledger", but not "multi" type.If you don't have all the permission of sub-keys, you can ask for the pubkeys to create the offline keys first, then you will be able to create the multisig key.Offline key can be created by "uptickd keys add --pubkey".

How to use multisig key to sign and broadcast a transaction, please refer to multisign

uptickd keys delete

Delete a local key by the given name.

uptickd keys delete <name>... [flags]


Name, shorthandDefaultDescriptionRequired

--force, -f


Remove the key unconditionally without asking for the passphrase. Deprecated

--yes, -y


Skip confirmation prompt when deleting offline or ledger key references

--help, -h


help for delete

Delete a local key

uptickd keys delete MyKey

uptickd keys export

Export the keystore of a key to a json file

uptickd keys export <name> [flags]

Export keystore

uptickd keys export Mykey --output-file=<path-to-keystore>

uptickd keys import

Import a ASCII armored private key into the local keybase.

Import a ASCII armored private key

uptickd keys import <name> <keyfile> [flags]

uptickd keys list

List all the keys stored by this key manager along with their associated name, type, address and pubkey.Flags:

Name, shorthandDefaultDescriptionRequired


List names only

List all keys

uptickd keys list

uptickd keys migrate

Migrate key information from the legacy (db-based) Keybase to the new keyring-based Keybase.


Name, shorthandDefaultDescriptionRequired


Run migration without actually persisting any changes to the new Keybase

Migrate key information

uptickd keys migrate [flags]

uptickd keys mnemonic

Create a bip39 mnemonic, sometimes called a seed phrase, by reading from the system entropy. To pass your own entropy, use unsafe-entropy mode.

uptickd keys mnemonic [flags]


Name, shorthandDefaultDescriptionRequired


Prompt the user to supply their own entropy, instead of relying on the system

Create a bip39 mnemonic

uptickd keys mnemonic

You'll get a bip39 mnemonic with 24 words, e.g.:

garment depart real arrow web impose place roast empty execute client lobster protect want identify upper trouble program seek ranch crumble distance gather twelve

uptickd keys parse

Convert and print to stdout key addresses and fingerprints from hexadecimal into bech32 cosmos prefixed format and vice versa.

Convert and print to stdout key addresses and fingerprints

uptickd keys parse <hex-or-bech32-address> [flags]

uptickd keys show

Get details of a local key.

uptickd keys show [name_or_address] [flags]


Name, shorthandDefaultDescriptionRequired



Output the address only (overrides --output)



The Bech32 prefix encoding for a key (acc/val/cons)



Output the address in a ledger device



K out of N required signatures



Output the public key only (overrides --output)

Get details of a local key

uptickd keys show MyKey

The following infos will be shown:

- address: uptick1pw0lu7sk2tjadp68aas4xhjp4uh67e26caqv7v
  name: MyKey
  pubkey: '{"@type":"/ethermint.crypto.v1.ethsecp256k1.PubKey","key":"A0NpxhHn0V4VfdBI2VxLQiH5zsUvu48umNKUtpALyia3"}'
  type: local

Get validator operator address

If an address has been bonded to be a validator operator (which the address you used to create a validator), then you can use --bech val to get the operator's address prefixed by iva and the pubkey prefixed by ivp:

uptickd keys show MyKey --bech val

Example Output:

- address: uptickvaloper1pw0lu7sk2tjadp68aas4xhjp4uh67e26t94cjq
  name: MyKey
  pubkey: '{"@type":"/ethermint.crypto.v1.ethsecp256k1.PubKey","key":"A0NpxhHn0V4VfdBI2VxLQiH5zsUvu48umNKUtpALyia3"}'
  type: local

Last updated