How to use Hive Ledger Wallet

in #engrave3 years ago (edited)

Introduction

Hardware wallets are considered to be the most secure way to keep your crypto assets. From now on, Ledger Devices (S/S+/X) can be used to protect your Hive account. This guide will help you protecting your Hive account with keys derived on your Ledger device and treat is as a cold wallet. This is the ultimate protection for your account.

Quickly about Hive

Hive is different than most blockchains. It has two native assets: HIVE and HBD (Hive Backed Dollar) and usernames instead of public addresses. Those accounts have different keys associated with different roles (owner, active, posting and memo). Every role can contain different key. To ultimately protect your Hive account it is recommended to replace your Owner key with the one derived from your device - this will protect you from leaking your private key by mistake.

Requirements

Before you start, make sure you have

  • Initialized Ledger Device with newest firmware
  • Hive application installed on your device

Install Hive App

  1. Open the Manager in Ledger Live application
  2. Connect and unlock your Ledger Device
  3. If asked, follow the onscreen instructions and Allow Ledger Manager.
  4. Find Hive in the app catalog.
  5. Click the Install button and wait for application to be sucesfully installed
  6. Close Ledger Live

Get an account

If you already have Hive account, you can skip this part.

Hive accounts are not free - they need to be created by another user and it costs 3 HIVE (or equivalent in Resource Credits which are proportional to staked Hive aka Hive Power).

There are multiple providers of Hive accounts. Most of them requires some sort of validation (i.e phone or email) and some can utilize different crypto assets (like BTC) to pay the fee.

Visit and choose what fits you best:

https://signup.hive.io

Account discovery - how to find accounts associated with your device

Hive Ledger Wallet will automatically discover all accounts associated with your device everytime you will try using it. The process is very simple, you just need to authorize access to your device.

  1. Connect your device, unlock and open Hive application.

  2. Visit https://hiveledger.io and click Full access with Ledger Nano S/X card

  3. Make sure you have your Ledger unlocked and Hive application opened. Click "Connect" .

  4. Select your device from a drop down. This popup may not appear later on if you connect and authorize your device.

  5. Wait for the wallet to discover accounts associated with your device (if any). This might take few seconds.

  6. If you use Hive Ledger Wallet for the first time, you will see another screen, with the information that no account associated with your device was found. In such case you need to associate your account as descrived below.

How to associate your account with Ledger device

If you already have your Hive username, you can use your Ledger device to ultimately protect it by changing all your keys to the ones derived from your device.

In the example below, we will associate existing account called test.ledger with the device. You will need current owner private key in Hive supported WIF format.

  1. Connect your device, unlock and open Hive application.

  2. Click Associate existing account card to start the process.

  3. Click Request new key to find new, unused public key that could be used to replace your current owner key.

  4. Confirm the key on your device. Navigate using left and right buttons to inspect the key. Make sure it's the same that in your terminal




  5. Confirm public key by pressing both buttons on "Approve" screen.

  6. Click continue to start the second step.

  7. Fill your username and current private owner key in WIF format.

  8. Click "Continue" to start the last step

  9. Select all the key roles you want to replace. If you want to create cold storage wallet, we recommend replacing all the roles. If you want to keep social abilities (voting, commenting etc), unselect Posting key.

  10. Click Update account. Your account will be updated with new keys and you will be automatically logged in into the wallet.

How to transfer HIVE or HBD to another account

You can send liquid tokens (HIVE or HBD) withing 3 seconds to any other existing Hive account.

To send 0.001 HIVE from engrave.cold to engrave account:

  1. Connect your device, unlock and open Hive application.

  2. Open Hive Ledger Wallet and proceed with Account discovery procedure described above. You should be able to see your dashboard

  3. Make sure you activated account from which you want to transfer funds.

  4. Visit Balance tab

  5. Fill "Transfer" form with receiver username, asset and amount. You can skip "Memo" field as it is optional and serves as a transfer description.

  6. Click "Send" button to open confirmation modal.

  7. Click "Sign with Ledger", validate and accept transaction on your device.

  8. Use left and right buttons to verify transaction on your hardware wallet.







  9. Accept the transaction by pressing both buttons on "Approve" screen.

  10. Wait for a few seconds until your transaction is broadcasted and confirmed by the blockchain.

