Workspace IndexDev Notes › What encryption does not hide

#41PoC

What encryption does not hide

Two competing encrypted-mempool EIPs leave the sender, the gas, and the size in plaintext. Measure how much of the sandwich survives on metadata alone.

Not yet scoped — read EIP-8105's plaintext envelope field list first, then the Ethereum protocol pattern page's leakage paragraph, and check the two against each other. Sources: the 2026-08-19 "Encrypt the Mempool" call (cryptoslate.com), eips.ethereum.org/EIPS/eip-8105, EIP-8184 (LUCID), ethsystems.org threshold-encrypted-mempool pattern, Shutter Network on Gnosis Chain.

Why

The briefing reads as if the question is still open — developers will meet, encryption is being considered, no scheme is ready. Two of those are true and one is not. There are already two competing drafts on the table: EIP-8105, which enshrines a technology-agnostic key-provider layer, and EIP-8184 (LUCID), which makes the builder commit to sealed payloads before it can read them. So the design space is no longer "should we"; it is "which failure do we accept." And the failure worth naming is not cryptographic strength. EIP-8105's envelope stays in the clear by construction — chain ID, nonce, priority fee, max fee, gas amount, key provider ID, key ID, and the signature components, which means the sender is recoverable. Ethereum's own pattern documentation states the consequence without hedging: size, gas limit, and sender address remain visible before decryption and can still enable inference attacks on large or identifiable trades. A sandwich bot does not need your calldata to know that a known DEX router address just posted an unusually large gas limit and bid aggressively to get in. It needs to know that a big trade is coming and roughly how big. Encryption removes the exact number and leaves the shape. So the claim worth testing is not whether encrypted mempools work; it is how much of the extracted profit the leftover metadata still funds. That number decides whether this is a fix or a tax.

How it works

Three measurements, cheapest first. One, the residual-MEV replay. Take a window of historical mainnet blocks, strip every transaction down to only the fields EIP-8105 leaves in plaintext — sender, nonce, gas amount, priority fee, max fee — and try to select the sandwichable ones from that alone. Score the selection against the sandwiches actually extracted in the same window; the relay and bundle plumbing the live pbs card already built is the labelling path, so this is analysis on top of existing infrastructure rather than new infrastructure. The output is one fraction: the share of extracted profit a metadata-only adversary could still have targeted. Publish it whichever way it comes out — a low number is the strongest possible argument for the EIPs, and a high one is the strongest argument against calling this solved. Two, the two-block bill. EIP-8105 executes the envelope in one block (nonce incremented, fees paid) and the decrypted payload in the next, and the fee is paid even when decryption fails. So encryption costs a block of latency plus a failure mode where the user pays for nothing, against a status quo where routing through a private relay costs zero at the point of use. Model the crossover: at what trade size does the sandwich you avoid exceed the latency and failure cost you accept? Below that line, users rationally keep using private relays, and an encrypted mempool that the largest traders route around has not fixed the centralization it was meant to fix. Three, the failure nobody can attribute. The unresolved item on the call was that the protocol cannot establish why a key failed to arrive, or whether a provider sold it early. Build the smallest possible simulator — n key providers, threshold k, one colluding subset — and generate three traces: a key withheld deliberately, a key leaked early, and a key that was merely late. Then ask the only question that matters for enforcement: from outside, are the three distinguishable? If they are not, slashing has nothing to attach to, and the honest-threshold assumption is not an assumption but the entire security model. Reads against the live pbs card, which sits on the extraction side of the same market, and alongside third-party-blast-radius, which asks the same committee-capture question of every threshold scheme.

← All Dev Notes · Workspace Index · Top ↑

암호화가 가리지 못하는 것

경합 중인 암호화 멤풀 EIP 두 건 모두 발신자·가스·크기를 평문으로 남깁니다. 메타데이터만으로 샌드위치가 얼마나 살아남는지를 측정합니다.

아직 범위 미정 — 먼저 EIP-8105 의 평문 봉투(envelope) 필드 목록을 읽고, 그다음 이더리움 프로토콜 패턴 문서의 유출(leakage) 문단을 읽어 둘을 서로 대조하는 것부터. 출처: 2026-08-19 "Encrypt the Mempool" 콜(cryptoslate.com), eips.ethereum.org/EIPS/eip-8105, EIP-8184(LUCID), ethsystems.org 임계암호 멤풀 패턴, Gnosis 체인의 Shutter Network.

