UCS-01 Relay #609
hussein-aitlahcen
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
IBC - Token Transfer
ICS20 (TLDR: Broken)
Solution: Token Factory + UCS-01 Relay
To create a CosmWasm equivalent of the ICS20 native module, a solution was sought to allow contracts to create native denoms. This is where the Token Factory comes into play—a native Go module that implements the feature of creating arbitrary denoms for users and contracts.
The UCS-01 extension is not just a mere reimplementation of ICS20 but rather an enhancement. Considering the need to send/receive tokens from the Ethereum Virtual Machine (EVM), the ICS20 specification has several drawbacks (as previously mentioned). The JSON encoding of packets is suboptimal, but the most critical aspect is that in the EVM, the cost of submitting a packet is significantly higher than in Cosmos chains. Therefore, the ability to batch token transfers becomes essential.
The UCS-01 relay contract will implement both the ICS20 standard (for seamless communication with ICS20-compatible chains) and a custom ICS20 variant for use between Union and the EVM. This approach not only unlocks batch transfers but also facilitates easy upgrades through contract migration via governance, eliminating the need for coordinated upgrades by validators.
Furthermore, UCS-01 can be extended in the future to support other networks with different requirements.
Summary
Beta Was this translation helpful? Give feedback.
All reactions