HiveSigner integration
Description
Login and perform operations with HiveSigner.
For more details, please refer to https://peakd.com/hive-139531/@good-karma/imagehoster-hivesigner-and-condenser-bounty#@roomservice/re-good-karma-qd5qsb
The Merge Request contains almost the same change as condenser!74 (merged), except some minor differences.
Relevant Issues
Fixes: condenser#43 (closed)
Merge request reports
Activity
mentioned in merge request condenser!74 (merged)
added 1 commit
- 2a72400b - add comment for login/hivesigner url redirect
added 1 commit
- 65e96f4c - modify sendOperations to redirect to callback after success
added 1 commit
- 8b610d64 - sendOperations redirect to callback in browser only
Did a test run on this branch, found a few issues. My test in my HiveSigner wallet was created with master password, so all keys should be available on HiveSigner side.
Working
- Transfer Tokens works
- Powering Up/Down works
- Delegation Op works
- Update Password works
- Transfer to/from savings works
- Market Buy/Sell op works
Not Working
- Revealing private keys resulted in SignIn prompt instead revealing the keys
- Transfers which included an encrypted message could not be seen (memo appeared empty)
-
Creating a transfer with encrypted text (#Text) resulted in Error:
Unable to encrypt memo, missing memo private key
-
Creating a community resulted in Error:
Oops, something went wrong. The signing URL provided is invalid.
@roomservice thanks for the thorough testing and great findings.
Revealing private keys resulted in SignIn prompt instead revealing the keys
We will redirect user to https://hivesigner.com/auths when clicking on
Reveal
if login with HiveSigner. https://hivesigner.com/auths page will support reveal private keys in next iteration.Transfers which included an encrypted message could not be seen (memo appeared empty)
Will display error
cannot decrypt with current login method
when login with HiveSigner since we cannot get memo key.Creating a transfer with encrypted text (#Text) resulted in Error:
Unable to encrypt memo, missing memo private key
Will display error
cannot encrypt with current login method
when login with HiveSigner.Creating a community resulted in Error:
Oops, something went wrong. The signing URL provided is invalid.
For community operations failure with
Oops, something went wrong. The signing URL provided is invalid.
, it's because theaccount_create
operation is not supported in HiveSigner: https://github.com/ledgerconnect/hivesigner/blob/master/src/helpers/operations.json Need to include the operation in HiveSigner.Edited by Voltair@roomservice I have pushed the fix for revealing private keys and memo encryption/decryption (by adding workarounds mentioned above). Could you please check whether that helps?
For community creation failure, @good-karma will help add
account_create
operation into HiveSigner.Edited by Voltair@voltair Great work as always!
Just looked at the changes I only have a two suggestions in order to improve user experience:
-
When the user is forwarded to HiveSigner to reveal his private keys, it would be great if a
redirect_uri
could be passed by and the HiveSigner UI would include a Button like "Take me back" in order to get back to the Wallet website. -
Maybe change the text & formatting in the encrypted memo to Encrypted Memo (cannot decrypt memo with current login method) - This way it's more obvious that the content is actually not the memo but a hint to the user.
Everything else looks fine to me.
-
@roomservice cool. thanks for the kind suggestions.
- For the 1st suggestion about
redirect_uri
, since the current design is to open the https://hivesigner.com/auths in a separate new tab after the user clicks theReveal
button, I think we don't need to redirect back after visit page. The https://hivesigner.com/auths page doesn't supportredirect_url
at this moment I think. - For the 2nd suggestion, I have updated warning style when the user doesn't have the permission / memo key to decrypt the memo. Please take a look.
- For the 1st suggestion about
Thanks to @good-karma 's work. Now community creation works well!
@roomservice please kindly have a try when you get time.
Looking good for me now. Don't see any issue left on these merge request.
Good job both @voltair & @good-karma
mentioned in commit e67a3cf1
@roomservice Thanks a lot for your testing and review. Happy to know there's no issues any more.
@dan Thanks for merging the feature into Wallet. Looking forward to see it in production.