Skip to content
New issue

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

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

Already on GitHub? # to your account

[ICS02] ClientStatePath is not checked during client creation #604

Closed
Farhad-Shabani opened this issue Apr 5, 2023 · 0 comments · Fixed by #605
Closed

[ICS02] ClientStatePath is not checked during client creation #604

Farhad-Shabani opened this issue Apr 5, 2023 · 0 comments · Fixed by #605
Assignees
Labels
O: reliability Objective: cause to improve trustworthiness and consistent performing S: specs Scope: related to IBC protocol specifications
Milestone

Comments

@Farhad-Shabani
Copy link
Member

Problem Statment

  • The ICS02 specifies that for handling a client creation request, the process should check if the submitted ClientState already exists in the ClientStatePath!

    abortTransactionUnless(provableStore.get(clientStatePath(identifier)) === null)

  • Note that an incorrect use of SetClientState can result in a ClientState being set to the same store as the one that is going to be set by a MsgCreateClient.

In IBC-go

  • There is a GetClientState method, but not used to perform this check. Instead they create an isolated store by StoreClient for this purpose.
  • This can't be applied to IBC-rs, as we do not access to the store.

Acceptance Criteria

Check ClientStatePath to ensure the received ClientState via a MsgCreateClient does not exist

@Farhad-Shabani Farhad-Shabani added the O: reliability Objective: cause to improve trustworthiness and consistent performing label Apr 5, 2023
@Farhad-Shabani Farhad-Shabani moved this to 📥 To Do in ibc-rs Apr 5, 2023
@Farhad-Shabani Farhad-Shabani added the S: specs Scope: related to IBC protocol specifications label Apr 5, 2023
@Farhad-Shabani Farhad-Shabani self-assigned this Apr 5, 2023
@github-project-automation github-project-automation bot moved this from 📥 To Do to ✅ Done in ibc-rs Apr 12, 2023
@Farhad-Shabani Farhad-Shabani added this to the v0.37.0 milestone Apr 13, 2023
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
O: reliability Objective: cause to improve trustworthiness and consistent performing S: specs Scope: related to IBC protocol specifications
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant