hermes
hermes copied to clipboard
Proof verification for `conn_open_try` and `conn_open_ack` inconsistent with ibc-go
Summary of Bug
conn_open_try::process()
and conn_open_ack::process()
both use verify_proofs()
. However, verify_proofs()
succeeds the proof verification when the message contains no client_state (see here), whereas ibc-go fails the verification (see here).
I checked the standard, but the standard doesn't have any ClientState
verification in its ConnOpenTry
and ConnOpenAck
, let alone having ClientState
in the provableStore (opened issue). In this case, we should then have the same behavior as ibc-go.
Version
v0.15.0
Acceptance Criteria
Behavior is the same as ibc-go
For Admin Use
- [ ] Not duplicate issue
- [ ] Appropriate labels applied
- [ ] Appropriate milestone (priority) applied
- [ ] Appropriate contributors tagged
- [ ] Contributor assigned/self-assigned