Apa itu proof of work?
Definisi · Proof of work (PoW)
Sebuah sistem di mana hak untuk menambahkan blok jatuh ke siapa pun yang pertama menemukan hash header blok di bawah sebuah target. Menemukannya membutuhkan tebakan dalam jumlah sangat besar; memeriksanya hanya membutuhkan satu hash.
Satoshi Nakamoto menjelaskannya dalam whitepaper Bitcoin pada 2008, membangun di atas Hashcash milik Adam Back, sebuah gagasan lama untuk membuat spam email menjadi mahal. Hash yang valid adalah buktinya. Anda tidak bisa mendapatkannya tanpa melakukan usahanya, dan siapa pun bisa melihat bahwa Anda telah melakukannya.
Sisa halaman ini membahas setiap bagiannya, dan kotak di atas memungkinkan Anda mencobanya: itu adalah format header Bitcoin nyata, di-hash secara langsung di browser Anda. Untuk gambaran lebih besar tentang mining, lihat panduan lengkap mining Bitcoin kami.
Masalah apa yang dipecahkan oleh proof of work?
Bitcoin tidak memiliki perusahaan, bank, atau server yang mengendalikannya. Ribuan komputer menyimpan salinan buku besarnya sendiri, dan mereka harus menyepakati blok mana yang berikutnya dan dalam urutan apa pembayaran terjadi. Jika tidak, seseorang bisa membelanjakan koin yang sama dua kali.
Voting sederhana tidak berfungsi secara online, karena siapa pun bisa memulai seribu komputer palsu dan memberi suara seribu kali. Itu disebut serangan Sybil. Proof of work menghindarinya: suara Anda diukur dalam hash, dan hash membutuhkan biaya listrik dan perangkat keras.
Siapa yang punya suara dalam blok berikutnya?
Satu suara per node
Satu penyerang memulai 60 node palsu secara gratis dan mengalahkan suara 12 node yang jujur.
Satu suara per hash
penambang jujur 88%penyerang 12%
60 node yang sama berbagi perangkat keras nyata penyerang, sehingga bersama-sama bobotnya tetap 12%. Salinan itu gratis, hash tidak.
Apa yang ada di dalam header blok Bitcoin?
Penambang tidak melakukan hash pada seluruh blok. Mereka melakukan hash pada headernya yang berukuran 80 byte, yang mewakili semua hal lainnya. Berikut enam kolom yang Anda edit di kotak bagian atas:
| Kolom | Byte | Apa yang disimpannya | Siapa yang mengubahnya |
|---|---|---|---|
| Versi | 4 | Kumpulan aturan mana yang diikuti blok | Jarang berubah |
| Hash blok sebelumnya | 32 | Hash dari blok sebelumnya, yang menghubungkan chain | Baru dengan setiap blok |
| Merkle root | 32 | Satu sidik jari dari semua transaksi blok | Penambang, saat transaksi atau nonce tambahan berubah |
| Waktu | 4 | Kapan penambang menyatakan blok dibuat (waktu Unix) | Penambang, dalam batasan tertentu |
| Bit | 4 | Target, dikemas ke dalam 4 byte | Jaringan, setiap 2.016 blok |
| Nonce | 4 | Sebuah angka bebas untuk mencoba lagi | Penambang, pada setiap tebakan |
Karena header menyertakan hash blok sebelumnya, mengubah sebuah blok lama mengubah hashnya, yang merusak header berikutnya, dan yang setelahnya lagi. Kami memeriksa blok genesis nyata dari 2009 dengan kode yang sama yang digunakan bagian hero ini, di server kami, saat halaman ini dibuat:
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
Bagaimana cara kerja SHA-256 di Bitcoin?
SHA-256 mengubah input apa pun menjadi angka 256 bit, ditulis sebagai 64 karakter heksadesimal. Bitcoin menjalankannya dua kali pada header (orang menyebutnya SHA-256d). Sifat-sifat yang penting untuk mining sederhana:
Masukan sama, keluaran sama
Deterministik
Header yang sama selalu memberikan hash yang sama, di komputer mana pun. Itulah mengapa pemeriksaan berfungsi.
256 bit
Ukuran tetap
Baik satu baris pendek maupun satu buku penuh, hashnya selalu 64 karakter heksadesimal.
Satu arah
Tidak ada jalan pintas kembali
Anda tidak bisa menghitung input yang menghasilkan hash yang Anda inginkan. Anda hanya bisa mencoba berbagai input.
≈ 50%
Avalanche
Ubah satu karakter dan sekitar separuh bitnya berbalik. Perhatikan kisi di bagian hero.
Sifat terakhir itulah inti dari proof of work. Sebuah hash yang dekat dengan target tidak memberi tahu apa pun tentang tebakan berikutnya, sehingga tidak ada jalan pintas cerdas menuju blok yang valid. Setiap penambang menjalankan lotre yang sama, dan lebih banyak hash per detik hanya membeli lebih banyak tiket.
Apa itu target, dan mengapa ada angka nol di depan?
Target adalah angka 256 bit. Sebuah blok valid saat hashnya, dibaca sebagai angka, sama dengan atau di bawahnya. Karena angka kecil dimulai dengan nol, target yang lebih rendah muncul sebagai lebih banyak nol di depan. Setiap nol heksadesimal tambahan berarti rata-rata 16 kali lebih banyak tebakan.
Rata-rata hash yang dibutuhkan untuk menemukan satu blok valid
- Blok simulasi di bagian hero · 4 nol heksadesimal di depan65,536
- Target termudah Bitcoin (2009) · 8 nol heksadesimal di depan, bit 1d00ffff4,294,967,296
- Sebuah blok Bitcoin hari ini · sekitar 20 nol heksadesimal di depan (estimasi langsung)6.0 × 1023
Jaringan menggeser target setiap 2.016 blok, sekitar dua minggu, sehingga blok tetap muncul sekitar setiap sepuluh menit berapa pun hashrate yang bergabung atau keluar. Saat ini jaringan berjalan pada sekitar 1003 EH/s (langsung, diperbarui setiap jam). Bagaimana penyesuaian itu bekerja ada di panduan difficulty mining Bitcoin kami, dan penjelasan hashrate membahas satuannya.
Apa itu nonce, dan apa itu nonce tambahan?
Nonce (“number used once”) adalah kolom 4 byte yang diubah penambang pada setiap tebakan. Ini satu-satunya kolom yang memang ada untuk diubah. Masalahnya, 4 byte hanya memberikan sekitar 4,3 miliar nilai, dan mesin modern melahapnya hampir seketika.
Loop penambang
- 01
Coba setiap nonce
0, 1, 2 dan seterusnya hingga 4.294.967.295. Itulah semua nilai yang bisa ditampung oleh 4 byte.
- 02
Habis, dengan cepat
Satu mesin 100 TH/s saja bisa melewati semuanya dalam sekitar 43 per sejuta detik.
- 03
Ubah nonce tambahan
Penambang mengedit kolom cadangan dalam transaksi reward-nya sendiri (coinbase).
- 04
Merkle root baru
Transaksi itu berubah, sehingga merkle root berubah dan setiap nonce memberikan hash baru lagi.
Jadi penambang juga mengubah nonce tambahan, beberapa byte cadangan dalam coinbase, transaksi pertama blok yang membayar penambang. Coinbase baru berarti merkle root baru, dan itu berarti miliaran nonce baru untuk dicoba. Dalam sebuah pool mining, pool memberikan setiap penambang rentang nonce tambahannya sendiri agar tidak ada yang mengulang usaha orang lain.
Mengapa sebuah blok mahal untuk ditemukan tapi murah untuk diperiksa?
Untuk menemukan sebuah blok
≈ 6.0 × 1023 hash
Seluruh jaringan, semua mesinnya, sekitar sepuluh menit menebak.
Estimasi langsung, diperbarui setiap jam.
Untuk memeriksanya
1 hash
Node mana pun, bahkan laptop murah, melakukan hash pada header 80 byte sekali dan membandingkannya dengan target dalam waktu jauh di bawah satu milidetik.
Penambang harus mencoba banyak hash hingga satu jatuh di bawah target. Semua orang lain hanya perlu melakukan hash pada header sekali dan membandingkannya. Biaya yang timpang itulah yang memungkinkan ribuan komputer biasa memverifikasi chain tanpa harus mempercayai penambang yang membangunnya.
Coba sendiri bagian pencariannya di bawah ini. Demo ini menggunakan format blok yang lebih sederhana daripada bagian hero, tapi ini adalah lotre double SHA-256 yang sama, dan setiap blok yang ditemukan terhubung ke yang sebelumnya.
Interaktif · tambang sebuah blok di browser kamu
Proof of work SHA-256 sungguhan, header yang disederhanakan
Hash blok (double SHA-256)
Ubah transaksinya: hash berubah total hanya dengan satu huruf.
Percobaan: 0
Hashrate kamu: n/a
Waktu: 0,0 d
Apa itu aturan chain terpanjang, dan apa itu serangan 51%?
Terkadang dua penambang menemukan sebuah blok pada saat yang hampir bersamaan, dan jaringan untuk sesaat memiliki dua versi. Node mengikuti chain dengan total usaha terbanyak di belakangnya. Orang menyebutnya chain terpanjang, tapi sebenarnya itu adalah yang terberat: beberapa blok pada difficulty tinggi bisa mengungguli lebih banyak blok pada difficulty rendah.
Untuk membatalkan sebuah pembayaran, seorang penyerang harus membangun chain yang lebih berat dari semua orang lain, dimulai dari sebelum pembayaran itu. Setiap blok baru di atasnya (sebuah konfirmasi) membuat penyerang semakin tertinggal. Whitepaper telah menghitung peluangnya; geser penggeser untuk melihatnya:
Interaktif · bisakah seorang penyerang menyusul?
Rumus dari whitepaper Bitcoin, bagian 11
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Blok yang tertinggal oleh penyerang (konfirmasi). Bilah menggunakan skala logaritmik, dari satu berbanding sejuta hingga pasti.
Dengan 10% dari hashrate, peluang untuk menulis ulang sebuah pembayaran setelah 6 konfirmasi adalah 0,024%, dan setelah 1 konfirmasi menjadi 20,5%.
Dengan 50% atau lebih, penyerang akan menang pada akhirnya. Itulah serangan 51%. Ini serius, tapi memiliki batasan:
Dengan sebagian besar hashrate, seorang penyerang bisa
- Mengganti blok terbaru dengan chain mereka sendiri
- Membelanjakan dua kali koin yang mereka kirim sendiri
- Meninggalkan beberapa transaksi dari blok mereka
Bahkan jika begitu, mereka tetap tidak bisa
- Membelanjakan koin dari dompet orang lain
- Membuat koin di luar reward blok
- Mengubah aturan Bitcoin untuk semua orang lain
Itulah mengapa bursa menunggu beberapa konfirmasi untuk deposit besar. Enam adalah aturan praktis yang umum.
Mengapa proof of work menggunakan begitu banyak energi?
Karena energi itulah keamanannya. Blok yang valid adalah bukti bahwa listrik nyata telah dikeluarkan. Untuk menulis ulang riwayat, seorang penyerang harus mengeluarkan setidaknya sebanyak itu lagi, dan terus mengeluarkan sementara jaringan yang jujur terus berjalan.
Ke mana energi pergi, dan apa yang dibelinya
Reward blok dan fee
BTC baru ditambah fee untuk setiap blok, dibayarkan kepada siapa pun yang menemukannya.
Mesin dan listrik
Penambang mengeluarkan biaya hingga sebesar nilai reward bagi mereka.
Hashrate jaringan
Semua pengeluaran itu muncul sebagai hash per detik.
Biaya untuk menulis ulang riwayat
Seorang penyerang harus mengeluarkan lebih banyak dari semuanya itu, blok demi blok.
Berapa banyak listrik itu, dan dari mana asalnya, adalah perdebatan yang wajar. Indeks Cambridge melacak estimasinya, dan panduan energi mining Bitcoin kami membahas angka-angkanya. Setiap halving memotong bagian koin baru dari reward, sehingga seiring waktu fee harus menanggung lebih banyak anggaran keamanan itu.
Proof of work vs proof of stake: apa bedanya?
Proof of stake (PoS) memilih produser blok berikutnya dari orang-orang yang mengunci koin sebagai deposit, alih-alih dari orang-orang yang membakar listrik. Ethereum beralih dari proof of work ke proof of stake pada 2022. Berikut perbandingan yang adil:
| Proof of work | Proof of stake | |
|---|---|---|
| Siapa yang menambahkan blok berikutnya | Penambang pertama yang menemukan hash di bawah target | Seorang validator yang dipilih sesuai dengan proporsi stake-nya |
| Apa yang mengamankannya | Listrik dan perangkat keras yang dikeluarkan di luar chain | Koin yang dikunci di dalam chain, yang bisa diambil karena kecurangan |
| Pemakaian energi | Tinggi, secara sengaja | Rendah |
| Untuk ikut serta | Mesin dan daya murah | Koin untuk di-stake |
| Penyelesaian | Menjadi lebih aman dengan setiap konfirmasi | Titik pemeriksaan finalitas eksplisit |
| Kritik utama | Penggunaan energi dan konsentrasi mining | Konsentrasi stake dan desain yang lebih kompleks |
| Rekam jejak | Bitcoin, sejak 2009 | Ethereum, sejak 2022 |
Pengembang Bitcoin mempertahankan proof of work karena biayanya berada di luar sistem, sehingga tidak ada yang bisa membeli kendali dengan koin yang sudah mereka miliki. Pendukung proof of stake menunjuk pada penghematan energi dan finalitas yang lebih cepat.
Bisakah Anda mendapatkan bitcoin dari mining tanpa menjalankan proof of work sendiri?
Ya. Dengan CloudMineCrypto Anda menambang bitcoin secara gratis dari ponsel atau browser Anda, tanpa perangkat keras, suara, atau tagihan listrik. Klaim plan gratis 8 jam, dan tambah lebih banyak plan gratis dengan menonton iklan, bermain game, menyelesaikan penawaran, dan check-in harian. Saldo BTC Anda tumbuh selama plan Anda berjalan, dan Anda menarik ke dompet Anda sendiri, termasuk Lightning.
Setiap paket memiliki hashrate, dan perkiraan Anda adalah porsi hashrate tersebut dari seluruh jaringan, dikalikan 6 blok per jam, lalu dikalikan hadiah blok. Itulah rumus yang digunakan aplikasi untuk memperkirakan hadiah Anda (aturan dan batasan berlaku). Ingin kecepatan lebih tinggi? Paket berbayar opsional menambah hashrate, dan harganya ditampilkan sebelum Anda mengonfirmasi.
Yang perlu diketahui: reward adalah estimasi yang berubah mengikuti jaringan dan tidak dijamin, dan sebuah plan tidak memberi kepemilikan atas mesin atau pool apa pun. Batasan atau verifikasi mungkin berlaku untuk penarikan. Detailnya ada di aturan reward dan panduan mining Bitcoin gratis. Syarat dan ketentuan berlaku.
Pertanyaan yang sering diajukan
Apa itu proof of work dalam istilah sederhana?
Ini adalah cara untuk membuat penambahan blok membutuhkan usaha nyata. Penambang melakukan hash pada header blok berulang kali, mengubah sebuah angka yang disebut nonce, hingga hasilnya jatuh di bawah sebuah target. Menemukan hash itu membutuhkan tebakan dalam jumlah sangat besar, tapi siapa pun bisa memeriksanya dengan satu hash saja.
Apa itu nonce di Bitcoin?
Sebuah angka 4 byte dalam header blok yang diubah penambang pada setiap tebakan. Angka ini memiliki sekitar 4,3 miliar kemungkinan nilai. Ketika habis, penambang mengubah nonce tambahan di dalam transaksi coinbase, yang menghasilkan merkle root baru dan sekumpulan hash yang baru.
Mengapa Bitcoin menggunakan SHA-256 dua kali?
Bitcoin melakukan hash pada header 80 byte dengan SHA-256 lalu melakukan hash lagi pada hasilnya. Satoshi tidak pernah menjelaskan pilihan ini. Tafsiran umumnya adalah ini melindungi dari serangan length-extension dan memberikan margin keamanan tambahan.
Apa yang memungkinkan seseorang lakukan dengan serangan 51%?
Seseorang dengan sebagian besar hashrate bisa membangun chain yang lebih panjang secara pribadi dan mengganti blok-blok terbaru, yang memungkinkan mereka membelanjakan dua kali koin mereka sendiri atau memblokir beberapa transaksi. Mereka tidak bisa membelanjakan koin orang lain, membuat koin di luar aturan, atau mengubah aturan untuk semua orang.
Apakah proof of stake lebih baik dari proof of work?
Ini menggunakan jauh lebih sedikit energi, dan keamanannya berasal dari koin yang dikunci sebagai stake. Proof of work mengikat keamanan pada biaya di luar sistem, listrik dan perangkat keras, dan telah menjalankan Bitcoin sejak 2009. Masing-masing memiliki trade-off yang berbeda, jadi mana yang lebih baik tergantung pada apa yang Anda hargai.
Bisakah saya mendapatkan bitcoin dari mining tanpa perangkat keras saya sendiri?
Ya. Di aplikasi CloudMineCrypto Anda mengklaim plan mining gratis (plan gratis, iklan, game, penawaran, dan check-in harian) dan saldo BTC Anda tumbuh selama plan tersebut berjalan, lalu Anda menarik ke dompet Anda sendiri. Reward adalah estimasi berdasarkan hashrate plan Anda dan data jaringan langsung, tidak dijamin, dan sebuah plan tidak memberi kepemilikan atas perangkat keras apa pun.
Sumber dan bacaan lanjutan
- Bitcoin: A Peer-to-Peer Electronic Cash System (whitepaper) · Satoshi Nakamoto, bitcoin.org
- Panduan block chain: header blok, proof of work, coinbase · Dokumentasi pengembang Bitcoin
- Panduan mining: solo mining, pool, getblocktemplate · Dokumentasi pengembang Bitcoin
- Tingkat kesulitan · Bitcoin Wiki
- Konfirmasi · Bitcoin Wiki
- Cambridge Bitcoin Electricity Consumption Index · Cambridge Centre for Alternative Finance
- Dasbor mining: hashrate, difficulty, blok terbaru · mempool.space
Angka langsung di halaman ini (hashrate jaringan, block reward, harga BTC) berasal dari API CloudMineCrypto, diperbarui setiap jam, dan diberi label di setiap kemunculannya. Panduan ini bersifat edukatif dan bukan nasihat keuangan. CloudMineCrypto bukan produk investasi; reward di aplikasi adalah estimasi dan tidak dijamin.
Kamu sudah membaca cara kerjanya. Sekarang saksikan sendiri.
Klaim paket mining gratis 8 jam di aplikasi CloudMineCrypto dan lihat estimasi BTC kamu naik dari data jaringan secara langsung. Tanpa perangkat keras, tanpa kartu.