Ledger Nano with CLI: Support and Usage
This tutorial will show you how to utilize a Ledger device with the Cosmos Ledger app and cored
CLI
The use of a hardware wallet for storing crypto keys significantly enhances the security of your digital assets. The Ledger device functions as a secure enclave that contains the seed and private keys, and the signing process for transactions occurs entirely within the device ensuring that no private data is ever transmitted externally.
::: warning DISCLAIMER
Since Ledger limits HD paths, CORE --coin-type=990
is currently not supported, but we will use ATOM --coin-type=118
(path m/44/118), which will also work for us.
:::
Prerequisites
-
Set up Ledger Live on your machine.
-
The Cosmos(ATOM) application must be installed on your Ledger device, for more information click here. (Make sure that Cosmos(ATOM) app version is v2.34.12 or above)
-
cored
(Coreum CLI) installed on your local machine (install cored binary version v1.0.0 or above)
Instructions
-
Connect your Ledger device and unlock it
-
Open Cosmos(ATOM) app on you Ledger device
-
Set up an account in
cored
using your Ledger key.
::: tip NOTE:
The instructions provided will generate private keys on your Ledger device using the cored
tool in Coreum network and keep references to them saved locally. However, the actual keys will be exclusively stored within the Ledger device.
:::
#cored keys add [name] --chain-id=[chain ID] --keyring-backend=[os|file|test] --ledger --coin-type=[coin type]
cored keys add ledger-1 --chain-id=coreum-testnet-1 --ledger --coin-type=118
::: tip NOTE:
- You can use the
--keyring-backend
flag to increase the security of your keys. - If you want to target other network than testnet, replace it with values at network variables page :::
#cored keys add [name] --chain-id=[chain ID] --keyring-backend=[os|file|test] --ledger --coin-type=[coin type]
cored keys add ledger-2 --chain-id=coreum-testnet-1 --keyring-backend=test --ledger --coin-type=118
- Verify your address
Execute this command to display your address on your Ledger device. Use the name
that you assigned to your Ledger key.
::: tip NOTE: Before executing commands, make sure to unlock your device using the PIN and open the Cosmos app. :::
cored keys show ledger-1 -d --chain-id=coreum-testnet-1
# Confirm that the address shown on your device matches the one displayed when you added the key.
-
Fund your account address
- Navigate faucet page designed specifically for this purpose.
- On the faucet page, you will find a designated section for requesting testnet funds.
- Enter the wallet address generated earlier into the
wallet address
field. - Click on the
Request Funds
button to initiate the request for testnet funds.
By following these steps, you can easily navigate to the faucet page, enter your wallet address, and request the desired testnet funds for your account. This process allows you to obtain the necessary funds to perform transactions and test the functionality of the network.
- Sign a transaction
You are all set to begin authorizing and transmitting transactions. To send a transaction with cored
, use the tx bank send
command.
cored tx bank send --help
# output:
# cored tx bank send [from_key_or_address] [to_address] [amount] [flags]
Full command should look like this:
#cored tx bank send <keyName> <destinationAddress> <amount><denom> <flags>
cored tx bank send ledger-1 tescore1snn05vrzvnwy7t0g00rr7hva63hmwxuuv7nrj0 1000000utestcore --chain-id=coreum-testnet-1 --node=https://full-node.testnet-1.coreum.dev:26657 --keyring-backend=os --ledger
# ledger-1 is your local account name, which can be replaced by an address.
# 1000000utestcore is equal to 1testcore
Ensure that you respond with Y
when prompted to confirm the transaction before signing.
Following that, you will receive a prompt on your Ledger device to review and authorize the transaction. It is essential to carefully examine the transaction JSON displayed on the screen. Take your time to scroll through each field and message. Scroll down for further information about the data fields of a standard transaction object.
Congratulations! You have sent your first transaction using Ledger and cored
CLI!
Instructions to Ledger Nano + Keplr
::: tip NOTE: Before proceeding with this section, make sure to install the Cosmos app on your Ledger Nano device. :::
-
Connect your Ledger device to your computer, enter the PIN to unlock it, and open the Cosmos app.
-
Install the Keplr browser extension
-
Click the Keplr extension icon, then choose
Connect Hardware Wallet
from the options. -
Ensure that your Ledger device is unlocked and the Cosmos app is open. Then, follow the instructions provided in the Keplr pop-up.
-
Connect to the Coreum Chain to add the Coreum account. :::details OPTIONAL Way to add
Coreum Mainnet
chain to theKeplr
extension:- Navigate to Add Chains to Keplr.
- In the search field, enter
Coreum
. - From the search results, locate
Coreum
and click theAdd to Keplr
button. - A transaction prompt will appear asking you to approve the
Add Coreum to Keplr
transaction. :::
-
Click the
Connect to coreum-testnet-1
button to establish a connection with the Coreum testnet chain.This action will also prompt you to approve the request to
Add Coreum Testnet 1 to Keplr
.:::warning TIP To establish a connection with various networks like Mainnet, Testnet, or Devnet, you can initiate the connection by clicking on the corresponding network buttons
listed on Coreum Docs page. :::
-
By default, the Coreum Chain may not be visible. To change this check the
DETAILS
: :::details DETAILS- Open the Keplr extension.
- Select the
Manage Chain Visibility
option from the burger menu located at the top left corner. - In the
Search networks
field, typeCoreum
to find the Coreum testnet. - Choose the
Coreum Testnet 1
option. - Finally, click the
Save
button to apply the changes and make the Coreum Chain visible in the Keplr extension.
By following these steps, you can easily connect to the Coreum testnet chain in Keplr and ensure that the Coreum Chain is visible within the extension for seamless interaction. :::
-
To fund the test account:
- Start by clicking the
Deposit
button. - Next, click the
Copy
button located next to the address of theCoreum Testnet 1
. - Open the faucet and paste the copied address into the designated address field.
- Finally, click the
Request Funds
button to initiate the request for funds.
- Start by clicking the
-
Now we can send the funds on
Coreum
testnet Chain:- In Keplr extension - click on the
TESTCORE
asset to select it. - On the
Send
page, enter the destination address (e.g.,testcore1hnr7882vkpg3rurqgva09pu329qq8f3c3phmwq
) and specify the amount you wish to send. - Once you have entered the necessary details, approve the transaction by using your Ledger device.
- After approving the transaction, verify that the balance has been successfully updated to reflect the changes.
- In Keplr extension - click on the
::: tip NOTE: Whenever you initiate a transaction, you will be required to confirm it on your Ledger device. The Keplr interface will provide the necessary prompts for confirmation. :::
Great! You have successfully set up Keplr with your Ledger Nano. For more comprehensive details, you can refer to the Ledger support page.