Skip to content

Commit ac6c0e5

Browse files
committed
superchain-weth
1 parent ea5c9ce commit ac6c0e5

File tree

5 files changed

+86
-13
lines changed

5 files changed

+86
-13
lines changed

pages/stack/interop/_meta.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,6 @@
22
"explainer": "Interop explainer",
33
"cross-chain-message": "Anatomy of cross-chain message",
44
"supersim": "Supersim Multichain Development Environment",
5-
"superchain-erc20": "SuperchainERC20 token standard"
5+
"superchain-erc20": "SuperchainERC20 token standard",
6+
"superchain-weth": "SuperchainWETH (Interoperable ETH)"
67
}

pages/stack/interop/cross-chain-message.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import Image from 'next/image'
99

1010
# Anatomy of a cross-chain message
1111

12-
A cross-chain message applies to any message sent across a chain. This applies to asset transfers using the [SuperchainERC20](https://specs.optimism.io/interop/token-bridging.html) token standard.
12+
A cross-chain message applies to any message sent across a chain. This applies to asset transfers using the [SuperchainERC20](superchain-erc20) token standard.
1313

1414
## How it works
1515

pages/stack/interop/explainer.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ Native OP Stack interoperability provides the ability to read messages and trans
2424
## Secure message passing
2525
Superchain interop includes both the protocol layer message passing and the Superchain ERC20 token specification.
2626

27-
* **Message passing protocol:** the initial + finalizing/executing [message](https://specs.optimism.io/interop/messaging.html) that fire events to be consumed by the chains in the [dependency set](https://specs.optimism.io/interop/dependency-set.html)
28-
* **SuperchainERC20 token specification**: the [SuperchainERC20](https://specs.optimism.io/interop/token-bridging.html) turns message passing into asset transfer between chains in the interop set. Learn more about how the SuperchainERC20 token standard enables asset interoperability in the Superchain [here](/stack/interop/superchain-erc20)
27+
* **Message passing protocol:** the initial + finalizing/executing [message](cross-chain-message) that fire events to be consumed by the chains in the [dependency set](https://specs.optimism.io/interop/dependency-set.html)
28+
* **SuperchainERC20 token specification**: the [SuperchainERC20](superchain-erc20) turns message passing into asset transfer between chains in the interop set. Learn more about how the SuperchainERC20 token standard enables asset interoperability in the Superchain [here](/stack/interop/superchain-erc20)
2929

3030
This means ETH and ERC-20s can seamlessly and securely move across L2s, and intent-based protocols (i.e., bridges) can build better experiences on top of the message passing protocol.
3131

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
---
2+
title: SuperchainWETH (Interoperable ETH)
3+
lang: en-US
4+
description: Learn basic details about the SuperchainWETH or Interoperable ETH.
5+
---
6+
7+
import { Callout } from 'nextra/components'
8+
9+
# SuperchainWETH (Interoperable ETH)
10+
11+
<Callout>
12+
Interop is currently in active development and not yet ready for production use. The information provided here may change. Check back regularly for the most up-to-date information.
13+
</Callout>
14+
15+
Superchain WETH or Interoperable ETH is a specialized version of the standard WETH (Wrapped Ether) contract designed to enable seamless movement of ETH across the Superchain. It addresses the liquidity constraints and usability issues that arise when transferring ETH between different chains.
16+
17+
## Features and benefits
18+
19+
* Enables seamless ETH transfers across different chains in the Superchain
20+
* Minimizes protocol complexity by treating ETH as an ERC-20 token
21+
* Maintains fungibility of ETH across the Superchain
22+
* Provides liquidity for cross-chain transactions
23+
* Supports interoperability between chains with different native assets (i.e., gas tokens)
24+
* Improves user experience by abstracting complex bridging processes
25+
26+
<Callout type="warning">
27+
`SuperchainWETH` requires `SuperchainTokenBridge` integration for full interoperable, cross-chain functionality.
28+
</Callout>
29+
30+
## How it works
31+
32+
Interoperable ETH (Superchain WETH) facilitates secure movement of ETH across the Superchain via `crosschainBurn` and `crosschainMint`.
33+
34+
* **`crosschainBurn`**: Facilitates cross-chain transfers by **burning** WETH. The user sends ETH to the `SuperchainWETH` contract. `SuperchainWETH` interacts with `ETHLiquidity` to burn the ETH and sends a cross-chain message via the `L2ToL2CrossDomainMessenger` to the destination chain.
35+
* **`crosschainMint`**: Mints WETH on the destination chain after a cross-chain transfer. The user receives ETH or WETH on the destination chain. If the destination is a non-custom gas token chain, ETH is sourced from the `ETHLiquidity` contract.
36+
37+
```mermaid
38+
sequenceDiagram
39+
participant User
40+
participant SuperchainWETH
41+
participant ETHLiquidity
42+
participant L2ToL2CrossDomainMessenger
43+
participant DestinationChain
44+
45+
User->>SuperchainWETH: Send ETH
46+
SuperchainWETH->>ETHLiquidity: Burn ETH
47+
SuperchainWETH->>L2ToL2CrossDomainMessenger: Send cross-chain message
48+
L2ToL2CrossDomainMessenger->>DestinationChain: Relay message
49+
DestinationChain->>SuperchainWETH: Call relayETH/relayERC20
50+
SuperchainWETH->>ETHLiquidity: Source ETH (if non-custom gas token chain)
51+
SuperchainWETH->>User: Receive ETH/WETH on destination chain
52+
```
53+
54+
This diagram illustrates the process where the user sends ETH to the `SuperchainWETH` contract which burns the ETH and sends a cross-chain message to the destination chain, enabling seamless cross-chain ETH transfers without the need for asset wrapping.
55+
56+
## Major components
57+
58+
### `SuperchainWETH` Contract
59+
60+
This contract implements the core functionality for wrapping, unwrapping, and cross-chain transfer of ETH. It integrates with the `SuperchainTokenBridge` for interoperable actions.
61+
* Contract address: `0x4200000000000000000000000000000000000024`
62+
63+
### `ETHLiquidity` Contract
64+
65+
A predeploy contract with a large pool of ETH that provides liquidity for cross-chain transfers. It allows "burning" and "minting" of ETH for cross-chain transfers.
66+
* Contract address: `0x4200000000000000000000000000000000000025`
67+
68+
### `L2ToL2CrossDomainMessenger` Contract
69+
70+
This predeploy contract facilitates general message passing between different chains in the Superchain. It also securely transfers ERC20 tokens between L2 chains.
71+
* Contract address: `0x4200000000000000000000000000000000000023`
72+
73+
<Callout type="info">
74+
`SuperchainWETH` implements strict access controls to ensure security (e.g., only `SuperchainWETH` can call `ETHLiquidity` functions).
75+
</Callout>
76+
77+
## Next steps
78+
79+
* Explore the [`SuperchainWETH`](https://specs.optimism.io/interop/superchain-weth.html) specs for in-depth implementation details.
80+
* Learn more about [cross-chain messages](cross-chain-message) and the [SuperchainERC20 token standard](superchain-erc20).
81+
* Review the [Superchain Interop Explainer](explainer) for answers to common questions about interoperability.

words.txt

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ Allocs
1111
allocs
1212
altda
1313
ANDI
14-
Ankr
1514
Apeworx
1615
Arweave
1716
authrpc
@@ -148,7 +147,6 @@ Holesky
148147
holesky
149148
IGNOREPRICE
150149
ignoreprice
151-
Immunefi
152150
implicity
153151
Inator
154152
inator
@@ -197,7 +195,6 @@ minsuggestedpriorityfee
197195
Mintable
198196
Mintplex
199197
MIPSEVM
200-
Mitigations
201198
Monitorism
202199
Moralis
203200
Mordor
@@ -291,8 +288,6 @@ Protip
291288
Proxied
292289
proxyd
293290
pseudorandomly
294-
Pyth
295-
Pyth's
296291
QRNG
297292
Quicknode
298293
quicknode
@@ -326,9 +321,6 @@ safedb
326321
Schnorr
327322
secp
328323
SELFDESTRUCT
329-
SEPOLIA
330-
Sepolia
331-
sepolia
332324
seqnr
333325
SEQUENCERHTTP
334326
sequencerhttp
@@ -396,7 +388,6 @@ VMDEBUG
396388
vmdebug
397389
VMODULE
398390
vmodule
399-
voxel
400391
wagmi
401392
Warpcast
402393
xlarge

0 commit comments

Comments
 (0)