Bagaimana Node Bitcoin Memverifikasi Transaksi?
Node akan melihat transaksi saat transaksi tersebut tiba dan kemudian menjalankan serangkaian cek untuk memverifikasinya.
Setiap node membangun transaksinya yang terkumpul sendiri, dan sebagian besar sama.
Kondisi dapat berubah dan berevolusi dari waktu ke waktu dan daftar yang sekarang dapat diperiksa melalui fungsi AcceptToMemoryPool, CheckTransaction & CheckInput di klien bitcoin.
1. Sintaks transaksi dan struktur data sudah benar.
2. Input dan output memiliki nilai.
3. Transaksi kurang dari ukuran blok 1 MB.
4. Nilai harus lebih dari 0 dan kurang dari 21 juta.
5. Tidak ada input yang memiliki hash yang sama dengan 0.
6. Waktu penguncian kurang dari jumlah maksimum yang diizinkan.
7. Ukuran transaksi lebih besar dari atau sama dengan 100 byte.
8. Jumlah tanda tangan kurang dari batas signatute.
9. Skrip pembuka kunci hanya dapat mendorong angka ke tumpukan.
10. Script penguncian harus cocok dengan format standar.
11. Transaksi yang cocok harus ada.
12. Jika ada transaksi yang hilang, pindahkan transaksi ke kumpulan transaksi Orphan.
13. Jika transaksi adalah transaksi coinbase, maka transaksi tersebut harus memiliki jatuh tempo 100 konfirmasi.
14. Untuk setiap input, output harus ada dan tidak dihabiskan.
15. Periksa bahwa setiap nilai input dalam kisaran yang diperlukan.
16. Tolak jika nilai input kurang dari nilai output.
17. Tolak jika nilai transaksi rendah untuk masuk ke blok kosong.
18. Skrip pembuka untuk setiap input harus diverifikasi terhadap skrip penguncian keluaran.