You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: pages/stack/differences.mdx
+28-4
Original file line number
Diff line number
Diff line change
@@ -11,6 +11,16 @@ import { Callout } from 'nextra/components'
11
11
OP Stack chains are designed to be [EVM equivalent](https://web.archive.org/web/20231127160757/https://medium.com/ethereum-optimism/introducing-evm-equivalence-5c2021deb306) and introduces as few changes as possible to the Ethereum protocol.
12
12
However, there are some minor differences between the behavior of Ethereum and OP Stack chains that developers should be aware of.
13
13
14
+
## Bridging
15
+
16
+
### Bridging - Deposit Transactions
17
+
18
+
Deposit transactions don't exist on L1's, and are how transactions on an L2 can be initiated from the L1. Importantly, this is how bridge applications can get L1 ETH or tokens into an L2 OP-Stack chain. You can read more on deposit transactions [here](/stack/protocol/rollup/deposit-flow).
19
+
20
+
### Bridging - Withdrawal Transactions and Fault Proofs
21
+
22
+
Withdrawal transactions are how the state of the L2 rollup can be proven to the L1. Often this involves users withdrawing tokens or ETH to the L1. Fault proofs are the mechanism by which withdrawal transactions are currently proven to the L1. You can read more about fault proofs [here](/stack/protocol/fault-proofs/explainer).
23
+
14
24
## Opcodes
15
25
16
26
| Opcode | Solidity Equivalent | Behavior |
@@ -55,13 +65,27 @@ In all other cases, the transaction sender address is set according to the same
55
65
Transactions on OP Stack chains must pay for an [L1 data fee](/stack/transactions/fees#the-l1-data-fee) on top of the standard [execution gas fee](/stack/transactions/fees#execution-gas-fee) you would expect on Ethereum.
56
66
Refer to the guide on [OP Stack Transaction Fees](/stack/transactions/fees) for more information.
57
67
58
-
### EIP-1559 Parameters
68
+
You can use the [JS library viem](https://viem.sh/op-stack) to estimate the entire transaction gas costs, including the L1 Data Fee.
69
+
70
+
### EIP-1559 parameters
59
71
60
72
The base fee on OP Stack is, like Ethereum, computed via the [EIP-1559](https://notes.ethereum.org/@vbuterin/eip-1559-faq) mechanism.
61
73
The EIP-1559 parameters used by OP Stack differ per chain.
62
74
63
75
### Mempool rules
64
76
65
-
By default, OP Stack chains do not have a large public mempool like Ethereum.
66
-
OP Stack mempools are typically only visible to the Sequencer of the given chain and transactions are generally executed in priority fee order (highest fee first).
67
-
This is not a required behavior and certain chains may choose to have a public mempool.
77
+
Unlike Ethereum, OP Stack chains do not have a public mempool.
78
+
The OP Stack mempool is currently only visible to the Sequencer.
79
+
The Sequencer executes transactions from the mempool in priority fee order (highest fee first).
80
+
81
+
## Chain Finality
82
+
83
+
Unlike L1s such as Ethereum OP-Stack chains have Unsafe, Safe, and Finalized Heads which indicate the state of finality for a given L2 block. Fault proofs do not impact the finalization of the L2 rollup, only the finalization of withdrawal transactions to the L1. You can read more about these [in the docs glossary](/resources/glossary#unsafe-l2-block).
84
+
85
+
## What's Next
86
+
87
+
There are various useful tools linked above. Here are a few more tools and links you may want to check out:
88
+
89
+
*[OP-viem](https://viem.sh/op-stack): JS framework that can handle many of these unique functions on OP-Chains. It is similar to Ethers.js for op-stack chains.
90
+
91
+
*[Specs](https://specs.optimism.io/root.html): For more in-depth technical explanations and examples.
0 commit comments