Skip to content
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

Create a new endpoint for ICS misbehaviour handling #825

Closed
6 tasks done
Tracked by #732
sainoe opened this issue Apr 5, 2023 · 0 comments · Fixed by #826
Closed
6 tasks done
Tracked by #732

Create a new endpoint for ICS misbehaviour handling #825

sainoe opened this issue Apr 5, 2023 · 0 comments · Fixed by #826
Assignees
Labels
type: feature-request New feature or request improvement

Comments

@sainoe
Copy link
Contributor

sainoe commented Apr 5, 2023

Problem

In the context of untrusted consumer chains, the provider module requires the capability to verify light client attack evidence submitted by an external agent.

Proposal

The solution reuses the IBC Misbehaviour type and handler which allows the verification of conflicting headers and the freezing light clients. It was decided that the CheckForMisbehaviour logic should be duplicated rather than introducing a hook into the IBC-Go module.

Closing criteria

  • Define a new SubmitConsumerMisbehaviour message
  • Implement the handling of SubmitConsumerMisbehaviour
    • verify conflicting headers
    • extract byzantine validators from headers
  • Add a CLI command to submit light client attack evidence
  • Test the solution against three different kinds of light client attacks

Note that upon a valid light client attack evidence submitted to the provider, the only actions taken will be the freezing of the client and the logging of the byzantine validators responsible for the attack. The necessary jailing and slashing actions will be handled in a seperate PR.

@sainoe sainoe added type: feature-request New feature or request improvement ccv-core labels Apr 5, 2023
@sainoe sainoe added this to the Gaia v10.0.0 milestone Apr 5, 2023
@sainoe sainoe self-assigned this Apr 5, 2023
@sainoe sainoe added this to Cosmos Hub Apr 5, 2023
@github-project-automation github-project-automation bot moved this to 🩹 Triage in Cosmos Hub Apr 5, 2023
@sainoe sainoe moved this from 🩹 Triage to 📥 Todo in Cosmos Hub Apr 5, 2023
@sainoe sainoe moved this from 📥 Todo to 🏗 In progress in Cosmos Hub Apr 5, 2023
@mpoke mpoke changed the title Untrusted Consumer pt. 1: Light Client Attack evidence handling Light Client Attack evidence handling Apr 19, 2023
@mpoke mpoke removed this from the Gaia v10.0.0 milestone Apr 20, 2023
@sainoe sainoe moved this from 🏗 In progress to 👀 In review in Cosmos Hub Jun 22, 2023
@mpoke mpoke moved this from 👀 In review to 🏗 In progress in Cosmos Hub Aug 3, 2023
@sainoe sainoe moved this from 🏗 In progress to 👀 In review in Cosmos Hub Aug 4, 2023
@mpoke mpoke closed this as completed Aug 14, 2023
@github-project-automation github-project-automation bot moved this from 👀 In review to ✅ Done in Cosmos Hub Aug 14, 2023
@sainoe sainoe changed the title Light Client Attack evidence handling Create a new ICS misbehaviour endpoint Aug 22, 2023
@sainoe sainoe changed the title Create a new ICS misbehaviour endpoint Create new ICS misbehaviour endpoint Aug 22, 2023
@sainoe sainoe changed the title Create new ICS misbehaviour endpoint Create a new endpoint for ICS misbehaviour message Aug 22, 2023
@sainoe sainoe changed the title Create a new endpoint for ICS misbehaviour message Create a new endpoint for ICS misbehaviour handling Aug 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: feature-request New feature or request improvement
Projects
Status: ✅ Done
Development

Successfully merging a pull request may close this issue.

2 participants