-
Notifications
You must be signed in to change notification settings - Fork 87
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
Tracking issue for verification functions of TendermintClient #76
Comments
Just a note on progress on this PR: we are on it informalsystems/hermes#1120. This first PR should be done by the end of this milestone (end of July). More follow-up work will be necessary for ICS03 / ICS04 specific verification methods. |
Hello,
Thanks |
Hey, the
The purpose is to capture all the methods that any IBC client implementation must provide. In other words, All of the following components belong to our ibc module (on-chain) implementation:
The off-chain IBC component (the relayer, i.e., Hermes) imports and uses all of these different types and methods because the relayer itself must perform header verification (which is a method that clients provide) for all the chains it communicates with. Hermes must verify states for several basic purposes:
Briefly, in order to support WASM clients for Hermes, it is essential to add the following components:
|
thanks @adizere for your explanation.
conflicts with the idea of having a complete transparent wasmclient proxy in the ibc-go module that simply forwards all the calls to a smart contract. You can have a look at a first implementation draft here.
As last point: I would argue that the relayer is not in charge of verifying anything as this is a duty the light-clients are in charge of, misbehaviour detection included. Otherwise IBC protocol wouldn't be a "mechanism to create trust-less bridges" but yet another trusted bridge protocol, as you are now relaying on the relayer (sorry for the pun) to pass truthful messages. |
Hi @adizere , |
Continued the discussion here: informalsystems/hermes#1318 (comment) |
@lightyear15 I just want to point out that the plan for supporting WASM clients is indeed to call into the WASM code rather than hardcode anything in the |
Hi @romac , |
@lightyear15 Oh wow, that's amazing 🎉 Yeah we would definitely love to hear about all that! Would be so kind as to (eventually) open a PR here? PS: Sorry to hear about the struggles part, please let us know how we could have been of better help. |
No problem at all... |
Crate
IBC
Summary of Bug
Almost all verification functions in
ibc::ics07_tendermint::client_def::TendermintClient
are not implemented.Version
0.6.0
Steps to Reproduce
Call verification functions such as
ibc::ics03_connection::handler::verify::verify_proofs
with a TendermintClientAcceptance Criteria
All verification functions are implemented
check_header_and_update_state
verification method #71verify_client_consensus_state
verify_connection_state
verify_channel_state
verify_client_full_state
For Admin Use
The text was updated successfully, but these errors were encountered: