Bagaimanakah pelombong menggunakan nonce?
Pelombong membina pengepala blok, menetapkan nonce kepada 0 lalu mengiranya sebagai hash. Jika hash itu melebihi sasaran, pelombong menetapkan nonce kepada 1 dan mencuba lagi, kemudian 2, dan seterusnya. Nama ini ialah singkatan bagi “nombor yang digunakan sekali”.
Tiada nonce yang lebih baik daripada yang lain. Hash tidak boleh diramal, jadi setiap cubaan mempunyai peluang menang yang sama kecil. Itulah yang menjadikan perlombongan adil: lebih banyak cubaan sesaat bermakna lebih banyak peluang, dan tiada perkara lain yang membantu.
Apa yang berlaku apabila nonce habis?
Empat bait hanya boleh memuatkan 4,294,967,296 nilai. Mesin moden boleh mencuba semuanya dalam masa jauh kurang daripada seperseribu saat. Jadi pelombong mengubah sesuatu yang lain dalam blok dan memulakan semula nonce.
Kitaran pelombong
- 01
Cuba setiap nonce
0, 1, 2 dan seterusnya hingga 4,294,967,295. Itulah semua nilai yang boleh diwakili oleh 4 bait.
- 02
Cepat habis
Satu mesin 100 TH/s sahaja boleh habiskan semuanya dalam lebih kurang 43 per sejuta saat.
- 03
Tukar extra nonce
Pelombong mengubah medan lebihan dalam transaksi ganjarannya sendiri (coinbase).
- 04
Merkle root baharu
Transaksi itu berubah, jadi akar merkle turut berubah dan setiap nonce menghasilkan hash baharu untuk dicuba.
Biasanya, pelombong menggunakan nonce tambahan, iaitu medan simpanan dalam transaksi coinbase. Mengubahnya akan mengubah akar Merkle, lalu menghasilkan satu set pengepala baharu untuk dicuba. Pelombong juga boleh melaraskan cap masa dan, pada kebanyakan mesin hari ini, mengubah beberapa bit medan versi.
Sumber
- Nonce · Bitcoin Wiki
- Algoritma hash blok · Bitcoin Wiki
- Rujukan rantaian blok: pengepala, pokok Merkle, sasaran · Dokumentasi pembangun Bitcoin
Angka langsung pada halaman ini datang daripada API CloudMineCrypto dan data rantaian awam, dikemas kini secara berkala dan dilabelkan pada tempat ia dipaparkan. Untuk tujuan pendidikan sahaja, bukan nasihat kewangan.