cosmos / ibc

Interchain Standards (ICS) for the Cosmos network & interchain ecosystem.
Other
919 stars 382 forks source link

ICS20: Question about Desired Properties #1037

Open michwqy opened 9 months ago

michwqy commented 9 months ago

Fault containment: prevents Byzantine-inflation of tokens originating on chain A, as a result of chain B's Byzantine behaviour (though any users who sent tokens to chain B may be at risk).

I don't quite understand the specific meaning of this property. If there is a Byzantine error in the chain B, such as an error in the consensus mechanism, the IBC protocol should not be able to solve it.

I am not very sure if this property refers to the behavior of Chain B (whether correct or incorrect) that will not affect the native tokens on Chain A. But in that case, I think it's a duplicate of another property

Preservation of total supply (constant or inflationary on a single source chain & module).

AdityaSripal commented 9 months ago

Hi, perhaps it is clearer to express these properties the following way:

Preservation of total supply (constant or inflationary on a single source chain & module) contingent on honest chains Fault containment: a Byzantine chain B is only able to compromise security of tokens that have chain B in its ICS20 trace. Tokens originating on an honest chain A and then inflated on byzantine chain B cannot be redeemed back to chain A beyond the original amount issued by A to B.

Does this make things clearer?

michwqy commented 9 months ago

The second property is that the module/user x on chain A sent t tokens to chain B (meaning x pledged t tokens to escrow account), and these tokens inflated on Byzantine chain B, but x cannot redeem more than t tokens from the escrow account. The first property cannot constrain x to redeem tokens exceeding t, as the total number of tokens on chain A is still constant at this time. Is my understanding right?

michwqy commented 9 months ago

@AdityaSripal Is my understanding right?