ICS20: Question about Desired Properties
michwqy opened this issue · 3 comments
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).
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?
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?
@AdityaSripal Is my understanding right?