-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
Enable/disable coin transfers by denom #6518
Comments
I'm in favor of this proposal 👍 I can work on this if we all agree to @clevinson @aaronc |
@fedekunze I would advise sticking to the current 0.39 milestone and not allow any scope creep. |
For the widest compatibility (especially with regards to existing chain upgrades) I recommend a global send enabled flag in the configuration and use of specific overrides. With this approach users who depend on the current behavior can be updated with no impact. In addition this type of setup means that section of the code base that handles simulation can assert correct behavior for existing configurations as well as the new per-denomination setup. |
The easiest way to implement this seems to be to use an empty string denom rule for the global policy/default. |
In the end this was implemented with a proper |
Summary
Enable/disable coin transfers by denom.
Problem Definition
Transfers of a specific token type cannot be paused/unpaused without disabling all transfers in the bank module. Some token implementations on other chains allow for fine-grain control of an individual token by the designated owner. The feature acts as a safeguard in potential attack scenarios and can increase trust in the system in a variety of situations. The authority to enable/disable transfers of a specific coin type could be vested in a trusted coin owner or subject to governance depending on the use case.
Proposal
Replace the global
SendEnabled
parameter with a per coin one indexed by denom:SendKeeper
interfaceSendEnabledParams
handleMsgSend
andhandleMsgMultiSend
to reject attempted transfers that include a disabled coinFor Admin Use
The text was updated successfully, but these errors were encountered: