Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] RFC - Full Wallet Lifecycle #11

Closed
wants to merge 6 commits into from

Conversation

@yeastplume
Copy link
Member

commented Jul 3, 2019

Initial (very WIP) of RFC describing changes to the Wallet APIs to support wallet lifecycle events in the API, as well as other changes to support their use in the command-line wallet.

yeastplume added 5 commits Jun 26, 2019

@yeastplume yeastplume changed the title [WIP] Full Wallet Lifecycle [WIP] RFC -Full Wallet Lifecycle Jul 3, 2019

@lehnberg

This comment has been minimized.

Copy link
Contributor

commented Jul 3, 2019

@lehnberg

This comment has been minimized.

Copy link
Contributor

commented Jul 3, 2019

@yeastplume nice job putting together the first wallet RFC! :)

Changing the wallet backend data structure and supporting multiple wallets seem quite distinct from the proposed changes to how init and instantiation behaves, and the addition of new API calls.

Do you think it would make sense for these to be broken down into multiple RFCs so they can be reviewed separately?

@yeastplume

This comment has been minimized.

Copy link
Member Author

commented Jul 4, 2019

Wrestling with whether this should be split up myself. Thing is with the way it's currently structured, many of these changes don't make a lot of sense without the others also being in place.

However, it might make more sense ordered thusly:

  • RFC adding lifecycle functions to the API for a single wallet instance (which won't be called from the CLI just yet)
  • RFC to add support for multiple wallets and addition of related API functions (again, not necessarily called from the CLI)
  • RFC to change wallet invocation mode
    Also planned:
  • RFC to define open grinbox spec (and inclusion in grin as an exchange method)
@yeastplume

This comment has been minimized.

Copy link
Member Author

commented Jul 4, 2019

Splitting, this PR just contains the description of API functions that will work on the current single wallet instance.

@yeastplume yeastplume changed the title [WIP] RFC -Full Wallet Lifecycle [WIP] RFC - Full Wallet Lifecycle Jul 4, 2019


1. In the command line case, each wallet command is a separate invocation. Command line invocation will ask for a password, decrypt the master seed and initialize the wallet with the descrypted seed. It will then perform the desired function and return, zeroing memory and exiting the process.

1. In the case of a listening API (owner or foreign), the password is given once and the wallet seed is decrypted. The wallet instance is then kept in memory by the handling thread, and re-used for each Foreign or Owner API call.

This comment has been minimized.

Copy link
@nijynot

nijynot Jul 12, 2019

Should probably be a 2. here?

This comment has been minimized.

Copy link
@lehnberg

lehnberg Jul 12, 2019

Contributor

Nope, this is markdown syntax. :) It renders well in the actual document.

This comment has been minimized.

Copy link
@nijynot

nijynot Jul 14, 2019

Oh it totally does. 😄 Didn't know that markdown fixed list indexes like that.

@lehnberg lehnberg added the wallet dev label Jul 20, 2019

@yeastplume

This comment has been minimized.

Copy link
Member Author

commented Jul 23, 2019

Replaced by #18

@yeastplume yeastplume closed this Jul 23, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.