Calldata: Data Transaksi L2 yang Dikirim ke Ethereum dan Kenapa Harganya Mahal
Calldata adalah data yang dikirim bersama transaksi Ethereum, digunakan rollup untuk menyimpan transaksi L2 di L1. EIP-4844 menggantinya dengan blobs.
Calldata adalah data yang disertakan dalam sebuah transaksi Ethereum saat memanggil fungsi smart contract. Ini bukan ETH yang dikirim — ini adalah “instruksi” atau “pesan” yang memberitahu smart contract apa yang harus dilakukan dan dengan parameter apa.
Dalam konteks Layer 2, calldata punya peran khusus: rollup menggunakannya untuk memposting data transaksi L2 ke Ethereum, memastikan siapapun bisa melihat dan memverifikasi semua yang terjadi di rollup tersebut.
Struktur Calldata
Calldata terdiri dari:
- Function selector: 4 byte pertama, mengidentifikasi fungsi mana yang dipanggil
- Arguments: Data parameter yang dikirim ke fungsi tersebut
Contoh: swap 1 ETH ke USDC di Uniswap akan menghasilkan calldata berisi: ID fungsi swap, jumlah ETH, jumlah minimum USDC, alamat penerima, dan deadline.
Calldata Rollup: Cara Kerja Lama
Sebelum EIP-4844, Arbitrum dan Optimism memposting data transaksi L2 ke Ethereum menggunakan calldata. Setiap byte calldata biaya 16 gas (byte non-zero). Untuk batch 1.000 transaksi L2, calldata bisa mencapai 100–300 KB — artinya jutaan unit gas hanya untuk penyimpanan data.
Contoh konkret: pada April 2023, biaya posting calldata untuk rollup bisa mencapai $0,50–$2 per transaksi L2, bahkan saat gas Ethereum tidak sedang mahal. Ini karena calldata bersaing dengan semua transaksi Ethereum lainnya.
EIP-4844 dan Blobs: Revolusi Biaya DA
EIP-4844 (aktif Maret 2024) memperkenalkan format baru bernama “blobs” — singkatan dari Binary Large OBjectS. Blobs adalah:
- Ruang penyimpanan terpisah dari calldata biasa, khusus untuk rollup
- Lebih murah karena punya pasar gas sendiri, tidak bersaing dengan calldata normal
- Tidak tersimpan permanen — dihapus otomatis setelah ~18 hari (cukup untuk periode tantangan fraud proof)
Hasilnya: biaya transaksi di Base, Arbitrum, dan Optimism turun 10–100x setelah EIP-4844. Transaksi yang dulu $0,50 kini bisa $0,001–$0,05.
Calldata vs Blobs: Perbandingan
| Aspek | Calldata (lama) | Blobs (EIP-4844) |
|---|---|---|
| Biaya per KB | ~16.000 gas | ~jauh lebih murah |
| Disimpan permanen | Ya | Tidak (~18 hari) |
| Bersaing dengan transaksi lain | Ya | Tidak (pasar gas sendiri) |
| Rollup yang pakai | Semua (sebelum 2024) | Semua (setelah EIP-4844) |
Untuk rollup, tidak adanya penyimpanan permanen bukan masalah karena data availability hanya perlu tersedia cukup lama untuk periode tantangan fraud proof (7 hari) atau verifikasi validity proof.
💡 Mau praktik langsung, bukan hanya teori? Di kelas WhaleX, Anda belajar hands-on — setup wallet, yield strategy, dan navigasi protokol DeFi nyata. Coba kelas Web3 gratis →
⚠️ Disclaimer: Pemahaman tentang calldata dan blobs relevan jika kamu mengoperasikan rollup atau membangun aplikasi di L2. Sebagai pengguna biasa, cukup pahami bahwa EIP-4844 membuat L2 jauh lebih murah, dan biaya gas L2 kini sebagian besar ditentukan oleh biaya blob di Ethereum, bukan calldata.
Elite Vault WhaleX: join membership via USDC di Base Network — akses penuh tanpa proses bank tradisional.
Lihat Elite Vault →Pertanyaan Umum
Apa itu calldata di Ethereum?
Calldata adalah data yang dikirim bersama sebuah transaksi Ethereum — misalnya perintah untuk memanggil fungsi smart contract beserta argumennya. Di konteks rollup, calldata digunakan untuk memposting ringkasan data transaksi L2 ke Ethereum agar publik bisa mengaksesnya. Calldata disimpan permanen di Ethereum tapi tidak bisa dieksekusi ulang.
Kenapa biaya calldata mahal dan apa solusinya?
Calldata mahal karena menggunakan ruang blok Ethereum yang sama dengan semua transaksi lain. Setiap byte calldata cost 16 gas (atau 4 gas jika bytes nol). EIP-4844 yang aktif Maret 2024 memperkenalkan 'blobs' — ruang penyimpanan terpisah khusus untuk rollup yang jauh lebih murah karena tidak bersaing dengan calldata biasa.