Guide: How to link ledger nano S private key with a validator consensus pubkey

Cosmic Validator
CosmicValidator
Published in
2 min readJul 6, 2019

Just tried this again now and it works:

1. Install Tendermint KMS

  1. sudo apt-get update && sudo apt-get dist-upgrade -y
  2. sudo apt install gcc make libusb-dev libudev-dev libusb-1.0–0-dev pkg-config git curl -y
  3. curl https://sh.rustup.rs -sSf | sh -s — -y
  4. source $HOME/.cargo/env (do again this if new terminal to use command tmkms later)
  5. cargo install tmkms — features=ledgertm

(Autolock OFF in the ledger)

2. udev rules to allow device access

  1. Check if the plugdev group exists by entering the command: cat /etc/group | grep plugdev

2) Add the udev rules:

wget -q -O — https://raw.githubusercontent.com/LedgerHQ/udev-rules/master/add_udev_rules.sh | sudo bash

3. Create a ~/.tmkms/tmkms.toml file with the following content (use an adequate chain_id and put lines in same order/position as image below)

  1. Create .tmkms folder in home directory, and inside this folder the tmkms.toml (substitute “hector” with your specific linux account name)

2) Then do this in the same terminal (if new terminal do first source $HOME/.cargo/env):

tmkms keygen ~/.tmkms/secret_connection.key

tmkms start -c ~/.tmkms/tmkms.toml

--

--