How to stake HIVE

To gain more governance power over Hive blockchain, you can convert your HIVE into Hive Power. We call it "powering up" and other blockchains calls it "staking". Underneath, your tokens are converted to VESTS. Withdrawal of your staked HIVE (converting it back to liquid HIVE) will take 13 weeks.

  1. Connect your device, unlock and open Hive application.

  2. Open Hive Ledger Wallet and proceed with Account discovery procedure described above. You should be able to see your dashboard

  3. Make sure you activated account from which you want to transfer funds.

  4. Visit Balance tab

  5. Fill "Power up" form with desired amount of HIVE tokens to stake. It's impossible to stake HBD so the Asset selector is disabled.

  6. Click "Power up" button to open confirmation modal.

  7. Click "Sign with Ledger", validate and accept transaction on your device.

  8. Use left and right keys to verify transaction on your hardware wallet





  9. Accept the transaction by pressing both buttons on "Approve" screen.

Support

If you encounter any problem, please contact me (@engrave) directly on Hive blockchain, write a comment under this post or use:


Originally posted on Hive Ledger Support. Hive blog powered by ENGRAVE.

Sort:  

Oh yes! I was waiting for this! :)

Thank you so much ^^

Nice to see the ability to use a Ledger device with HIVE and nice instruction - thanks!

In case someone want to keep all social abilities like posting, etc. but does want to secure funds more, he could only replace the given owner master key and uncheck the other keys, right?
So one could change all the other keys and take the ability from (potential) hackers to completely switch ownership, correct? They could "only" send HIVE or power down - but that takes 13 weeks and when you are online regullary, you can see it and change all keys with the "cold stored" owner key - am I correct?

@engrave what do you think about the idea of a translation of this article into German where I mention that you are the original publisher of this content and I only translated it to make it more accessible? Let me know!

That's exactly correct :)

what do you think about the idea of a translation of this article into German

Great idea, feel free to do that!

Thank you - but what position will the master key take then (since it's even more important than the owner key)?

Okay great, will post the link in the comment section of this post once I broadcasted it!

There is no such thing as a master key. Some frontends use master password which is basically a seed phrase used to derive a set of keys for a specified account. It will always generate the same set of keys, so if you replace the owner key with this derived from your hardware wallet, you won't be able to use the one derived from your master password. Of course, you will be able to use other keys (active and posting) if you unselect them while onboarding your account into hiveledger.io as you mentioned before.

Thank you so much for clearing this - didn't know that!

PS: I can't find "Hive" App on Ledger Live somehow ..

Isn't it available yet there?

Any way to use it without good programming knowledge? 😀

Ah, I answered this to myself by reading your post

grafik.png

Sorry for the stupid asking and thanks for your help so far!

Heard that Nano X is better as it has space for more coins

It is true. Fortunately, there is a new Nano S Plus model coming soon with more storage but without Bluetooth :)

Nice to learn something really new from your blog because Hive Ledger Wallet is something new to me.

is this fine thats its an alt-account of @themarkymark ? sounds like hidden double standarts here

Haven't you heard, I'm everyone here.

Stop impersonating me or I will call the blockchain police!

Hello, Blockchain Police. Dispatcher Rolland here. How may I help you?

is this fine thats its an alt-account of @themarkymark ? sounds like hidden double standarts here

is this fine thats its an alt-account of @themarkymark ? sounds like hidden double standarts here

Great work and a true addition to the Hive wallet availabilities.

Hats off to you N!

Btw is the code for this open-sourced? Curious to learn more about the inner workings of Ledger's apis.

Thanks for this!

Thanks ;) It is open-sourced, of course, the code is available here: hiveledger

