Help me understand ICP on Nano Ledger

  1. What is the purpose of ICP on Ledger if I still must create an NNS identity?
  2. What happens if you lose control of your NNS identity with a Ledger attached?
1 Like

The NNS dapp is merely a frontend and the identity anchor you use to log in into this frontend is meaningless for the purpose of controlling ICP that are on the Ledger. The login is only there because the NNS dapp happens to provide other features that actually use the identity.

Nothing happens to the ICP that are on the Ledger if you lose control of that identity. You can just log in with a different identity, connect the hardware wallet and the coins are there. Conversely, if someone else gains control of the identity then without the Ledger they cannot control your coins that are on the Ledger.

9 Likes

Thank you @timo
@diegop Would you be so kind and confirm this? :pray:

Confirmed.

Timo is the expert (and Principal Researcher at Dfinity), so i Can confirm that Timo is among the canonical sources for this.

3 Likes

Oh snap. Thank you @diegop @timo Happy Holidays!

Also, the NNS app can be replaced for Ledger hard wallet management at any time, if anyone wants to build a replacement. We have an NPM package available for talking to the interface, and anyone could go out and build a simple, dedicated UI for managing your balance and neurons, if they wanted to

This package has been public for a long time, but I just haven’t advertised it, since the ledger app wasn’t official yet

4 Likes

@timo Do you think we will be able to move our Neurons to Ledgers later?

You mean neurons that were created from liquid ICP by using the NNS dapp with an internet identity (not linked to a hardware wallet)? No, those you cannot move to a Ledger because neurons cannot be “moved” at all. That is because a neuron’s controller cannot be changed.

2 Likes

I thought this would be the case :sob:
Will just have to protect original NNS Anchor well.
Thanks @timo :pray:

I have some additional questions if you dont mind:

  1. Is the ledger needed to perform actions on the NNS (community fund, neuron management, etc…)? If the II is compromised are my neurons safe?

  2. If I lose access to both my II and ledger, is the ledger seed phrase enough to recover the lost tokens and neurons? (obviously assuming I buy a new ledger and import the seed phrase from the old one)

  3. Same scenario as 2 but instead of recovering the tokens I want to recover the II that was associated to the ledger using the FiDo app.

@timo is a big star.

1 Like

A previous answer from me should answer this: Help me understand ICP on Nano Ledger - #2 by timo

In short: yes. (Assuming you connect the Ledger as a “hardware wallet”, not as a Fido key)

1 Like

Yes, Ledger is needed for those actions. You can define a hotkey but that’s only for voting, not neuron management.

1 Like

Actually, in this scenario, I think it is also true. My understanding of the Fido app on Ledger is that the key is derived deterministically from the seed phrase. If my understanding is correct then you can recover your II from just the seed phrase. But don’t forget that you also need to know your II anchor number!

In a worst case scenario that you could be brute forceable, but it’s certainly highly inconvenient if you forget it.

1 Like

In that case would you say its safe to add the II where I have my neurons on my phone if the neurons are attached to a ledger? It would make voting everyday easier.

Can a HotKey be created to compuned interest? Or does that require a ledger?

Yes, this is totally true ! So it is true for the 2. if your II is authenticated through FIDO.

I was able to recover from Nano S to Nano X using the seed phrase only in a disaster recovery simulation.

2 Likes

After I posted here, this (https://forum.dfinity.org/t/u2f-api-deprecation/9925) happened.

2 Likes

Hi I’ve tested this out and have an issue.

I’m staking on my Ledger and just bought a 2nd Ledger to keep as a backup. I just setup my backup Ledger with seed phrase and added ICP app. Issue is that it NNS doesn’t see it as the same Ledger. If I try and make a change to a neuron using this backup Ledger, I get this error:

Exception: The hardware wallet’s principal doesn’t match the account’s principal. Are you sure you connected the right wallet?

All I’m doing is exactly what I’d do if I lost my main Ledger. Any ideas?

Thanks
Sam

1 Like

wiped and added seed again and all good.

3 Likes