ASIC Miner adalah perangkat dengan chip yang dirancang untuk penambangan bitcoin. Mesin ini berulang kali menghitung sidik jari numerik header calon blok, yaitu ringkasan data utamanya, mencari hasil yang memenuhi aturan penambangan. Kinerja lebih tinggi berarti lebih banyak percobaan per detik, bukan imbalan pasti. Mesin juga memerlukan listrik, pendinginan, perangkat lunak pengendali, dan sumber tugas penambangan.
Anna melihat alat penambangan kecil di samping komputer dan bertanya apakah laptopnya bisa melakukan hal yang sama. Komputer biasa memang mampu menjalankan perhitungannya. Namun ASIC dirancang khusus untuk tugas itu, sehingga umumnya menghasilkan jauh lebih banyak percobaan dengan energi yang sama. ASIC berarti Application-Specific Integrated Circuit, sirkuit terpadu untuk penggunaan tertentu. Dalam percakapan sehari-hari, ASIC juga berarti seluruh mesin penambang yang memakai chip tersebut. Penambang Bitcoin memakai SHA-256 untuk mencari sidik jari numerik yang sesuai, atau hash. Mesin tidak mengetahui jawaban benar sebelumnya: ia mengubah masukan lalu mencoba lagi. Spesialisasi ini secara bertahap menggantikan prosesor biasa CPU, prosesor grafis GPU, dan sirkuit FPGA yang dapat diprogram dalam penambangan yang kompetitif. Namun chip penambangan SHA-256 juga tidak bisa begitu saja dijadikan komputer serbaguna. [6] [8]
Bayangkan penambang berkecepatan 100 TH/s dengan daya masukan 3.000 W. Ini angka contoh, bukan spesifikasi produk tertentu. TH/s berarti triliunan hash per detik: mesin melakukan seratus triliun percobaan setiap detik. Laju ini disebut Hashrate. Meteran listrik justru mencatat energi: pada daya tetap 3 kW, mesin memakai 72 kWh selama 24 jam. Kalikan jumlah itu dengan harga per kWh untuk memperoleh biaya listrik. Perbandingan mesin juga memakai J/TH, yaitu energi dalam joule per triliun percobaan. Dalam contoh, 3.000 / 100 = 30 J/TH. Nilai lebih kecil berarti energi lebih sedikit untuk pekerjaan yang sama. Namun metode pengukuran dan pengaturannya harus sebanding. Angka untuk chip saja tidak bisa langsung dibandingkan dengan konsumsi seluruh mesin dari stopkontak. [7] [8]
Hampir seluruh energi yang dipakai penambang akhirnya menjadi panas. Karena itu Anna perlu memikirkan pembuangan panas dan, sesuai desain perangkat, kebisingan kipas ketika memilih tempat. Penambang rumahan kecil dan mesin industri dapat memiliki kebutuhan sangat berbeda. Kata ASIC sendiri tidak menjelaskan ukuran atau kebutuhan dayanya. Selain chip, ada catu daya, pengatur tegangan, pengendali, dan papan berisi chip penambangan yang disebut hashboards. Kipas atau pendingin cair membuang panas. Debu, kipas rusak, catu daya tidak sesuai, atau pengaturan berlebihan bisa menimbulkan kesalahan dan penghentian operasi. Memperhatikan keseluruhan operasi lebih berguna daripada sekadar angka terbesar dalam iklan produsen. [7] [8]
Setelah terhubung ke Mining Pool, mesin Anna menerima tugas dari layanan yang mengoordinasikan penambang. Pool memiliki perangkat lunak dan operator tersendiri; ia bukan bagian dari chip. Untuk menambang sendiri, Anna harus menyediakan infrastruktur yang sesuai. Firmware, perangkat lunak pengendali mesin, meneruskan tugas ke chip dan mengirim hasilnya. Seseorang terlebih dahulu harus menyusun usulan blok berisi transaksi, yang disebut Block Template. Full Node atau penyedia template lain memasoknya. Full Node adalah program yang memeriksa blok dan transaksi secara mandiri berdasarkan aturan Bitcoin. BIP22 menjelaskan antarmuka getblocktemplate, sedangkan BIP23 menambahkan ekstensi bagi pool. Stratum V2 memisahkan Mining Protocol untuk tugas, Job Declaration untuk mengusulkan pekerjaan sendiri, dan Template Distribution untuk memasok template. Kemampuan penambang memilih transaksi bergantung pada susunan sistem dan dukungan komponen tersebut. Chip sendiri tidak memilihnya. [1] [2] [4] [5] [9]
Anna melihat shares yang diterima pada dasbor pool, walau mesinnya belum menemukan blok Bitcoin. Share adalah hasil yang memenuhi syarat pool yang lebih mudah dan menjadi bukti statistik pekerjaan yang dilakukan. Pool memasukkan pekerjaan itu ke perhitungan pembayaran menurut aturannya sendiri. Share bukan koin tambahan dan tidak otomatis menjadi potongan blok. Hanya hasil yang jauh lebih langka yang sekaligus memenuhi syarat jaringan Bitcoin yang lebih sulit. Hasil itu memungkinkan pengajuan blok, tetapi blok tetap harus lolos semua pemeriksaan lain. Mengubah kesulitan shares mengubah frekuensi pengirimannya. Hal itu sendiri tidak meningkatkan kinerja nyata mesin ataupun mengubah kesulitan penambangan jaringan. [4] [6]
Hasil yang ditemukan adalah usulan kepada jaringan, bukan perintah bagi peserta lain. Full Node memeriksa aturan Bitcoin secara mandiri dan menolak blok tidak valid meskipun berasal dari penambang sangat kuat. ASIC tidak memungkinkan imbalan melebihi batas, pembelanjaan koin orang lain tanpa wewenang, atau pemaksaan aturan lain kepada node. Operator tetap membuat keputusan penting: firmware, pool, dan bila didukung, transaksi yang akan dimasukkan ke dalam blok. Membandingkan kinerja yang ditampilkan mesin dengan perkiraan pool selama periode lebih panjang berguna, begitu pula memantau shares yang ditolak, suhu, dan daya sebenarnya. Fluktuasi singkat perkiraan pool saja tidak membuktikan kerusakan. [5] [10]
Dua penambang identik bisa memberi hasil keuangan berbeda. Satu bekerja dengan pendinginan baik dan listrik lebih murah; satu lagi sering berhenti dan membayar energi lebih mahal. Harga beli, penyusutan perangkat, biaya pool, harga bitcoin, kesulitan jaringan, dan biaya transaksi dalam blok juga berpengaruh. Efisiensi teknis bukan janji modal kembali. Spesialisasi juga meningkatkan tuntutan pembuatan chip dan pengoperasian fasilitas besar. Ketika membahas konsentrasi, bedakan produsen chip, pemilik mesin, lokasi fisik, dan pool. Pangsa besar sebuah pool tidak membuktikan semua mesin yang terhubung dimiliki perusahaan yang sama. [6] [8]
Frekuensi menentukan kecepatan kerja chip, sedangkan tegangan membantu menjaga perhitungan tetap andal. Dua chip bertipe sama bisa membutuhkan pengaturan berbeda karena proses produksi menimbulkan variasi listrik kecil. Firmware dapat mencari pengaturan yang sesuai bagi setiap chip atau papan. Proses ini disebut Autotuning. Menurunkan frekuensi dengan tegangan yang tepat dapat memperbaiki J/TH meskipun Hashrate total turun. Sebaliknya, overclocking dapat menambah kinerja dengan kenaikan daya dan panas yang lebih besar secara proporsional. Hasilnya bergantung pada perangkat, pendinginan, dan pengaturan. Kinerja tertinggi yang bisa dicapai belum tentu merupakan cara operasi paling masuk akal untuk jangka panjang. [7]
Perhitungan dimulai dari header blok 80-byte, ringkasan data dasarnya. Header memuat versi, hash blok sebelumnya, Merkle Root yang merangkum transaksi, waktu, target kesulitan terenkode nBits, dan bidang Nonce 32-bit. SHA-256(SHA-256(header)) berarti menjalankan SHA-256 dua kali; header merujuk pada header blok tadi. Hash hasilnya dibaca sebagai angka. Untuk memenuhi bukti kerja yang diperlukan, nilainya tidak boleh lebih besar daripada target: hash ≤ target. Chip dapat mempercepat perhitungan dengan memakai kembali hasil antara dari masukan yang tidak berubah. Node memeriksa hasil dan target yang benar, bukan susunan sirkuit produsen. Aturan validitas blok lainnya tetap harus dipenuhi. [6] [10]
Nonce menyediakan 2^32 kemungkinan nilai. Penambang cepat segera mencoba semuanya, sehingga sistem perlu mengubah data lain. Extranonce merupakan nilai bantu dalam Coinbase Transaction, transaksi pertama khusus yang memuat imbalan blok. Mengubahnya akan mengubah transaksi, Merkle Root yang dihasilkan, dan masukan untuk putaran perhitungan berikutnya. Bidang waktu nTime juga dapat diubah dalam batas yang diizinkan, atau memakai bit versi yang sesuai. Usulan BIP320 menjelaskan pencadangan sebagian bit untuk penggunaan umum, bukan izin mengabaikan aturan jaringan. Stratum V2 mengharuskan pembagian pekerjaan agar perangkat tidak membuang tenaga mencoba kandidat identik. Mekanisme ini memasok kemungkinan baru kepada chip, bukan menambah imbalan setiap blok. Usulan yang lebih baru, BIP323, dimaksudkan untuk menggantikan BIP320 dan mencadangkan 24 bit versi untuk tujuan ini. Spesifikasi Stratum V2 saat ini sudah merujuk ke BIP323. Namun statusnya masih Draft, yaitu rancangan: menerbitkan usulan saja tidak mengubah aturan Bitcoin. [3] [4] [11]
Untuk gambaran yang lebih utuh, baca entri ini bersama Penambangan, Hashrate, SHA-256, Block Header, Nonce, Extranonce. Entri ini juga dirujuk dari Mining Pool, Hashrate, Nonce, Braiins.