There is also a set of other projects that might be helpful to understanding Ledger APIs etc:

  • app-hive - low-level ledger application, there is also the documentation of APDUs and app commands in doc directory
  • ledger-app-hive - Typescript library to communicate with Hive ledger app
  • hive-ledger-cli - Simple CLI to communicate with Hive Ledger App

Sweet post, it's very cool that Hive is supported for Ledger devices now.

This might be unrelated but I'll ask anyways... Is there a way to increase my HP, no matter how little asides creating posts and engaging?

You can always buy HIVE and power it up.

Okay... Thank you!

I have a Ledger Nano X and thank you for this information. Now I'm going to try this on my Nano X. :)

Very cool! Although I use hive so actively its probably a hassle for active accounts. Thanks for the tutorial none the less. I wonder if Ledger Live syncs?

You can always replace only your owner key to ultimately protect your account, leaving current active and posting keys to be able to interact with other frontends. That's what I did. I replaced my main accounts owner keys so I'm able to write on peakd.com and also interact with Hive Ledger Wallet at the same time.

This is amazing! We have had a lot of Rising Star players getting hacked recently due to scammers using various techniques so I will share this with the community.

Some questions:

  1. with other chains you have a seed phrase you can use in case your ledger gets broken / lost / you forget the pin. I can't see anything similar in your post?

  2. Can you use this for transferring Hive Engine tokens too?

Thanks again, this is a massive step forward!

Jux.

  1. Technically, all private keys on Ledger are derived from the seed phrase so it's possible to use it outside of the device. But I would like to discourage people from using the seed phrase online because that's how people get their assets compromised. In such a case, the best way would be to configure a new device with the same seed phrase.

  2. There is no straightforward way to do that for an average user at the moment, although it's technically possible to sign custom_json operation. I'm going to work closely with Hive Keychain team to add the ledger support (hopefully soon).

My recommendation would be to advise your users to replace the owner key only. This will make sure your users won't leak it and do not compromise the account completely. This will not secure liquid tokens obviously but it will prevent the account from being taken over.

Bonjour,
Est-ce que une fois avoir installé sur la Ledger on peut toujours utiliser encore l'application Hive Keychain pour valider message, vue, article, transfert, ou on est obligé à l'avenir passer toujours par la validation de la Ledger ?

Vous dites que c'est pas gratuit les comptes, mais si je lis dans ecency les termes :

  1. Frais d’utilisation des Services
    10.1. Frais de création d’un compte. Nous ne facturons actuellement pas de frais pour la création de comptes, mais nous nous réservons le droit de le faire à l’avenir, et dans ce cas, tous les frais applicables seront affichés avant que vous n’utilisiez tout service auquel des frais s’appliquent.

Hello,
Once installed on the Ledger, can we still use the Hive Keychain application to validate message, view, article, transfer, or are we obliged in the future to always go through the validation of the Ledger?

You say it's not free accounts, but if I read in ecency the terms:

Fees for using the Services
10.1. Account creation fees. We currently do not charge a fee for creating accounts, but we reserve the right to do so in the future, and in such case any applicable fees will be displayed before you use any service to which a fee is charged. apply.

If you replace all of your keys (owner, active and posting), you won't be able to use keychain anymore right now. Every operation will need to be signed with the Ledger device. You can of course leave your old active and posting key, just replace owner to be safe and keep the possibility to use Hive Keychain. You will be asked which keys you want to replace during the onboarding at hiveledger.io. You can also later change your keys but right not it's a bit limited. We're working on a better way to manage keys and to add Ledger support into Hive Keychain. It should be available in a few weeks hopefully. Until that time I recommend replacing only owner key.

You say it's not free accounts, but if I read in ecency the terms:

Ecency basically pay the fee to create your account. You can consider it as a business investment to gather new users.

Thank you very much for your explanation, so I'll wait later to find out if we can integrate the Ledger with Key Chain, (as we do with Metamask). I'm afraid I won't be able to use this application if I put my account in the Ledger.