Owlio
ID
← Blog
PanduanPemula

Konfirmasi dan finalitas Ethereum: periksa blok, bukan hanya Success

Label Success dan jumlah konfirmasi menjawab pertanyaan yang berbeda dari apakah Ethereum sudah memfinalkan blok yang memuat transaksi.

Transaksi Ethereum yang telah masuk ke blok dapat menampilkan Success sebelum blok tersebut final. Success menjelaskan eksekusi; konfirmasi menunjukkan blok yang ditambahkan setelah penyertaan sesuai cara penghitungan alat. Finalitas adalah keadaan konsensus yang terpisah. Periksa blok transaksi dan rantai yang telah difinalkan oleh jaringan, jangan menyamakan label tersebut.

Panduan ini berlaku untuk Ethereum Mainnet setelah peralihannya ke proof of stake. Rollup, bridge, rantai lain dan layanan kustodian memiliki aturan tambahan. Ini adalah pemeriksaan baca saja atas transaksi yang sudah Anda miliki, bukan anjuran mengirim, membatalkan atau mengulangi pembayaran.

Pisahkan penyertaan, eksekusi dan finalitas

Referensi receipt JSON-RPC mengembalikan nomor dan hash blok yang memuat transaksi, beserta status eksekusi. Transaksi tertunda belum memiliki receipt penyertaan. Status 1, ditampilkan sebagai 0x1 dalam JSON-RPC mentah, menunjukkan eksekusi berhasil; 0 atau 0x0 menunjukkan kegagalan.

Keduanya bukan penanda finalitas. Transaksi yang mengalami revert tetap dapat berada dalam blok final. Sebaliknya, eksekusi berhasil dapat berada dalam blok baru yang belum final. Menunggu finalitas tidak akan mengubah tindakan yang mengalami revert menjadi berhasil.

Pengamatan Yang dijelaskan Yang belum dipastikan
Receipt dengan blok Penyedia melaporkan penyertaan di sana Apakah blok itu final
Status receipt Success Eksekusi tingkat teratas berhasil Penerimaan token yang dituju atau finalitas
Jumlah konfirmasi Alat melaporkan kedalaman sejak penyertaan Aturan finalitas atau pengkreditan universal
Rantai final mencakup blok Finalitas konsensus mencakup blok itu Keamanan kontrak atau kredit di bursa

Jika transaksi masih tertunda, gunakan panduan transaksi tertunda sebelum mempertimbangkan tindakan lain. Jika berhasil tetapi token yang dituju tidak ada, panduan bukti transfer membahas pertanyaan terpisah tersebut.

Arti finalized dalam Ethereum

Penjelasan proof of stake Ethereum menerangkan pemungutan suara validator pada checkpoint. Finalitas memberi jaminan yang lebih kuat daripada sekadar dekat dengan ujung rantai saat ini: membalikkan blok final memerlukan kegagalan konsensus besar dengan konsekuensi ekonomi berat. Ini bukan janji bahwa semua aplikasi atau aset dalam blok aman.

Penjelasan lapisan aplikasi Ethereum Foundation membedakan kepala safe dari blok finalized. Safe adalah tingkat keyakinan antara, bukan sinonim finalized. API eksekusi menyediakan tag blok latest, safe dan finalized agar pembaca dapat meminta kepala yang relevan.

Gunakan label tersebut dalam konteks Ethereum. Rollup dapat memakai kata serupa untuk tahap yang melibatkan sequencer dan rantai induk. Jangan menerapkan prosedur Mainnet tanpa perubahan pada transfer bridge atau menganggap transaksi final di rantai asal menyelesaikan tindakan di sisi tujuan.

Tidak ada waktu tunggu tetap yang dijanjikan di sini. Penundaan, penyedia dengan data usang atau masalah jaringan dapat membuat penghitung waktu menjadi pengganti yang buruk bagi pemeriksaan keadaan sebenarnya. Jika layanan meminta jumlah konfirmasi atau kondisi tertentu, lihat persyaratan resmi terkininya sebagai pemeriksaan tersendiri.

Periksa transaksi terhadap rantai final

