Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ All notable changes to the EthSystems Map are documented here.

## [Unreleased]

- fix(approach): Phase 1 review of [Private Transaction Broadcasting](approaches/approach-private-broadcasting.md) for the encrypted mempool cycle, with a new Private Relay sub-approach.
- fix: review of the patterns, vendors and use cases it links. [Threshold-Encrypted Mempool](patterns/pattern-threshold-encrypted-mempool.md) censorship resistance moves from `high` to `medium`.
- fix: factual audit of the [Private FX](use-cases/private-fx.md) entry.
- fix: factual audit of the [Private Repo](use-cases/private-repo.md) entry and the Private Trade Settlement cards it builds on.
- fix: factual audit of the [Private Identity](use-cases/private-identity.md) entry and the cards one hop out.
Expand Down
14 changes: 14 additions & 0 deletions GLOSSARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,14 @@ A dedicated network or service that publishes and stores the data required for D

**Relayer**: Third party that submits transactions on behalf of users to hide identity

**Mempool**: The set of signed transactions a node holds before they are included in a block. The public mempool is gossiped between nodes, so pending transactions are visible to anyone running one.

**Block Builder**: Entity that orders transactions into an execution payload and bids for a proposer to publish it. Under ePBS ([EIP-7732](https://eips.ethereum.org/EIPS/eip-7732)) builders are staked in-protocol participants.

**MEV (Maximal Extractable Value)**: Value a block builder or searcher can capture by including, excluding or reordering transactions, for example by front-running or sandwiching a pending trade.

**Private Relay**: Endpoint that accepts signed transactions and forwards them to selected block builders instead of the public mempool. It hides pending transactions from public observers, not from the relay or the builders.

**Paymaster**: ERC-4337 entity that defines how gas fees for user operations are paid or sponsored. It allows us to implement controlled gasless flows or internal fee routing.

### L2 Categories
Expand Down Expand Up @@ -81,6 +89,10 @@ A dedicated network or service that publishes and stores the data required for D

**[EIP-7805](https://eips.ethereum.org/EIPS/eip-7805)**: Fork Choice Inclusion Lists (FOCIL) standard for censorship resistance through committee-enforced transaction inclusion

**[EIP-7732](https://eips.ethereum.org/EIPS/eip-7732)**: Enshrined Proposer-Builder Separation (ePBS). The proposer commits to a builder's signed bid in the beacon block, and the builder reveals the payload afterwards. Scheduled for the Glamsterdam upgrade.

**[EIP-8184](https://eips.ethereum.org/EIPS/eip-8184)**: LUCID, a Draft proposal for an encrypted mempool on Ethereum. Sealed transactions are committed in a block before their decryption keys are released.

**[EIP-7701](https://eips.ethereum.org/EIPS/eip-7701)**: Native account abstraction standard enabling custom account validation logic, institutional key management, and ZK-based privacy systems

**[ERC-7945](https://ercs.ethereum.org/ERCS/erc-7945)**: Standard for confidential token transfers using cryptographic commitments to hide balances and amounts
Expand All @@ -103,6 +115,8 @@ A dedicated network or service that publishes and stores the data required for D

**Shielded Pool**: Privacy mechanism using cryptographic commitments to hide transaction details

**Encrypted Mempool**: Mempool in which transactions stay encrypted until their ordering is committed. A threshold committee, or another key publisher, releases the decryption key afterwards.

**Confidential Contract**: Smart contract that operates on encrypted state while maintaining verifiability

**Circom/Groth16**: Popular zero-knowledge proof system and domain-specific language
Expand Down
106 changes: 74 additions & 32 deletions approaches/approach-private-broadcasting.md

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion domains/trading.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,11 @@ description: "Execute and settle without leaking intent, size, or counterparties
## Approaches
- [Approach: Atomic DvP Settlement](../approaches/approach-dvp-atomic-settlement.md)
- [Approach: Private Trade Settlement](../approaches/approach-private-trade-settlement.md)
- [Approach: Private Transaction Broadcasting](../approaches/approach-private-broadcasting.md)

## Shortest-path patterns
- [Pre-trade privacy (Shutter/SUAVE)](../patterns/pattern-pretrade-privacy-encryption.md)
- [Pre-trade privacy (encrypted order flow)](../patterns/pattern-pretrade-privacy-encryption.md)
- [Threshold-encrypted mempool](../patterns/pattern-threshold-encrypted-mempool.md)
- [Atomic DvP via ERC-7573](../patterns/pattern-dvp-erc7573.md)
- [Shielding](../patterns/pattern-shielding.md)
- [Commit-and-Prove fallback](../patterns/pattern-commit-and-prove.md)
Expand Down
10 changes: 6 additions & 4 deletions patterns/pattern-focil-eip7805.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ status: ready
maturity: testnet
type: standard
layer: L1
last_reviewed: 2026-06-18
last_reviewed: 2026-10-27

works-best-when:
- Censorship resistance is critical and must not depend on builder honesty.
Expand All @@ -27,7 +27,7 @@ crops_profile:
crops_context:
cr: "Reaches `high` through a 1-of-16 committee honesty assumption: a single honest IL committee member suffices to force-include a transaction. Drops if the P2P gossip network is partitioned or if committee selection is subverted."
o: "Fully open specification (EIP-7805) implemented in consensus layer clients. Any staked validator rotates through the committee, and any node can verify IL satisfaction."
p: "No privacy: transaction details remain fully visible in the mempool and on chain. Could reach `partial` by combining with encrypted mempools so inclusion lists carry ciphertexts rather than plaintext transactions."
p: "No privacy: transaction details remain fully visible in the mempool and on chain. Would reach `partial` if inclusion lists carried sealed transactions, as LUCID (EIP-8184, Draft) proposes."
s: "Inherits the security of Ethereum consensus. Fork-choice enforcement means non-compliant blocks cannot become canonical, so the guarantee is as strong as the underlying finality mechanism."

post_quantum:
Expand All @@ -50,7 +50,7 @@ open_source_implementations:

## Intent

Prevent censorship of Ethereum transactions by sophisticated block builders. A committee of 16 validators per slot can force-include transactions in the next block; non-compliant blocks fail fork-choice and cannot reach finality. The pattern provides no privacy on its own: transactions remain fully visible in the mempool and on chain. It guarantees only that a transaction cannot be censored once it reaches the public mempool.
Prevent censorship of Ethereum transactions by sophisticated block builders. A committee of 16 validators per slot can force-include transactions in the next block; non-compliant blocks fail fork-choice and cannot reach finality. The pattern provides no privacy on its own: transactions remain fully visible in the mempool and on chain. It guarantees only that a transaction cannot be censored once it reaches the public mempool. FOCIL is scheduled for inclusion in the Hegotá upgrade, estimated for mid-2027.

## Components

Expand Down Expand Up @@ -85,7 +85,7 @@ Threat model:
- At least one honest and well-connected IL committee member per slot; the P2P network reliably delivers their list before the view-freeze deadline.
- Non-malicious builder with sufficient bandwidth between view freeze (t=9s) and block broadcast; builders disconnected from the committee can miss IL transactions.
- No privacy protection. Transaction details remain publicly visible throughout the process.
- Out of scope: builders that censor the entire mempool before any committee member sees a transaction; encrypted mempools are required to defend against that.
- Out of scope: transactions sent privately to builders never reach the public mempool, so inclusion lists do not cover them. Until sealed transactions can be listed (LUCID), a sender chooses between pre-inclusion privacy and FOCIL's inclusion guarantee.

## Trade-offs

Expand All @@ -103,3 +103,5 @@ A bank submits a €5M stablecoin transfer to the public mempool at t=0s of slot

- [EIP-7547: forward inclusion lists](https://eips.ethereum.org/EIPS/eip-7547) for a one-slot-delay alternative
- [Private Payments Approach](../approaches/approach-private-payments.md)
- [EIP-8184: LUCID encrypted mempool](https://eips.ethereum.org/EIPS/eip-8184), which extends inclusion lists to sealed transactions
- [Private Transaction Broadcasting Approach](../approaches/approach-private-broadcasting.md)
2 changes: 1 addition & 1 deletion patterns/pattern-network-anonymity.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ status: ready
maturity: concept
type: meta
layer: offchain
last_reviewed: 2026-04-22
last_reviewed: 2026-10-27

works-best-when:
- Metadata leakage (IP, timing, query patterns) is a threat model concern.
Expand Down
10 changes: 5 additions & 5 deletions patterns/pattern-pretrade-privacy-encryption.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ status: ready
maturity: testnet
type: meta
layer: hybrid
last_reviewed: 2026-06-17
last_reviewed: 2026-10-27

sub_patterns:
- name: "Threshold-encrypted mempool"
Expand Down Expand Up @@ -60,9 +60,9 @@ related_patterns:
see_also: [pattern-private-pvp-stablecoins-erc7573, pattern-dvp-erc7573]

open_source_implementations:
- url: https://github.com/shutter-network/shutter
description: "Threshold-encrypted mempool reference implementation"
language: "Rust, Go"
- url: https://github.com/shutter-network/rolling-shutter
description: "Threshold-encrypted mempool reference implementation (Shutter keyper, production on Gnosis Chain)"
language: Go
- url: https://github.com/flashbots/suave-geth
description: "Private builder and confidential compute environment for order flow (archived 2025; historical reference)"
language: "Go"
Expand Down Expand Up @@ -123,5 +123,5 @@ Threat model:
## See also

- [Shutter Network docs](https://docs.shutter.network/docs/shutter/research/the_road_towards_an_encrypted_mempool_on_ethereum)
- [SUAVE overview](https://writings.flashbots.net/the-future-of-mev-is-suave)
- [SUAVE overview](https://writings.flashbots.net/the-future-of-mev-is-suave) (historical: SUAVE is archived)
- [Flashbots documentation](https://docs.flashbots.net/)
10 changes: 5 additions & 5 deletions patterns/pattern-private-transaction-broadcasting.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ status: ready
maturity: production
type: standard
layer: hybrid
last_reviewed: 2026-06-17
last_reviewed: 2026-10-27

works-best-when:
- Transaction content must stay hidden from the public mempool until block inclusion to prevent MEV extraction.
Expand Down Expand Up @@ -84,18 +84,18 @@ Guarantees:

Threat model:

- In the relay variant: a colluding relay or builder can observe content; protection reduces to contractual and reputational enforcement.
- In the relay variant: a colluding relay or builder can observe content; protection reduces to contractual and reputational enforcement. The relay or RPC endpoint also sees the submitter's IP address unless submission goes through a network anonymity layer.
- In the threshold variant: a committee above the decryption threshold can reveal content before inclusion, defeating the guarantee.
- Sender address and gas payer are typically visible during the pending phase.
- FOCIL inclusion lists are built from the public mempool, so once FOCIL ships (Hegotá) a privately routed transaction does not get its inclusion guarantee.
- A fallback to the public mempool on relay unavailability can silently leak the transaction; the fallback policy must be explicit.
- Post-inclusion transaction details are fully public; this pattern does not provide shielded amounts or counterparties.

## Trade-offs

- Block-inclusion latency overhead in the tens to low hundreds of milliseconds, plus a decryption step for the threshold variant.
- Inclusion priority depends on the relay's agreements with builders; private routes may see higher variance in inclusion time than direct builder submissions.
- A privately routed transaction is included only when a builder it reached wins the slot. Three builders produced about 88% of MEV-Boost blocks in late September 2026 ([relayscan](https://www.relayscan.io/)), so the relay's builder coverage sets inclusion latency.
- Relay coverage varies over time; users should monitor live coverage metrics rather than assume a fixed figure.
- The threshold variant requires a decryption committee infrastructure and adds a liveness dependency.
- The threshold variant adds a key-release step after commitment, a decryption committee to operate, and a liveness dependency.
- Cost model varies: some relay services are free, others take a share of MEV or charge fees.

## Example
Expand Down
Loading
Loading