vegaprotocol/vegawallet-desktop

Single password experience

ckpringle opened this issue · 0 comments

Story

As a user
I don't want to enter my passphrase every time I want to access or update a wallet, I want to be able to unlock it once per software instance,
So that I can concentrate on trading, not password management

Acceptance Criteria

  • When I want to access a locked wallet, I am prompted to enter the passphrase.
  • When I want to access an unlocked wallet, I am not prompted to enter the passphrase.
  • When I unlock a wallet while initiating a connection with a third-party application, the front-end has to show the wallet as unlocked.
  • When I create or import a wallet, the wallet is set as unlocked.
  • When restarting the software, the wallets are all locked, by default.

Technical details

First, we have to call admin.unlock_wallet, to unlock the wallet, and remove the passphrase prompt form every other actions that used to require the original wallet passphrase.

Note on unlocking through third-party application

A wallet can be unlocked from the wallet service, when a third-party initiates a connection. When this happens the backend sends an event to notify the FE that a wallet has been unlocked. In that situation, the FE will have to skip the passphrase prompt and set the wallet as unlocked. Ref: #288