Mulailah dari penjelajah Ethereum yang biasa digunakan atau pembaca blok publik melalui jalur tepercaya. Sebagian penjelajah menampilkan finalitas langsung; lainnya hanya menampilkan detail blok. Nama metode berikut mengidentifikasi pembacaan publik, bukan perintah menjalankan transaksi atau menghubungkan dompet. Prosedur ini diperiksa terhadap dokumentasi pada 27 Oktober 2026; prosedur ini tidak diuji dengan dompet nyata untuk artikel ini.

  1. Tetapkan identitas transaksi. Catat Ethereum Mainnet dan hash transaksi lengkap. Baca receipt, lalu simpan nomor blok yang memuatnya, hash blok dan status eksekusi. Receipt yang tidak tersedia tetap belum terselesaikan; periksa jaringan dan penyedia sebelum menyatakannya gagal.
  2. Baca keadaan finalitas yang dilaporkan. Gunakan label blok yang dijelaskan dokumentasi penjelajah. Pada pembaca JSON-RPC, eth_getBlockByNumber dengan finalized meminta kepala final saat ini. Simpan nomor blok yang dikembalikan dan waktu pengamatan. Pembacaan yang gagal atau tidak didukung tetap belum terverifikasi.
  3. Bandingkan identitas blok serta ketinggiannya. Jika kepala final lebih rendah daripada blok transaksi, pengamatan itu belum mencakup transaksi. Jika telah mencapai atau melewati ketinggian itu, baca kembali blok kanonis pada ketinggian yang memuat transaksi dan cocokkan hash-nya dengan hash blok dalam receipt. Gunakan penyedia yang konsisten dan mutakhir, lalu periksa ulang receipt jika hash berbeda.
  4. Perjelas cakupan hasil. Blok yang cocok pada atau sebelum kepala final mendukung finalitas pada rantai yang dilaporkan. Penyedia yang usang atau tidak konsisten masih dapat memberi data menyesatkan. Simpan perbedaannya dan lihat status resmi atau dukungan penyedia, jangan memaksakan jawaban dari cuplikan data yang bercampur.
  5. Periksa ketentuan aplikasi secara terpisah. Pastikan apa yang benar-benar dilakukan transaksi dan apakah layanan penerima telah mengkreditkannya sesuai aturannya sendiri. Jangan mengirim pembayaran kedua hanya karena galeri atau halaman deposit belum diperbarui.

Dokumentasi pencarian blok menyediakan nomor dan hash blok. Ketinggian saja tidak cukup ketika catatan berbeda: dua blok berbeda dapat menempati ketinggian yang sama saat reorganisasi rantai. Simpan hash bersama nomor agar perbandingan menunjuk blok yang memuat transaksi.

Baca perubahan jumlah konfirmasi dengan cermat

Misalkan receipt hipotetis menempatkan transaksi dalam blok 100, sementara pembaca melaporkan kepala final 98. Transaksi mungkin sudah menampilkan Success, tetapi pengamatan kepala final itu tidak mencakup blok 100. Jika pembacaan konsisten berikutnya melaporkan kepala final 102, periksa bahwa blok kanonis pada 100 masih memiliki hash receipt sebelum mencatat bahwa blok transaksi telah tercakup.

Nomor blok yang sengaja kecil ini adalah ilustrasi rekaan, bukan pengamatan Mainnet saat ini. Angka tersebut tidak memprediksi waktu finalitas atau menetapkan ambang deposit. Jumlah konfirmasi yang ditampilkan mungkin memakai konvensi yang memasukkan blok transaksi itu sendiri; baca definisi alat sebelum membandingkan dua antarmuka.

Reorganisasi dapat memindahkan transaksi ke blok lain atau menghilangkan catatan penyertaan sebelumnya. Simpan hash transaksi asli, perbarui receipt dan bandingkan catatan terkini. Perubahan jumlah saja bukan bukti bahwa Anda harus mengirim ulang. Notifikasi lama dompet juga tidak mengesampingkan catatan blok yang lebih baru.

Akhiri dengan catatan blok bertanggal

Simpan bersama jaringan, hash transaksi, nomor dan hash blok yang memuatnya, status eksekusi, kepala final yang diamati dan waktu pemeriksaan. Tandai apakah catatan konsisten dan apakah finalitas ditampilkan langsung oleh penjelajah atau disimpulkan dari perbandingan blok di atas.

Finalitas tidak membuktikan bahwa token yang benar mencapai penerima yang benar, kontrak dapat dipercaya, atau layanan kustodian telah menyelesaikan pembukuannya sendiri. Selisih saldo portofolio juga dapat disebabkan tampilan, cakupan atau harga setelah transaksi final.

Catatan publik ini tidak memerlukan tanda tangan, persetujuan atau frasa pemulihan. Jika situs memintanya hanya untuk menampilkan konfirmasi atau finalitas, hentikan proses tersebut. Hasil Anda seharusnya berupa keadaan tertentu yang diamati beserta batasannya, bukan janji universal bahwa label hijau berarti semua bagian pembayaran selesai.

Pertanyaan umum

Apakah transaksi Ethereum yang berhasil berarti sudah final?

Tidak. Keberhasilan pada receipt menjelaskan eksekusi. Finalitas menyangkut posisi blok yang memuat transaksi dalam rantai Ethereum. Periksa finalitas blok secara terpisah, lalu pastikan hasil transfer atau aplikasi yang dituju.

Apakah jumlah konfirmasi tertentu selalu cukup?

Jumlah konfirmasi bukan bidang yang sama dengan kepala finalized. Periksa finalitas yang dilaporkan Ethereum dan ketentuan terkini layanan penerima, bukan menerapkan jumlah atau waktu tunggu universal.

Bisakah saya memeriksanya tanpa menghubungkan dompet?

Ya. Catatan transaksi dan blok publik dapat diperiksa tanpa tanda tangan dompet, persetujuan atau frasa pemulihan. Kesalahan penyedia atau label finalitas yang tidak didukung membuat hasil belum terverifikasi, bukan berarti gagal.