EOSCommunity.org Forums

Issue creating EOS account on Ledger

https://samveku.medium.com/how-to-add-eos-account-to-your-ledger-nano-x-s-using-anchor-wallet-79ae9917cf53

I am using the guide i linked to create EOS account on Anchor that is connected to Ledger.

I am at the part where you check the Anchor public key matches with what is shown on Ledger device. First issue is that Ledger device does not show any key on the screen. When i connected my Ledger to Bloks.io, it gave public key that at first i thought was identical, but when i check last 6 digits are different. Both keys are “index 0”.

I am not sure how to proceed. Any thought?

Edit:Ledger EOS app is the lastest version 1.3.1. I have yet update the most recent firmware on Ledger.

For this, if you are in the Tools → Ledger section of the app, you would:

  • Enter an Index (defaults to 0)
  • Click “Load Public Key”
  • Click “Confirm Public Key using Device”

The public key should be shown on the device then. I just tested this and it worked on my end, so unless there’s some kind of bug - I’m not sure what’s happening here.

I think this is a case where the different key formats are just causing confusion. The same key can have both a PUB_K1 prefix as well as an EOS prefix, and depending on which one is used it can make the key appear different at the end.

We need to get standardized between all the interfaces and use one format. Bloks in this case is using the new format, and Anchor is using the old format. We’re the ones who need to upgrade in order to help avoid this confusion.

As for the keys themselves, here’s an example to help explain the differences. Let’s look at these two keys:

PUB_K1_5djEBsfS7f629xfchCzMNJ6ai5aXqEHShJDeNv7swRG9btxLwH
    EOS5djEBsfS7f629xfchCzMNJ6ai5aXqEHShJDeNv7swRG9Zq5SV5

These public keys are actually the same, despite being different at both the beginning and end. To show how, here’s the anatomy of these keys:

PUB_K1_5djEBsfS7f629xfchCzMNJ6ai5aXqEHShJDeNv7swRG9btxLwH
\_____/\__________________________________________/\____/
  |                    |                              |
  Key Prefix           Key Data                       Checksum


EOS5djEBsfS7f629xfchCzMNJ6ai5aXqEHShJDeNv7swRG9Zq5SV5
\_/\__________________________________________/\____/
 |                    |                           |
 Key Prefix           Key Data                    Checksum

The Key Prefix at the beginning is different, as well as the Checksum at the end. The Checksum at the end isn’t part of the key itself, its just a bit of data to help with error detection. It changes because the prefix changes. However, if you look at the key data for both of these - it shows they’re the same.

EOS     5djEBsfS7f629xfchCzMNJ6ai5aXqEHShJDeNv7swRG9 Zq5SV5
PUB_K1_ 5djEBsfS7f629xfchCzMNJ6ai5aXqEHShJDeNv7swRG9 btxLwH

The middle portion here is what’s important to ensure is identical.

1 Like

Thank you for replying. I had to enable advanved user options in order to verify the address with my Ledger. Then i went to tools/Leger and “confirm public key using device”. This option was not visible by default.

Should i import both Active and Owner accounts to Anchor?

Just noticed that the guide imports only active account.

Active is all you need. The only reason you’d need to use the owner key is if you need to reset the active key.

How did you enable advanced user options. I’m stuck at the same place.

Settings (the gear in the top right corner), and I believe it’s the 3rd option you can change.