refextract Espresso Wiki

Espresso Wiki

Espresso Systems

August 27, 2025
1 Espresso Confirmation Layer
1.1 Overview
1.2 Architecture
2 Confirmation Layer State
2.1 Overview
2.2 State Merkle Tree
2.3 State Database
3 State Transition Function
3.1 Overview
4 State Catchup
4.1 Overview
5 Chain Config
5.1 Overview
6 HotShot Consensus
6.1 Overview
6.2 View Protocol
6.3 Epoch Changes
6.4 Staking
6.5 Light Client
6.6 Protocol Upgrades
7 Networking
7.1 Overview
8 Protocol Upgrade
8.1 Overview
9 Staking
9.1 Overview
10 HotStuff
10.1 Overview
11 Stake Table Smart Contract
11.1 Overview
11.2 Transition from static stake table to proof of stake
12 Stake Table Contract Requirements
12.1 Validators
12.2 Delegators
12.3 Global Confirmation Layer (GCL)
12.4 Staking User Interface (UI)
12.5 Non-requirements
13 Rewards Requirements
14 Rewards
14.1 Overview
14.2 Types
14.3 Reward Distribution
14.4 APIs
14.5 Leader Selection
14.6 Claiming
15 Query Service Requirements
16 Query Service
16.1 Overview
16.2 Modular Architecture
16.3 Database Schema
16.4 Data Streaming And Updates
16.5 Fetching Missing Data
16.6 Pruning
17 Builder
17.1 Overview
17.2 Core Flow
17.3 View Lifecycle
17.4 Block Building
17.5 Builder State Refactor
18 Rollup Integration
18.1 Overview
19 Rollup Integration Requirements
20 List Of Rollup Stack Integrations
21 Arbitrum Nitro Integration
21.1 Overview
21.2 Components
22 Nitro Integration Requirements
23 Nitro Batcher
23.1 Overview
23.2 Key Management
23.3 Startup
23.4 SequencerInbox
23.5 Task 1: Sequencer Espresso
23.6 Task 2: Espresso L1
24 Nitro Caffeinated Node Watchdog
24.1 Overview
24.2 Force Inclusion Checker
24.3 State Checker
25 Nitro Caffeinated Node
25.1 Overview
25.2 Initialization
25.3 Starting Caff Node
25.4 Delayed Message Fetcher
25.5 Backfill
25.6 Get Messages In Range
25.7 Start Watch Delayed Messages
25.8 Create Block
25.9 NextMessage()
25.10 Publish Transaction
26 Nitro Caff Node Requirements
27 Nitro Espresso Streamer Requirements
28 Nitro Espresso Streamer
28.1 Overview
28.2 Parameters
28.3 Streaming Messages
28.4 Checkpoints
28.5 Low Level Functions
29 Espresso TEE Verifier
29.1 Overview
30 Espresso SGX TEE Verifier
30.1 Overview
31 Espresso AWS Nitro TEE Verifier
31.1 Overview
32 Arbitrum Nitro Sequencer Inbox
32.1 Overview
33 Nitro Espresso DA
33.1 Overview
33.2 Workflow
33.3 Batch Poster
33.4 DA Reader Design
33.5 Bypassing Batch Parsing
34 Nitro Decentralized Sequencing Requirements
35 Nitro Decentralized Sequencing
35.1 Overview
35.2 State Tracking
35.3 Sequencer Election
35.4 Sequencer Integration
35.5 Writing To Espresso
35.6 Delayed Sequencer
35.7 Espresso Streamer Changes
36 OP Stack Integration
36.1 Overview
36.2 High-Level Workflow
36.3 Components
36.4 Additional Considerations
36.5 Future Work
37 OP Integration Functions
37.1 Overview
37.2 Component Breakdown
38 Op Integration Requirements
39 Data Availability
39.1 Overview
39.2 CDN
39.3 DA Committee
39.4 VID
40 Settlement Layer
40.1 Overview
41 Rollup
41.1 Overview
42 Confirmation
42.1 Overview
43 Authenticated Data Structure
43.1 Overview
44 Merkle Tree
44.1 Overview
44.2 Universal Merkle Trees
44.3 Append-Only Merkle Trees
45 Append-only Merkle Tree
45.1 Overview
46 Universal Merkle Tree
46.1 Overview
47 Commitment
47.1 Overview
48 Commitment Scheme
48.1 Overview
Acronyms
Contents