keys

The keys module allows you to manage your local tendermint keystore ("wallets") for the juno network.

Available Commands

Name
Description

Add an encrypted private key (either newly generated or recovered), encrypt it, and save to disk

Delete the given key

Export private keys

Import private keys into the local keystore

List all keys

Compute the bip39 mnemonic for some input entropy

Parse address from hex to bech32 and vice versa

Retrieve key information by name or address

junod keys add

Derive a new private key and encrypt to disk.

junod keys add <key-name> [flags]

Flags:

Name, shorthand
Default
Description
Required

--multisig

Construct and store a multisig public key

--multisig-threshold

1

K out of N required signatures

--nosort

false

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

--pubkey

Parse a public key in bech32 format and save it to disk

--interactive

false

Interactively prompt user for BIP39 passphrase and mnemonic

--ledger

false

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

--recover

false

Provide seed phrase to recover existing key instead of creating

--no-backup

false

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

--dry-run

false

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

--hd-path

Manual HD Path derivation (overrides BIP44 config)

--coin-type

118

coin type number for HD derivation

--account

0

Account number for HD derivation

--index

0

Address index number for HD derivation

--algo

secp256k

Key signing algorithm to generate keys for

Create a new key

The following example will create a key in the local keystore named MyKey :

Enter and repeat the password, at least 8 characters, then you will get a new key.

Recover an existing key from seed phrase

If you forget your password or lose your key, or you would like to use your key in another place, you can recover your key by using the --recover flag.

The following example will recover a key with the seed phrase and store it in the local keystore with the name MyKey:

You'll be asked to enter and repeat the new password for your key, and enter the seed phrase. Then you get your key back.

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 transaction could be broadcast only when the number of signatures is greater than or equal to 2.

TIP

<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 pubkey's to create the offline keys first, then you will be able to create the multisig key.

Offline key can be created by junod keys add --pubkey.

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

junod keys delete

Delete a local key by the given name.

Flags:

Name, shorthand
Default
Description
Required

--force, -f

false

Remove the key unconditionally without asking for the passphrase

--yes, -y

false

Skip confirmation prompt when deleting offline or ledger key references

Delete a local key

The following example will delete the key named MyKey from the local keystore:

junod keys export

Export the keystore of a key to stdout:

Export keystore

The following example will export the key named MyKey to stdout:

junod keys import

Import a ASCII armored private key into the local keybase.

Import a ASCII armored private key

The following example will import the private keys from key-to-import.json and store it in the local keystore with the name MyKey

junod keys list

List all the keys from the local keystore that have been stored by this key manager, along with their associated name, type, address and pubkey.

Flags:

Name, shorthand
Default
Description
Required

--list-name

List names only

List all keys

The following example will list all keys in the local keystore managed by the junod key manager:

junod 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.

Flags:

Name, shorthand
Default
Description
Required

--unsafe-entropy

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

Create a bip39 mnemonic

The following example will create a new bip39 seed phrase:

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

junod keys parse

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

Convert and print to stdout key addresses from hex fingerprint

The following example will convert a given hex fingerprint to a range of bep32 human readable address formats:

Returns:

Convert and print to stdout hex fingerprint from bep32 address:

Returns:

junod keys show

Get details of a local key.

Flags:

Name, shorthand
Default
Description
Required

--address

false

Output the address only (overrides --output)

--bech

acc

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

--device

false

Output the address in a ledger device

--multisig-threshold

1

K out of N required signatures

--pubkey

false

Output the public key only (overrides --output)

Get details of a local key

The following example will return the details for the key named MyKey :

The following infos will be shown:

#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:

Example Output:

Last updated

Was this helpful?