Skip to content
This repository has been archived by the owner on Jan 22, 2025. It is now read-only.

Add design for structured accounts as an alternative to Generalized Ownership #4452

Closed

Conversation

aeyakovenko
Copy link
Member

Problem

Current implementations of ownership rely on account pubkeys, which cannot be composed across programs.

How these problems manifest in Ethereum. https://medium.com/@kelvinfichter/looking-at-ownership-in-the-evm-6e6914d341d

This is an alternative to #3216, which defines how programs can interoperate strictly inside the data context of the Accounts. The downside of #3216 approach is that performance improvements like Credit-Only accounts are harder to apply.

Summary of Changes

Propose a design that defines a specific structure for accounts that is generalized between many programs.

Three kinds of accounts are proposed:

  • UserAccounts, for users that hold tokens and state
  • ProgramAccounts, which define the functions that compose the program
  • FunctionAccount, which define the executable bytecode for programs

CC #3266 #3216 @garious

@aeyakovenko
Copy link
Member Author

this won't work. the index stored in ProgramAccounts blows up to contain all the (Account,Program,Token,State)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant