the mempool goes dark.

transactions travel as 48-byte sealed capsules. builders order what they cannot read. when the block is final, the whole batch opens at once, and the sandwich never had anything to see.

public mempool · today
bot 0xee…42buy first · same pool
from 0x8a…f3Uniswap
swap 12.4 ETH → USDC
slippage 0.5% · gas 34 gwei
-$412
bot 0xee…42sell after · pockets the spread
from 0x41…9cAave
repay 8,200 USDC
gas 22 gwei
from 0xd2…07Uniswap
swap 950 USDC → WBTC
slippage 0.3% · gas 28 gwei
from 0x6b…e1ENS
register vault.eth
gas 19 gwei
everything readable · anyone can act first
encrypted mempool cue: block 23,401,882 batch open · everyone hears it at once
slot 27 a1c9…e2 block 23,401,882 1.2 kb
sender 0x8a…f3gas 210k shares 0/5
payload sealed swap 12.4 ETH → USDC · slippage 0.5% ✓ verified
slot 09 7f04…b8 block 23,401,882 0.9 kb
sender 0x41…9cgas 96k shares 0/5
payload sealed repay 8,200 USDC to Aave ✓ verified
slot 41 c35a…11 block 23,401,882 1.4 kb
sender 0xd2…07gas 184k shares 0/5
payload sealed swap 950 USDC → WBTC · slippage 0.3% ✓ verified
slot 55 02de…9f block 23,401,882 0.8 kb
sender 0x6b…e1gas 61k shares 0/5
payload sealed register vault.eth ✓ verified
envelope visible · payload sealed · nothing to front-run opened together · already in fixed order

the searcher's problem is not made harder. it is made empty.

$1.8B+1
drained from ethereum users since 2020 via MEV
$100B+2
volume already routed through paid, private (not encrypted) protection
~3 min3
today's only live threshold mempool's average inclusion time

¹ Shutter / Primev, 2025 (cumulative since 2020) · ² Flashbots Protect + MEV Blocker protected volume · ³ Shutter on Gnosis, Oct 2025

how the public mempool takes your money

the same swap in a normal, readable mempool. three moves, and the searcher wins.

1
25,000 USDC ETH

your order is public

exposed

on a normal chain your swap waits in the public mempool in plain sight. anyone watching, including automated searchers, can read the amount, the direction, and the price you are willing to accept, all before it executes.

you swap25,000 USDC to ETH
you accept as low as8.1316 ETH
the searcher seesall of it
2
searcher buys
your swap
next in line…

the searcher jumps ahead

front-run

seeing your trade coming, the searcher places its own buy just ahead of yours. that pushes the pool price up, so your swap is now lined up to fill at a worse rate than you were quoted.

front-runplaced just ahead of your swap
effectprice pushed against you
3
searcher buys
your swap
searcher sells

you fill worse, it takes the spread

sandwiched

your swap executes at the price the searcher left behind, and the searcher immediately sells back into it. you receive less than your quote, and that difference, sized to your own slippage limit, is what the sandwich costs you.

you received8.1316 ETH
you were quoted8.1725 ETH
lost to the sandwich$103.78
on-chain

how peal keeps your order private

four steps, and every value below is a real artifact from your swap, verifiable on-chain.

1
b8fe…fa

encrypted on your device

private

your order is encrypted on your own device before it reaches the network. the amount, the direction, and the token stay sealed inside a ciphertext addressed to the committee's key. no relayer, no node, and no operator ever sees it in the clear.

ciphertext
the searcher seesnothing readable
2

hidden inside a batch

unlinkable

the ciphertext drops into a fixed batch of 64 slots. the other slots are indistinguishable decoys, so no observer can tell how many real orders are inside, or which slot is yours. your size, your timing, and your intent disappear into the crowd.

this batch1 real + 63 decoys = 64 slots
your slotindistinguishable from the rest
3
2/3

sealed to a distributed committee

t-of-n

the power to open your batch is split across a committee of independent operators, none of them trusted. any 3 of the 5 can open it together, and only once the cue fires. no single operator, and no group smaller than the quorum, can read your order early.

committeeany 3 of 5
params digest
committed
4

revealed and proven on-chain

verifiable

at the cue, a quorum of operators each return one 48-byte share. together they open the whole batch at once, after the ordering is already fixed, so there is nothing left to front-run. every share is checked with a public pairing equation, and the settlement contract re-derives the batch's merkle root and rejects any mismatch.

shares5 of 5 verified
batch opened1 real order, together
merkle root
settled
verify the full batch, every slot, share and timing →

why batched

the moat is one 48-byte value

per-transaction thresholdper-epoch thresholdbatched threshold (peal)
committee trafficone share per tx · O(n·B)one key per epochone 48-byte value per operator · O(n)
unincluded txsstay privateexposed at epoch key dropstay private
slot/epoch bindingnonerequirednone
reveal latencygrows with loadepoch-bound~1s finalize · precompute hidden
per-tx · O(n·B) batched · O(n) batch

"the shutter team anticipates that batched threshold encryption (BTE) is a potential way to address the drawbacks of both per-epoch and per-transaction schemes."

shutter, who run today's live threshold mempool on a per-epoch design, oct 2025

seal now. reveal on cue.