node icon indicating copy to clipboard operation
node copied to clipboard

Add TON support

Open brewmaster012 opened this issue 1 year ago • 2 comments

Support the Telegram Open Network (TON) in the following sequences

  1. ZRC20 deposit and withdraw support for TON token
  2. ZRC20 depositAndCall() from TON network with TON token
  3. ZRC20 deposit/depositAndCall/withdraw for TON fungible token such as Jetton
  4. ZRC20 withdrawAndCall() -- to be researched further how this would look like, as cross contract call on TON is asynchronous.

Reference design is the Solana support: https://github.com/zeta-chain/node/issues/2506 Particularly the Gateway contract on TON can reference the solana program https://github.com/zeta-chain/protocol-contracts-solana The Gateway contract will need to verify the TSS ECDSA signature in the contract itself, and associated guards against replay on the same chain (via nonce), replay on other chains (via chainid), and basic commitment in the signature against message.

Is your feature request related to a problem? Please describe. No

Describe the solution you'd like Omnichain support for TON assets and remote call.

Describe alternatives you've considered Alternative would be to

  1. not support TON

Motivation and Context TON is an emerging blockchain that is currently TOP 10 by market capitalization. It's also a heterogenous chain which would benefit much from the abstraction zetachain provides.

Implementation

### Tasks
- [ ] https://github.com/zeta-chain/node/issues/2716

brewmaster012 avatar Jul 29 '24 18:07 brewmaster012

Added EPIC task here: https://github.com/zeta-chain/node/issues/2549

Would be good to look in the differences with Solana

lumtis avatar Jul 30 '24 12:07 lumtis

Linking https://github.com/zeta-chain/node/issues/2716. Please note that

ZRC20 deposit/depositAndCall/withdraw for TON fungible token such as Jetton

Is not included in the implementation scope as of now. TON contracts are upgradable, so we can improve this is the future.

Please also note each jetton type of each account is a separate smart contract instance

swift1337 avatar Sep 02 '24 08:09 swift1337

Closing this one, we can use the Jetton epic for the next improvement

lumtis avatar Mar 05 '25 14:03 lumtis