-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
Use ADR-28 addresses for module accounts #10225
Comments
New modules should use Yes, we should update (or even remove) |
ACK, but we don't actually use |
Yes, we didn't do any migration. To go forward, with the main thing from this issue, should we:
I'm for option (2.) |
I've started implementing option 2, but it seams we are using |
I want us to distinguish two types of module accounts:
|
This suggests that it will receive coins. Users send money to escrow. The use case is to use this address internally to hold coins. How about internal_address? |
Sure, but it would be a separate type of balance in x/bank. Obviously that makes it a bigger change but I think it will avoid our current problems |
OK, so user will never be exposed to those addresses. Good idea! |
Looks this something useful to do for the x/auth abstraction (cc @facundomedica, @sontrinh16) |
this would suggest we modify bank to store module account balance seperately, so we dont need an address for them maybe just account name |
The alternative is on receive hooks in accounts to reject sends. |
Summary
Module Accounts created in
/x/auth
are currently using the following API from"github.com/tendermint/tendermint/crypto"
Should module accounts now be created using the following outlined in ADR-28?
cc @colin-axner @robert-zaremba
Proposal
Replace
crypto.AddressHash([]byte(name))
withaddress.Module(name, []byte(name))
Note: Unsure if this will cause any unwanted side-effects in other parts of the sdk(?)
For Admin Use
The text was updated successfully, but these errors were encountered: