
Nonce adalah angka atau penghitung yang hanya digunakan satu kali untuk memastikan suatu tindakan dilakukan sekali saja dan dalam urutan yang benar. Nonce dapat diibaratkan sebagai nomor antrean atau kode verifikasi satu kali yang menjadi tidak berlaku setelah digunakan atau kedaluwarsa.
Dalam blockchain, nonce umumnya hadir dalam tiga bentuk: penomoran berurutan pada tingkat akun (mengatur urutan transaksi dari alamat yang sama), nilai yang terus berubah dalam proses mining (untuk menemukan hash blok yang sesuai dengan tingkat kesulitan jaringan), dan kode tantangan pada tanda tangan login (mencegah pengulangan pesan lama). Pada semua skenario ini, tujuan utamanya adalah keunikan dan perlindungan dari replay.
Tanpa nonce, transaksi atau tanda tangan lama dapat dikirim ulang, sehingga rentan terhadap serangan replay. Serangan replay terjadi ketika penyerang menyalin dan mengirim ulang pesan yang sebelumnya valid, menyebabkan sistem mengulangi operasi yang seharusnya tidak terjadi lagi.
Nonce juga memastikan urutan transaksi pada satu alamat. Tanpa kontrol ini, transaksi yang lebih baru dapat dieksekusi sebelum yang lama, merusak logika smart contract dan berpotensi mengunci dana atau menyebabkan kegagalan strategis. Karena itu, blockchain utama menerapkan nonce pada level protokol untuk menjaga konsistensi dan keamanan. Pada 2025, mekanisme ini menjadi pilar utama di ekosistem berbasis EVM, standar login blockchain, dan jaringan PoW.
Di Ethereum dan chain kompatibel, setiap alamat memiliki penghitung transaksi yang dimulai dari 0—ini disebut nonce akun. Transaksi berikutnya yang Anda kirim harus menggunakan nilai nonce saat ini; setelah transaksi masuk ke dalam blok, nonce akun Anda bertambah satu.
Jika Anda mengatur nonce lebih rendah dari nilai saat ini, node akan menampilkan error “nonce terlalu rendah” karena angka tersebut sudah digunakan. Jika terlalu tinggi, jaringan akan menunggu transaksi yang hilang di antaranya, sehingga proses terhenti. Dompet umumnya mengelola nonce ini secara otomatis untuk mencegah kesalahan manual.
Contoh: Jika nonce Anda saat ini 10, gunakan 10 untuk transaksi berikutnya. Jika transaksi #10 macet dan belum ditambang, Anda dapat mengirim ulang transaksi serupa dengan nonce yang sama namun biaya lebih tinggi untuk menggantikan transaksi yang belum terkonfirmasi dan mempercepat pemrosesan oleh miner atau validator.
Pada Proof of Work Bitcoin, miner terus menyesuaikan field nonce pada header blok untuk menemukan hash blok yang memenuhi tingkat kesulitan jaringan. Proof of Work dapat diibaratkan seperti “menebak password kunci”—miner pertama yang menemukan solusi valid berhak mengusulkan blok dan memperoleh reward.
Nonce pada header blok Bitcoin berukuran 32 bit. Setelah semua kemungkinan nilai habis, miner akan mengubah field lain yang dapat disesuaikan seperti timestamp atau urutan transaksi (yang memengaruhi Merkle root) untuk memperluas ruang pencarian hash baru. Proses ini pada dasarnya adalah “mencoba berbagai angka hingga menemukan yang cocok.”
Saat proses login dompet atau tanda tangan web, server membuat nonce acak dan menyisipkannya pada pesan yang akan ditandatangani. Setelah Anda menandatangani, nonce tersebut ditandai sudah digunakan; setiap login berikutnya harus menggunakan nonce baru, sehingga pesan lama yang disalin tidak dapat divalidasi kembali.
Misalnya, standar login berbasis Ethereum biasanya menyertakan field seperti “nonce”, “domain”, dan “expiration time” dalam pesan, menciptakan tantangan satu kali. Banyak otorisasi DeFi dan tanda tangan order juga menggunakan nonce untuk menandai instruksi satu kali atau nomor versi, sehingga memungkinkan pembatalan perintah lama atau mencegah eksekusi ganda.
Anda umumnya tidak perlu mengatur nonce secara manual—dompet akan mengelolanya otomatis. Namun, memahami cara mengeceknya penting untuk skenario lanjutan.
Langkah 1: Masukkan alamat Anda pada blockchain explorer untuk melihat indeks transaksi terakhir yang terkonfirmasi dan periksa transaksi yang masih antre. Sebagian besar explorer menampilkan nonce tiap transaksi, sehingga Anda dapat mengetahui nilai berikutnya yang perlu digunakan.
Langkah 2: Pada pengaturan lanjutan dompet Anda, cek nonce akun saat ini. Beberapa dompet mengizinkan “custom nonce” secara sementara; gunakan fitur ini dengan hati-hati agar tidak terjadi konflik dengan transaksi tertunda. Pada dompet Web3 Gate atau layanan terkait, nonce dikelola otomatis dan dapat dilihat di pengaturan atau detail transaksi.
Langkah 3: Jika Anda perlu mengatur nonce manual (misal untuk mengganti transaksi yang macet), pastikan status antrean transaksi agar tidak melewati transaksi penting. Pengaturan yang salah dapat memblokir transaksi berikutnya untuk waktu lama.
Error yang sering muncul meliputi “nonce terlalu rendah”, “nonce terlalu tinggi”, dan “transaksi macet”. Berikut cara penanganannya:
Langkah 1: Untuk “nonce terlalu rendah”, angka tersebut sudah digunakan atau ada transaksi belum terkonfirmasi dengan nonce yang sama. Periksa daftar antrean dompet dan explorer untuk transaksi yang macet; hindari mengirim transaksi berbeda dengan nonce yang sudah dipakai.
Langkah 2: Untuk “nonce terlalu tinggi”, ada nomor antara yang hilang. Anda bisa menunggu transaksi sebelumnya ditambang atau mengirim transaksi kosong secara berurutan (teknik lanjutan—pertimbangkan biaya dan risiko).
Langkah 3: Jika transaksi macet, kirim ulang transaksi dengan fungsi yang sama dan nonce sama namun biaya lebih tinggi untuk menggantikan transaksi lama dan mempercepat konfirmasi. Setelah terkonfirmasi, nonce akun Anda akan bertambah.
Peringatan risiko: Pengaturan nonce yang salah dapat memblokir seluruh transaksi berikutnya atau mengganggu pengelolaan aset. Selalu tinjau antrean transaksi dan pengaturan biaya sebelum override manual agar terhindar dari risiko finansial akibat kesalahan.
Transaksi dari alamat yang sama harus dieksekusi sesuai urutan nonce, tetapi prioritas masuk ke blok ditentukan oleh biaya yang Anda bayarkan. Biaya tinggi meningkatkan peluang transaksi diproses lebih cepat; mengirim transaksi baru dengan nonce yang sama dapat menggantikan transaksi lama (“mempercepat”).
Secara praktik, dua aspek bekerja bersamaan: urutan dalam satu akun diatur oleh nonce, sedangkan persaingan antar akun ditentukan oleh biaya transaksi. Jika biaya Anda terlalu rendah, transaksi dengan nonce tertentu bisa tertahan lama, sehingga seluruh aktivitas berikutnya ikut terblokir.
Nonce menjadi dasar urutan transaksi, operasi mining, dan keamanan tanda tangan—menjamin keunikan dan urutan yang tepat. Nonce yang bertambah mencegah replay dan eksekusi tidak berurutan di akun; nonce variabel pada mining Bitcoin membantu pencarian hash yang memenuhi tingkat kesulitan; nonce acak pada tanda tangan login melindungi dari replay pesan. Dalam praktiknya, biarkan dompet mengelola nonce secara otomatis jika memungkinkan; jika perlu intervensi manual, selalu cek antrean dan pengaturan biaya, terutama saat menggunakan dompet Web3 Gate atau alat kompatibel, untuk meminimalkan transaksi macet dan risiko aset.
Reset nonce akan membuat transaksi yang sudah dikirim namun belum terkonfirmasi menjadi tidak valid. Sebaiknya tunggu hingga semua transaksi tertunda terkonfirmasi atau ditolak oleh miner sebelum melakukan reset. Jika transaksi macet, Anda dapat menggantinya dengan menaikkan biaya gas dan mengirim ulang dengan nonce yang sama—ini akan menimpa transaksi asli.
Ketidaksesuaian nonce biasanya disebabkan oleh beberapa transaksi terkonfirmasi dengan penghitung lokal yang tidak sinkron atau pengiriman tidak berurutan. Untuk memperbaikinya, cek jumlah transaksi terkonfirmasi akun Anda di Gate atau blockchain explorer; nonce transaksi berikutnya harus sama dengan angka tersebut. Jika dompet Anda menampilkan error secara lokal, coba hapus cache atau impor ulang akun Anda.
Transaksi bersamaan membutuhkan nonce berurutan. Misal, jika nonce Anda saat ini 5: gunakan 5 untuk transaksi pertama, 6 untuk kedua, 7 untuk ketiga, dan seterusnya. Semua transaksi akan dieksekusi sesuai urutan nonce meski dikirim bersamaan. Miner umumnya mengurutkan berdasarkan nonce, sehingga Anda tidak perlu khawatir eksekusi tidak berurutan.
Pada offline signing, Anda harus menentukan nonce secara manual—tidak bisa diambil otomatis. Langkah: cek nonce akun Anda di perangkat online → masukkan nilai ini ke software signing cold wallet → broadcast transaksi yang sudah ditandatangani dari perangkat online. Penggunaan nonce yang salah akan ditolak oleh jaringan; pastikan akurasi sebelum melakukan operasi offline.
Ya—setiap blockchain memiliki penghitung nonce independen. Mengirim 10 transaksi (nonce 0–9) di Ethereum mainnet tidak memengaruhi jumlah Anda di Polygon, yang akan dimulai kembali dari 0. Setiap chain mengelola status akun sendiri. Saat menggunakan Gate untuk operasi lintas chain, ingat bahwa pergantian jaringan akan mengatur ulang perhitungan nonce—hindari kebingungan dengan selalu memeriksa setelah setiap perubahan.


