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

ICS3: Do we need a recency bound on consensus state in the connection handshake? #545

Open
cwgoes opened this issue Apr 7, 2020 · 2 comments
Labels
tao Transport, authentication, & ordering layer.

Comments

@cwgoes
Copy link
Contributor

cwgoes commented Apr 7, 2020

What if an old consensusHeight is used? Can this cause problems?

  • e.g. if the timestamps of the two chains are off

Do we need to include verification of the unbonding period?

There should be a way for client types to say what needs to be verified in the connection handshake.

@cwgoes cwgoes self-assigned this Apr 7, 2020
@adizere
Copy link
Contributor

adizere commented Apr 8, 2020

Relevant spec: ICS 003, in particular the opening handshake, ConnOpenTry and ConnOpenAck handlers.

@cwgoes
Copy link
Contributor Author

cwgoes commented Aug 30, 2020

The unbonding period is now verified. As far as I can think at the moment, an old consensusHeight isn't unsafe, although it might result in the light client potentially being un-updatable afterwards (if it just expires almost immediately).

A de facto bound will be imposed if a chain only keeps the last n of its own consensus states, maybe it's better to be explicit about this in the protocol logic and fail the handshake with a defined error code though. We can't really standardise on a particular n since we don't know the "speed" of the chains, but it can be user-configurable and the handshake can check.

@cwgoes cwgoes transferred this issue from cosmos/ibc Feb 23, 2021
@cosmos cosmos deleted a comment from workshub bot Feb 24, 2021
@cwgoes cwgoes transferred this issue from another repository Mar 23, 2021
@cwgoes cwgoes removed their assignment Sep 25, 2021
@mpoke mpoke changed the title Do we need a recency bound on consensus state in the connection handshake? ICS3: Do we need a recency bound on consensus state in the connection handshake? Mar 17, 2022
@mpoke mpoke added the tao Transport, authentication, & ordering layer. label Mar 17, 2022
@tankcdr tankcdr added this to IBC Nov 19, 2024
@github-project-automation github-project-automation bot moved this to Backlog in IBC Nov 19, 2024
@womensrights womensrights removed this from IBC Nov 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tao Transport, authentication, & ordering layer.
Projects
None yet
Development

No branches or pull requests

3 participants