Solia saysEIP-4844 added blob transactions — 128-KB binary payloads with their own exponential fee market — giving rollups cheap, ephemeral data availability.
EIP-4844 (proto-danksharding) introduced a new transaction type carrying up to six 128-KB blobs. Blobs are NOT accessible to the EVM but their KZG commitments are; rollups post compressed transaction data as blobs and prove its availability cheaply. Blob data is dropped from consensus nodes after ~18 days, so it is durable enough for fraud-proof windows but cheap enough to commoditize rollup DA.
The blob fee market is separate from gas. A blob_base_fee follows an exponential update: each block above the 3-blob target raises the fee multiplicatively, each block below lowers it. The demo simulates the multiplier across a varying blob load.
Power-ups you unlock
Blobs: up to 6 per block, 128 KB each
Blob data is not EVM-accessible — only KZG commitments are
Separate exponential fee market: blob_base_fee
Blobs expire from CL nodes after ~18 days
Made L2 transactions cheap by giving rollups dedicated DA
The Reentrancy Reaper attacks — common mistakes
Expecting blob data to be readable from a contract (only the commitment is)
Treating blob_base_fee like the gas base fee — it has its own update rule
Counting blobs against the block gas limit (separate accounting)
Assuming blob data is permanent on the beacon chain
Boss battleSimulate the blob_base_fee multiplier across seven blocks with blob counts varying from 0 to 6.
Example code
<!doctype html><html><head><meta charset="utf-8"></head>
<body style="background:#06040d;color:#e6e0ff;font-family:monospace;padding:20px"><pre id="o"></pre>
<script>
const TARGET_BLOBS = 3;
const MAX_BLOBS = 6;
const BLOB_KB = 128;
let excess = 0;
const blockBlobs = [6, 5, 4, 3, 2, 1, 0];
const rows = [];
for(const b of blockBlobs){
const mult = Math.pow(1.125, excess / 3);
rows.push(' block has ' + b + ' blobs excess=' + String(excess).padStart(2) + ' blob_base_fee multiplier ≈ ' + mult.toFixed(3));
excess = Math.max(0, excess + (b - TARGET_BLOBS));
}
document.getElementById('o').textContent = [
'EIP-4844 blob transactions:',
' max blobs/block: ' + MAX_BLOBS + ' target: ' + TARGET_BLOBS,
' blob size: ' + BLOB_KB + ' KB (32 field-elements × 4096)',
' blob_base_fee = its OWN exponential market',
'',
...rows,
'',
'blobs expire from CL nodes after ~18 days → cheap, ephemeral DA for rollups'
].join('\n');
</script></body></html>