브리핑은 질문이 아직 열려 있는 것처럼 읽힙니다 — 개발자들이 모일 예정이고, 암호화가 검토되고 있고, 준비된 기법은 없다고. 셋 중 둘은 맞고 하나는 틀립니다. 이미 경합하는 초안이 두 건 올라와 있습니다: 기술 중립적인 키 제공자 층을 프로토콜에 심는 EIP-8105, 그리고 빌더가 내용을 읽기 전에 봉인된 페이로드에 먼저 커밋하게 만드는 EIP-8184(LUCID). 그러니 설계 공간은 더 이상 "할 것인가"가 아니라 "어떤 실패를 받아들일 것인가"입니다. 그리고 짚어야 할 실패는 암호 강도가 아닙니다. EIP-8105 의 봉투는 설계상 평문으로 남습니다 — 체인 ID, 논스, 우선 수수료, 최대 수수료, 가스량, 키 제공자 ID, 키 ID, 그리고 서명 성분. 서명 성분이 있다는 건 발신자 주소를 복원할 수 있다는 뜻입니다. 이더리움 자신의 패턴 문서가 그 귀결을 에두르지 않고 적어 둡니다: 크기·가스 한도·발신자 주소는 복호화 전에도 보이며, 크거나 식별 가능한 거래에 대한 추론 공격을 여전히 가능하게 한다. 샌드위치 봇은 당신의 calldata 를 몰라도 됩니다 — 알려진 DEX 라우터 주소가 방금 유난히 큰 가스 한도로, 들어가려고 공격적으로 입찰했다는 것만 알면 됩니다. 큰 거래가 온다는 것과 대략의 크기면 충분합니다. 암호화는 정확한 숫자를 지우고 형태를 남깁니다. 그래서 검증할 주장은 "암호화 멤풀이 작동하는가"가 아니라 "남은 메타데이터가 추출 이익의 몇 퍼센트를 여전히 먹여 살리는가"입니다. 그 숫자가 이것을 해결책으로 볼지 세금으로 볼지를 결정합니다.

동작 방식

측정 셋을, 싼 것부터. 하나, 잔여 MEV 재현. 과거 메인넷 블록 구간을 잡아 모든 트랜잭션을 EIP-8105 가 평문으로 남기는 필드만으로 깎아낸 뒤(발신자·논스·가스량·우선 수수료·최대 수수료), 그것만으로 샌드위치 가능한 것들을 골라 봅니다. 같은 구간에서 실제로 추출된 샌드위치를 정답으로 두고 채점하는데, 라벨링 경로는 라이브 pbs 카드가 이미 만들어 둔 릴레이·번들 배관을 그대로 씁니다 — 새 인프라가 아니라 기존 인프라 위의 분석입니다. 산출물은 분수 하나: 메타데이터만 보는 공격자가 여전히 조준할 수 있었던 추출 이익의 비율. 어느 쪽으로 나오든 그대로 공개합니다 — 낮게 나오면 그게 EIP 들에 대한 가장 강한 지지이고, 높게 나오면 이걸 해결됐다고 부르는 것에 대한 가장 강한 반박입니다. 둘, 두 블록짜리 청구서. EIP-8105 는 봉투를 한 블록에서 실행하고(논스 증가, 수수료 지불) 복호화된 페이로드를 그다음 블록에서 실행하며, 복호화가 실패해도 수수료는 이미 지불된 상태입니다. 즉 암호화의 대가는 한 블록의 지연 + 사용자가 아무것도 못 받고 지불하는 실패 양식이고, 비교 대상인 현상 유지는 사용 시점 비용이 0인 프라이빗 릴레이입니다. 교차점을 모델링합니다: 피하는 샌드위치가 감수하는 지연·실패 비용을 넘어서는 거래 규모는 얼마부터인가? 그 선 아래에서는 사용자가 프라이빗 릴레이를 계속 쓰는 게 합리적이고, 가장 큰 거래자들이 우회하는 암호화 멤풀은 애초에 고치려던 중앙화를 고치지 못한 것입니다. 셋, 누구에게도 귀속되지 않는 실패. 콜에서 미해결로 남은 항목이 바로 이것입니다 — 프로토콜은 키가 왜 도착하지 않았는지, 제공자가 그것을 미리 팔았는지 확정할 수 없습니다. 가능한 가장 작은 시뮬레이터를 만듭니다(제공자 n, 임계값 k, 담합 부분집합 하나) 그리고 트레이스 셋을 생성합니다: 고의로 보류된 키, 미리 유출된 키, 그냥 늦은 키. 그다음 강제(enforcement)에 유일하게 중요한 질문을 던집니다: 바깥에서 이 셋이 구별되는가? 구별되지 않는다면 슬래싱은 물 곳이 없고, 정직한 임계값 가정은 가정이 아니라 보안 모델 전체입니다. 같은 시장의 추출 쪽에 앉아 있는 라이브 pbs 카드와 대조해 읽고, 모든 임계 기법에 같은 위원회 장악 질문을 던지는 third-party-blast-radius 와 함께 읽습니다.

← 전체 개발 노트 · 워크스페이스 인덱스 · 맨 위 ↑