Commit 861ae315 authored by Luca Donno's avatar Luca Donno Committed by GitHub

spec: fix typos (#2867)

Co-authored-by: default avatarMatthew Slipper <me@matthewslipper.com>
Co-authored-by: default avatarmergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
parent 8a335b7b
...@@ -4,8 +4,9 @@ ...@@ -4,8 +4,9 @@
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Token Depositing](#token-depositing) - [Standard Bridges](#standard-bridges)
- [Upgradability](#upgradability) - [Token Depositing](#token-depositing)
- [Upgradability](#upgradability)
<!-- END doctoc generated TOC please keep comment here to allow auto update --> <!-- END doctoc generated TOC please keep comment here to allow auto update -->
......
...@@ -22,18 +22,19 @@ with the authorization and validation conditions on L2. ...@@ -22,18 +22,19 @@ with the authorization and validation conditions on L2.
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [The Deposited Transaction Type](#the-deposited-transaction-type) - [Deposits](#deposits)
- [The Deposited Transaction Type](#the-deposited-transaction-type)
- [Source hash computation](#source-hash-computation) - [Source hash computation](#source-hash-computation)
- [Kinds of Deposited Transactions](#kinds-of-deposited-transactions) - [Kinds of Deposited Transactions](#kinds-of-deposited-transactions)
- [Validation and Authorization of Deposited Transactions](#validation-and-authorization-of-deposited-transactions) - [Validation and Authorization of Deposited Transactions](#validation-and-authorization-of-deposited-transactions)
- [Execution](#execution) - [Execution](#execution)
- [Nonce Handling](#nonce-handling) - [Nonce Handling](#nonce-handling)
- [L1 Attributes Deposited Transaction](#l1-attributes-deposited-transaction) - [L1 Attributes Deposited Transaction](#l1-attributes-deposited-transaction)
- [Special Accounts on L2](#special-accounts-on-l2) - [Special Accounts on L2](#special-accounts-on-l2)
- [L1 Attributes Depositor Account](#l1-attributes-depositor-account) - [L1 Attributes Depositor Account](#l1-attributes-depositor-account)
- [L1 Attributes Predeployed Contract](#l1-attributes-predeployed-contract) - [L1 Attributes Predeployed Contract](#l1-attributes-predeployed-contract)
- [L1 Attributes Predeployed Contract: Reference Implementation](#l1-attributes-predeployed-contract-reference-implementation) - [L1 Attributes Predeployed Contract: Reference Implementation](#l1-attributes-predeployed-contract-reference-implementation)
- [User-Deposited Transactions](#user-deposited-transactions) - [User-Deposited Transactions](#user-deposited-transactions)
- [Deposit Contract](#deposit-contract) - [Deposit Contract](#deposit-contract)
- [Address Aliasing](#address-aliasing) - [Address Aliasing](#address-aliasing)
- [Deposit Feed Contract: Reference Implementation](#deposit-feed-contract-reference-implementation) - [Deposit Feed Contract: Reference Implementation](#deposit-feed-contract-reference-implementation)
...@@ -254,8 +255,8 @@ feed contract][deposit-feed-contract] on L1. ...@@ -254,8 +255,8 @@ feed contract][deposit-feed-contract] on L1.
The deposit contract is deployed to L1. Deposited transactions are derived from the values in The deposit contract is deployed to L1. Deposited transactions are derived from the values in
the `TransactionDeposited` event(s) emitted by the deposit contract. the `TransactionDeposited` event(s) emitted by the deposit contract.
The deposit contract is responsible for maintaing the [guaranteed gas market](./guaranteed-gas-market.md), The deposit contract is responsible for maintaining the [guaranteed gas market](./guaranteed-gas-market.md),
charging deposits for gas to be used on L2, and ensuring that the total amount of guaranted charging deposits for gas to be used on L2, and ensuring that the total amount of guaranteed
gas in a single L1 block does not exceed the L2 block gas limit. gas in a single L1 block does not exceed the L2 block gas limit.
The deposit contract handles two special cases: The deposit contract handles two special cases:
......
...@@ -4,15 +4,16 @@ ...@@ -4,15 +4,16 @@
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Deposited transaction processing](#deposited-transaction-processing) - [L2 Execution Engine](#l2-execution-engine)
- [Deposited transaction processing](#deposited-transaction-processing)
- [Deposited transaction boundaries](#deposited-transaction-boundaries) - [Deposited transaction boundaries](#deposited-transaction-boundaries)
- [Engine API](#engine-api) - [Engine API](#engine-api)
- [`engine_forkchoiceUpdatedV1`](#engine_forkchoiceupdatedv1) - [`engine_forkchoiceUpdatedV1`](#engine_forkchoiceupdatedv1)
- [Extended PayloadAttributesV1](#extended-payloadattributesv1) - [Extended PayloadAttributesV1](#extended-payloadattributesv1)
- [`engine_newPayloadV1`](#engine_newpayloadv1) - [`engine_newPayloadV1`](#engine_newpayloadv1)
- [`engine_getPayloadV1`](#engine_getpayloadv1) - [`engine_getPayloadV1`](#engine_getpayloadv1)
- [Networking](#networking) - [Networking](#networking)
- [Sync](#sync) - [Sync](#sync)
- [Happy-path sync](#happy-path-sync) - [Happy-path sync](#happy-path-sync)
- [Worst-case sync](#worst-case-sync) - [Worst-case sync](#worst-case-sync)
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Glossary](#glossary)
- [General Terms](#general-terms) - [General Terms](#general-terms)
- [Layer 1 (L1)](#layer-1-l1) - [Layer 1 (L1)](#layer-1-l1)
- [Layer 2 (L2)](#layer-2-l2) - [Layer 2 (L2)](#layer-2-l2)
...@@ -200,7 +201,7 @@ all deposit-related terms. ...@@ -200,7 +201,7 @@ all deposit-related terms.
Notably, a *deposit* can refer to: Notably, a *deposit* can refer to:
- A [deposited transaction][deposited] (on L2) that is part of a [deposite block][deposit-block]. - A [deposited transaction][deposited] (on L2) that is part of a [deposit block][deposit-block].
- A [depositing call][depositing-call] that causes a [deposited transaction][deposited] to be derived. - A [depositing call][depositing-call] that causes a [deposited transaction][deposited] to be derived.
- The event/log data generated by the [depositing call][depositing-call], which is what the [rollup driver] reads to - The event/log data generated by the [depositing call][depositing-call], which is what the [rollup driver] reads to
derive the [deposited transaction][deposited]. derive the [deposited transaction][deposited].
......
...@@ -4,9 +4,10 @@ ...@@ -4,9 +4,10 @@
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Gas Stipend](#gas-stipend) - [Guaranteed Gas Fee Market](#guaranteed-gas-fee-market)
- [Limiting Guaranteed Gas](#limiting-guaranteed-gas) - [Gas Stipend](#gas-stipend)
- [Rationale for burning L1 Gas](#rationale-for-burning-l1-gas) - [Limiting Guaranteed Gas](#limiting-guaranteed-gas)
- [Rationale for burning L1 Gas](#rationale-for-burning-l1-gas)
<!-- END doctoc generated TOC please keep comment here to allow auto update --> <!-- END doctoc generated TOC please keep comment here to allow auto update -->
......
...@@ -4,20 +4,21 @@ ...@@ -4,20 +4,21 @@
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Foundations](#foundations) - [Introduction](#introduction)
- [Foundations](#foundations)
- [What is Ethereum scalability?](#what-is-ethereum-scalability) - [What is Ethereum scalability?](#what-is-ethereum-scalability)
- [What is an Optimistic Rollup?](#what-is-an-optimistic-rollup) - [What is an Optimistic Rollup?](#what-is-an-optimistic-rollup)
- [What is EVM Equivalence?](#what-is-evm-equivalence) - [What is EVM Equivalence?](#what-is-evm-equivalence)
- [🎶 All together now 🎶](#-all-together-now-) - [🎶 All together now 🎶](#-all-together-now-)
- [Protocol Guarantees](#protocol-guarantees) - [Protocol Guarantees](#protocol-guarantees)
- [Network Participants](#network-participants) - [Network Participants](#network-participants)
- [Users](#users) - [Users](#users)
- [Sequencers](#sequencers) - [Sequencers](#sequencers)
- [Verifiers](#verifiers) - [Verifiers](#verifiers)
- [Key Interaction Diagrams](#key-interaction-diagrams) - [Key Interaction Diagrams](#key-interaction-diagrams)
- [Depositing and Sending Transactions](#depositing-and-sending-transactions) - [Depositing and Sending Transactions](#depositing-and-sending-transactions)
- [Withdrawing](#withdrawing) - [Withdrawing](#withdrawing)
- [Next Steps](#next-steps) - [Next Steps](#next-steps)
<!-- END doctoc generated TOC please keep comment here to allow auto update --> <!-- END doctoc generated TOC please keep comment here to allow auto update -->
......
...@@ -4,12 +4,13 @@ ...@@ -4,12 +4,13 @@
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Message Passing](#message-passing) - [Cross Domain Messengers](#cross-domain-messengers)
- [Upgradability](#upgradability) - [Message Passing](#message-passing)
- [Message Versioning](#message-versioning) - [Upgradability](#upgradability)
- [Message Versioning](#message-versioning)
- [Message Version 0](#message-version-0) - [Message Version 0](#message-version-0)
- [Message Version 1](#message-version-1) - [Message Version 1](#message-version-1)
- [Backwards Compatibility Notes](#backwards-compatibility-notes) - [Backwards Compatibility Notes](#backwards-compatibility-notes)
<!-- END doctoc generated TOC please keep comment here to allow auto update --> <!-- END doctoc generated TOC please keep comment here to allow auto update -->
...@@ -19,7 +20,7 @@ the ability to replay cross domain messages and sit directly on top of the lower ...@@ -19,7 +20,7 @@ the ability to replay cross domain messages and sit directly on top of the lower
level system contracts responsible for cross domain messaging on L1 and L2. level system contracts responsible for cross domain messaging on L1 and L2.
The `CrossDomainMessenger` is extended to create both an The `CrossDomainMessenger` is extended to create both an
`L1CrossDomainMessenger` and well as a `L2CrossDomainMessneger`. `L1CrossDomainMessenger` and well as a `L2CrossDomainMessenger`.
These contracts are then extended with their legacy APIs to provide backwards These contracts are then extended with their legacy APIs to provide backwards
compatibility for applications that integrated before the Bedrock system compatibility for applications that integrated before the Bedrock system
upgrade. upgrade.
......
...@@ -4,12 +4,13 @@ ...@@ -4,12 +4,13 @@
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Architecture Design Goals](#architecture-design-goals) - [Optimism Overview](#optimism-overview)
- [Components](#components) - [Architecture Design Goals](#architecture-design-goals)
- [Components](#components)
- [L1 Components](#l1-components) - [L1 Components](#l1-components)
- [L2 Components](#l2-components) - [L2 Components](#l2-components)
- [Transaction/Block Propagation](#transactionblock-propagation) - [Transaction/Block Propagation](#transactionblock-propagation)
- [Key Interactions In Depth](#key-interactions-in-depth) - [Key Interactions In Depth](#key-interactions-in-depth)
- [Deposits](#deposits) - [Deposits](#deposits)
- [Block Derivation](#block-derivation) - [Block Derivation](#block-derivation)
- [Overview](#overview) - [Overview](#overview)
...@@ -56,7 +57,7 @@ deposits. ...@@ -56,7 +57,7 @@ deposits.
token deposits (tokens are locked on L1, then minted on L2 via a deposited transaction). token deposits (tokens are locked on L1, then minted on L2 via a deposited transaction).
- **BatchInbox**: An L1 address to which the Batch Submitter submits transaction batches. - **BatchInbox**: An L1 address to which the Batch Submitter submits transaction batches.
- Transaction batches include L2 transaction calldata, timestamps, and ordering information. - Transaction batches include L2 transaction calldata, timestamps, and ordering information.
- The BatchInbox is a regular EOA address. This lets us pass on gast cost savings by not executing any EVM code. - The BatchInbox is a regular EOA address. This lets us pass on gas cost savings by not executing any EVM code.
- **L2OutputOracle**: A smart contract that stores [L2 output roots](./glossary.md#l2-output) for use with withdrawals - **L2OutputOracle**: A smart contract that stores [L2 output roots](./glossary.md#l2-output) for use with withdrawals
and fault proofs. and fault proofs.
...@@ -91,7 +92,7 @@ Since the EE uses Geth under the hood, Optimism uses Geth's built-in peer-to-pee ...@@ -91,7 +92,7 @@ Since the EE uses Geth under the hood, Optimism uses Geth's built-in peer-to-pee
propagate transactions. The same network can also be used to propagate submitted blocks and support snap-sync. propagate transactions. The same network can also be used to propagate submitted blocks and support snap-sync.
Unsubmitted blocks, however, are propagated using a separate peer-to-peer network of Rollup Nodes. This is optional, Unsubmitted blocks, however, are propagated using a separate peer-to-peer network of Rollup Nodes. This is optional,
however, and is provided as a convnience to lower latency for verifiers and their JSON-RPC clients. however, and is provided as a convenience to lower latency for verifiers and their JSON-RPC clients.
The below diagram illustrates how the sequencer and verifiers fit together: The below diagram illustrates how the sequencer and verifiers fit together:
...@@ -175,7 +176,7 @@ derivation function performs the following steps: ...@@ -175,7 +176,7 @@ derivation function performs the following steps:
3. Submits the payload attributes to the Engine API, where they are converted into blocks and added to the canonical 3. Submits the payload attributes to the Engine API, where they are converted into blocks and added to the canonical
chain. chain.
This process is then repeated with incrementing epohcs until the tip of L1 is reached. This process is then repeated with incrementing epochs until the tip of L1 is reached.
### Engine API ### Engine API
......
...@@ -4,20 +4,21 @@ ...@@ -4,20 +4,21 @@
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Overview](#overview) - [Predeploys](#predeploys)
- [OVM\_L2ToL1MessagePasser](#ovm%5C_l2tol1messagepasser) - [Overview](#overview)
- [OVM\_DeployerWhitelist](#ovm%5C_deployerwhitelist) - [OVM\_L2ToL1MessagePasser](#ovm_l2tol1messagepasser)
- [OVM\_ETH](#ovm%5C_eth) - [OVM\_DeployerWhitelist](#ovm_deployerwhitelist)
- [WETH9](#weth9) - [OVM\_ETH](#ovm_eth)
- [L2CrossDomainMessenger](#l2crossdomainmessenger) - [WETH9](#weth9)
- [L2StandardBridge](#l2standardbridge) - [L2CrossDomainMessenger](#l2crossdomainmessenger)
- [SequencerFeeVault](#sequencerfeevault) - [L2StandardBridge](#l2standardbridge)
- [OptimismMintableTokenFactory](#optimismmintabletokenfactory) - [SequencerFeeVault](#sequencerfeevault)
- [L1BlockNumber](#l1blocknumber) - [OptimismMintableTokenFactory](#optimismmintabletokenfactory)
- [OVM\_GasPriceOracle](#ovm%5C_gaspriceoracle) - [L1BlockNumber](#l1blocknumber)
- [Reserved System Address 1](#reserved-system-address-1) - [OVM\_GasPriceOracle](#ovm_gaspriceoracle)
- [Reserved System Address 2](#reserved-system-address-2) - [Reserved System Address 1](#reserved-system-address-1)
- [L1Block](#l1block) - [Reserved System Address 2](#reserved-system-address-2)
- [L1Block](#l1block)
<!-- END doctoc generated TOC please keep comment here to allow auto update --> <!-- END doctoc generated TOC please keep comment here to allow auto update -->
...@@ -161,7 +162,7 @@ interface iOVM_ETH { ...@@ -161,7 +162,7 @@ interface iOVM_ETH {
```solidity ```solidity
interface WETH9 { interface WETH9 {
function name() public returns (string); function name() public returns (string);
funcion symbol() public returns (string); function symbol() public returns (string);
function decimals public returns (uint8); function decimals public returns (uint8);
event Approval(address indexed src, address indexed guy, uint wad); event Approval(address indexed src, address indexed guy, uint wad);
...@@ -254,7 +255,7 @@ interface iOVM_L1BlockNumber { ...@@ -254,7 +255,7 @@ interface iOVM_L1BlockNumber {
The `OVM_GasPriceOracle` is pushed the L1 basefee and the L2 gas price by The `OVM_GasPriceOracle` is pushed the L1 basefee and the L2 gas price by
an offchain actor. The offchain actor observes the L1 blockheaders to get the an offchain actor. The offchain actor observes the L1 blockheaders to get the
L1 basefee as well as the gas usage on L2 to compute what the L2 gas price L1 basefee as well as the gas usage on L2 to compute what the L2 gas price
should be based on a congenstion control algorithm. should be based on a congestion control algorithm.
Its usage to be pushed the L2 gas price by an offchain actor is deprecated in Its usage to be pushed the L2 gas price by an offchain actor is deprecated in
Bedrock, but it is still used to hold the `overhead`, `scalar`, and `decimals` Bedrock, but it is still used to hold the `overhead`, `scalar`, and `decimals`
...@@ -336,7 +337,7 @@ Reserved for future use. ...@@ -336,7 +337,7 @@ Reserved for future use.
[l1-block-predeploy]: glossary.md#l1-block-predeployed-contract [l1-block-predeploy]: glossary.md#l1-block-predeployed-contract
The [L1Block](l1-block-predeploy) was introduced in Bedrock and is responsible for The [L1Block](l1-block-predeploy) was introduced in Bedrock and is responsible for
mainting L1 context in L2. This allows for L1 state to be accessed in L2. maintaining L1 context in L2. This allows for L1 state to be accessed in L2.
```solidity ```solidity
interface L1Block { interface L1Block {
......
...@@ -9,12 +9,13 @@ ...@@ -9,12 +9,13 @@
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Proposing L2 Output Commitments](#proposing-l2-output-commitments) - [L2 Output Root Proposals Specification](#l2-output-root-proposals-specification)
- [L2 Output Commitment Construction](#l2-output-commitment-construction) - [Proposing L2 Output Commitments](#proposing-l2-output-commitments)
- [L2 Output Oracle Smart Contract](#l2-output-oracle-smart-contract) - [L2 Output Commitment Construction](#l2-output-commitment-construction)
- [Security Considerations](#security-considerations) - [L2 Output Oracle Smart Contract](#l2-output-oracle-smart-contract)
- [Security Considerations](#security-considerations)
- [L1 Reorgs](#l1-reorgs) - [L1 Reorgs](#l1-reorgs)
- [Summary of Definitions](#summary-of-definitions) - [Summary of Definitions](#summary-of-definitions)
- [Constants](#constants) - [Constants](#constants)
<!-- END doctoc generated TOC please keep comment here to allow auto update --> <!-- END doctoc generated TOC please keep comment here to allow auto update -->
......
...@@ -29,7 +29,8 @@ and are adopted by several other blockchains, most notably the [L1 consensus lay ...@@ -29,7 +29,8 @@ and are adopted by several other blockchains, most notably the [L1 consensus lay
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [P2P configuration](#p2p-configuration) - [Rollup-node P2P interface](#rollup-node-p2p-interface)
- [P2P configuration](#p2p-configuration)
- [Identification](#identification) - [Identification](#identification)
- [Discv5](#discv5) - [Discv5](#discv5)
- [Structure](#structure) - [Structure](#structure)
...@@ -50,7 +51,7 @@ and are adopted by several other blockchains, most notably the [L1 consensus lay ...@@ -50,7 +51,7 @@ and are adopted by several other blockchains, most notably the [L1 consensus lay
- [Heartbeat and parameters](#heartbeat-and-parameters) - [Heartbeat and parameters](#heartbeat-and-parameters)
- [Topic configuration](#topic-configuration) - [Topic configuration](#topic-configuration)
- [Topic validation](#topic-validation) - [Topic validation](#topic-validation)
- [Gossip Topics](#gossip-topics) - [Gossip Topics](#gossip-topics)
- [`blocks`](#blocks) - [`blocks`](#blocks)
- [Block encoding](#block-encoding) - [Block encoding](#block-encoding)
- [Block signatures](#block-signatures) - [Block signatures](#block-signatures)
......
...@@ -44,6 +44,7 @@ currently only concerned with the specification of the rollup driver. ...@@ -44,6 +44,7 @@ currently only concerned with the specification of the rollup driver.
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Rollup Node Specification](#rollup-node-specification)
- [L2 Chain Derivation](#l2-chain-derivation) - [L2 Chain Derivation](#l2-chain-derivation)
- [From L1 Sequencing Window to L2 Payload Attributes](#from-l1-sequencing-window-to-l2-payload-attributes) - [From L1 Sequencing Window to L2 Payload Attributes](#from-l1-sequencing-window-to-l2-payload-attributes)
- [Reading L1 inputs](#reading-l1-inputs) - [Reading L1 inputs](#reading-l1-inputs)
...@@ -329,7 +330,7 @@ after the L1 block that generated it. This is a duration of approximately 7 days ...@@ -329,7 +330,7 @@ after the L1 block that generated it. This is a duration of approximately 7 days
as the "fault proof window", as after this time the block can no longer be challenged by a fault proof. as the "fault proof window", as after this time the block can no longer be challenged by a fault proof.
L1 Ethereum reaches [finality][l1-finality] approximately every [12.8 minutes][consensus-time-params]. L2 blocks L1 Ethereum reaches [finality][l1-finality] approximately every [12.8 minutes][consensus-time-params]. L2 blocks
generated from finalized L1 blocksare "safer" than most recent L2 blocks because they will never disappear from the generated from finalized L1 blocks are "safer" than most recent L2 blocks because they will never disappear from the
chain's history because of a re-org. However, they can still be challenged by a fault proof until the end of the fault chain's history because of a re-org. However, they can still be challenged by a fault proof until the end of the fault
proof window. proof window.
......
...@@ -33,17 +33,18 @@ finalization. ...@@ -33,17 +33,18 @@ finalization.
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** **Table of Contents**
- [Withdrawal Flow](#withdrawal-flow) - [Withdrawals](#withdrawals)
- [Withdrawal Flow](#withdrawal-flow)
- [On L2](#on-l2) - [On L2](#on-l2)
- [On L1](#on-l1) - [On L1](#on-l1)
- [The L2ToL1MessagePasser Contract](#the-l2tol1messagepasser-contract) - [The L2ToL1MessagePasser Contract](#the-l2tol1messagepasser-contract)
- [Address Aliasing](#address-aliasing) - [Addresses are not Aliased on Withdrawals](#addresses-are-not-aliased-on-withdrawals)
- [The Optimism Portal Contract](#the-optimism-portal-contract) - [The Optimism Portal Contract](#the-optimism-portal-contract)
- [Withdrawal Verification and Finalization](#withdrawal-verification-and-finalization) - [Withdrawal Verification and Finalization](#withdrawal-verification-and-finalization)
- [Security Considerations](#security-considerations) - [Security Considerations](#security-considerations)
- [Key Properties of Withdrawal Verification](#key-properties-of-withdrawal-verification) - [Key Properties of Withdrawal Verification](#key-properties-of-withdrawal-verification)
- [Handling Successfully Verified Messages That Fail When Relayed](#handling-successfully-verified-messages-that-fail-when-relayed) - [Handling Successfully Verified Messages That Fail When Relayed](#handling-successfully-verified-messages-that-fail-when-relayed)
- [Summary of Definitions](#summary-of-definitions) - [Summary of Definitions](#summary-of-definitions)
- [Constants](#constants) - [Constants](#constants)
<!-- END doctoc generated TOC please keep comment here to allow auto update --> <!-- END doctoc generated TOC please keep comment here to allow auto update -->
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment