|
| 1 | +# Etherlink Bridge |
| 2 | + |
| 3 | +## What is Etherlink? |
| 4 | + |
| 5 | +Etherlink is an EVM-compatible, non-custodial Layer 2 blockchain powered by Tezos Smart Rollup technology. |
| 6 | +It enables seamless integration with existing Ethereum tools, including wallets and indexers, and facilitates asset transfers to and from other EVM-compatible chains. |
| 7 | + |
| 8 | +Built upon the secure foundation of Tezos layer 1, Etherlink delivers a fast, fair, and (nearly) free experience. |
| 9 | +This permissionless and censorship-resistant environment empowers developers to actively create and participate in the next generation of decentralized applications. |
| 10 | + |
| 11 | +More information can be found on the [Etherlink website](https://www.etherlink.com/) and [Etherlink docs](https://docs.etherlink.com/). |
| 12 | + |
| 13 | +## Bridging tokens |
| 14 | + |
| 15 | +You can move tokens in and out of Etherlink through a process called bridging. |
| 16 | +See these related pages for more information: |
| 17 | + |
| 18 | +- [Bridging XTZ between Tezos layer 1 and Etherlink](https://docs.etherlink.com/bridging/bridging-tezos) |
| 19 | +- [Bridging tokens between Etherlink and other EVM networks](https://docs.etherlink.com/bridging/bridging-evm) |
| 20 | +- [Bridging FA tokens between Tezos layer 1 and Etherlink](https://docs.etherlink.com/bridging/bridging-fa) |
| 21 | + |
| 22 | +### Etherlink FA Token Bridge |
| 23 | + |
| 24 | +To bridge assets from Tezos to Etherlink, we've used a helper stack provided by the Baking Bad team: |
| 25 | + |
| 26 | +- [Etherlink Bridge](https://github.com/ASCS-eV/etherlink-bridge) |
| 27 | + |
| 28 | +### Bridged token details |
| 29 | + |
| 30 | +#### Tezos |
| 31 | + |
| 32 | +- Token Contract: [KT1PCaD2kmgCHy15wQ1gpqZUy9RLxyBVJdTF](https://better-call.dev/ghostnet/KT1PCaD2kmgCHy15wQ1gpqZUy9RLxyBVJdTF) |
| 33 | +- Token ID: 1 |
| 34 | +- Deposit hash: [oojtGLnHuS8og5WGf8jF8EoxTbegfrXvpxzvyPiW2GYZFGbFLaJ](https://ghostnet.tzkt.io/oojtGLnHuS8og5WGf8jF8EoxTbegfrXvpxzvyPiW2GYZFGbFLaJ/21781492) |
| 35 | + |
| 36 | +#### Bridge |
| 37 | + |
| 38 | +- Ticketer Contract: [KT1EATXWJv2dHPWrSxbxAkjMWb3KByAn4sKd](https://better-call.dev/ghostnet/KT1EATXWJv2dHPWrSxbxAkjMWb3KByAn4sKd) |
| 39 | +- ERC 20 Proxy contract: [0x646B92C8f21e55DF67E766047E4bD7bEdF8DfA14](https://testnet.explorer.etherlink.com/address/0x646B92C8f21e55DF67E766047E4bD7bEdF8DfA14) |
| 40 | +- Token Bridge: [KT1WXQLq8fC7cShE3Q8PkZqu5xMGqYgbETDd]([KT1EATXWJv2dHPWrSxbxAkjMWb3KByAn4sKd](https://better-call.dev/ghostnet/KT1WXQLq8fC7cShE3Q8PkZqu5xMGqYgbETDd)) |
| 41 | + |
| 42 | +#### Etherlink |
| 43 | + |
| 44 | +- Deposit hash: [0xad0fa6b98b66bc19ab4936d1181697ac7f1e19755e1501e4e250434200a32cba](https://testnet.explorer.etherlink.com/tx/0xad0fa6b98b66bc19ab4936d1181697ac7f1e19755e1501e4e250434200a32cba) |
| 45 | +- Token: [0x646B92C8f21e55DF67E766047E4bD7bEdF8DfA14](https://testnet.explorer.etherlink.com/token/0x646B92C8f21e55DF67E766047E4bD7bEdF8DfA14) |
| 46 | + |
| 47 | +### Process |
| 48 | + |
| 49 | +We've used docker to run the bridge. |
| 50 | +But check the [Etherlink Bridge](https://github.com/baking-bad/etherlink-bridge) repo for more information on how to run the commands. |
| 51 | + |
| 52 | +- Setting up the token bridge: |
| 53 | + |
| 54 | + ``` sh |
| 55 | + docker run --rm etherlink-bridge bridge_token \ |
| 56 | + --token-address KT1PCaD2kmgCHy15wQ1gpqZUy9RLxyBVJdTF \ |
| 57 | + --token-type FA2 \ |
| 58 | + --token-id 1 \ |
| 59 | + --token-decimals 0 \ |
| 60 | + --token-symbol "TENVX" \ |
| 61 | + --token-name "HD Map" \ |
| 62 | + --tezos-private-key {INSERT TEZOS PRIVATE KEY} \ |
| 63 | + --tezos-rpc-url "https://rpc.tzkt.io/ghostnet" \ |
| 64 | + --etherlink-private-key {INSERT ETHERLINK PRIVATE KEY} \ |
| 65 | + --etherlink-rpc-url "https://node.ghostnet.etherlink.com" \ |
| 66 | + --skip-confirm |
| 67 | + ``` |
| 68 | + |
| 69 | + This command should give you a set of contract that you can use to bridge the token. |
| 70 | + |
| 71 | +- Depositing the token: |
| 72 | + |
| 73 | + ``` sh |
| 74 | + docker run --rm etherlink-bridge deposit \ |
| 75 | + --token-bridge-helper-address KT1WXQLq8fC7cShE3Q8PkZqu5xMGqYgbETDd \ |
| 76 | + --amount 1 \ |
| 77 | + --tezos-private-key {INSERT TEZOS PRIVATE KEY} \ |
| 78 | + --tezos-rpc-url "https://rpc.tzkt.io/ghostnet" \ |
| 79 | + --receiver-address 0xE2cb6C628cb379BE40322BbB85eBF46718350B06 \ |
| 80 | + --smart-rollup-address sr18wx6ezkeRjt1SZSeZ2UQzQN3Uc3YLMLqg |
| 81 | + ``` |
| 82 | + |
| 83 | +### Future outlook |
| 84 | + |
| 85 | +The FA2.1 contract contains a ticket export functionality which can be used to directly issue tickets. |
| 86 | +The payload for this must be at minimum an Ethereum address in [H160](https://docs.rs/ethereum-types/latest/ethereum_types/struct.H160.html) form. |
| 87 | +This would improve the efficiency and user experience but does not affect the result of the token being bridged to L2 Etherlink. |
0 commit comments