Skip to content

Commit 4f1c0df

Browse files
chore(cosmwasm): upgrade cometbls light client to match new commitment prefix
1 parent c32c07f commit 4f1c0df

File tree

1 file changed

+18
-4
lines changed
  • cosmwasm/ibc-union/lightclient/cometbls/src

1 file changed

+18
-4
lines changed

cosmwasm/ibc-union/lightclient/cometbls/src/client.rs

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ use crate::{
2323
zkp_verifier::ZkpVerifier,
2424
};
2525

26+
pub const WASMD_MODULE_STORE_KEY: &[u8] = b"wasm";
27+
pub const WASMD_CONTRACT_STORE_PREFIX: u8 = 0x03;
28+
pub const IBC_UNION_COSMWASM_COMMITMENT_PREFIX: u8 = 0x00;
29+
2630
pub struct CometblsLightClient<T: ZkpVerifier = ()>(PhantomData<T>);
2731

2832
impl<T: ZkpVerifier> IbcClient for CometblsLightClient<T> {
@@ -56,11 +60,12 @@ impl<T: ZkpVerifier> IbcClient for CometblsLightClient<T> {
5660
&SDK_SPECS,
5761
&consensus_state.app_hash,
5862
&[
59-
b"wasm".to_vec(),
60-
0x3u8
63+
WASMD_MODULE_STORE_KEY.into(),
64+
WASMD_CONTRACT_STORE_PREFIX
6165
.to_le_bytes()
6266
.into_iter()
6367
.chain(client_state.contract_address)
68+
.chain(vec![IBC_UNION_COSMWASM_COMMITMENT_PREFIX])
6469
.chain(key)
6570
.collect::<Vec<_>>(),
6671
],
@@ -75,13 +80,22 @@ impl<T: ZkpVerifier> IbcClient for CometblsLightClient<T> {
7580
key: Vec<u8>,
7681
storage_proof: Self::StorageProof,
7782
) -> Result<(), IbcClientError<Self>> {
83+
let client_state = ctx.read_self_client_state()?;
7884
let consensus_state = ctx.read_self_consensus_state(height)?;
7985
Ok(ics23::ibc_api::verify_non_membership(
8086
&storage_proof,
8187
&SDK_SPECS,
8288
&consensus_state.app_hash,
83-
// FIXME: concat(contract, key) right?
84-
&[b"wasm".to_vec(), key],
89+
&[
90+
WASMD_MODULE_STORE_KEY.into(),
91+
WASMD_CONTRACT_STORE_PREFIX
92+
.to_le_bytes()
93+
.into_iter()
94+
.chain(client_state.contract_address)
95+
.chain(vec![IBC_UNION_COSMWASM_COMMITMENT_PREFIX])
96+
.chain(key)
97+
.collect::<Vec<_>>(),
98+
],
8599
)
86100
.map_err(Into::<Error>::into)?)
87101
}

0 commit comments

Comments
 (0)