Add a DeregisterInterchainAccounts API to ICS-27 #5807
Description
Summary
The current design of ICA allows any relayer to reopen an ICA channel. This has some unwanted side effects. To address this, we can introduce a MsgDeregisterInterchainAccount
such that if a channel is closed using this message, then it can only be reopened with MsgRegisterInterchainAccount
.
I'm creating this issue as a part of Interchain focus week to document my progress and what I've been working on. This should not be merged without consensus from maintainers.
Problem Definition
The current design of ICA allows any relayer to reopen an ICA channel with the same parameters. This also means channel parameters of the reopened channel must be identical to the previous channel. Forcing ICA users to upgrade their channels through channel upgradability.
Proposal
Introduce MsgDeregisterInterchainAccount
which closes the channel. If a channel is closed this way, then the channel cannot be reopened by relayers, and the only way to reopen the channel is to submit a MsgRegisterInterchainAccount
. This allows:
- channel parameters to be updated by the owner without the use of channel upgradability.
- allows the owner to close their ICA channel permanently.
- allows unordered ICA channels to close.
- doesn't break anything since timed out channels can still be reopened by relayers.
For Admin Use
- Not duplicate issue
- Appropriate labels applied
- Appropriate contributors tagged/assigned
Metadata
Assignees
Labels
Type
Projects
Status
Backlog 🕐
Activity