Academy
Apa Itu Proof of Work (PoW)?
Proof of Work (PoW) adalah suatu mekanisme yang digunakan untuk mencegah terjadinya pengeluaran ganda atau double-spend. Mayoritas aset kripto utama menggunakan mekanisme ini sebagai algoritma konsensus yang digunakan untuk mengamankan ledger aset kripto.
Proof of Work merupakan algoritma konsensus pertama yang muncul dan masih mendominasi hingga saat ini. Algoritma ini pertama kali diperkenalkan oleh Satoshi Nakamoto dalam white paper Bitcoin pada tahun 2008, meskipun teknologinya sendiri sudah ada sebelumnya.
Contoh awal algoritma Proof of Work sebelum era kripto adalah HashCash Adam Back. Dalam HashCash, pengirim diwajibkan melakukan komputasi ringan sebelum mengirim email, sehingga penerima dapat mengurangi jumlah spam yang diterima.
Komputasi ini hampir tidak berbiaya bagi pengirim yang sah, namun biayanya akan meningkat jika seseorang mengirim email secara massal.
Daftar Isi
Apa Itu Double-spend?
Double-spend atau pengeluaran ganda terjadi ketika dana yang sama digunakan untuk pembelanjaan lebih dari sekali. Istilah ini khusus digunakan dalam konteks uang digital karena dalam uang fisik, hampir tidak mungkin untuk membelanjakan uang yang sama dua kali.
Ketika Anda membayar kopi hari ini, Anda memberikan uang tunai kepada kasir yang kemudian menguncinya dalam laci. Anda tidak dapat pergi ke kedai kopi lainnya dan membayar kopi lagi dengan menggunakan uang yang sama.
Namun, dalam skema uang digital, ada kemungkinan untuk melakukan hal tersebut. Anda pasti pernah menggandakan file komputer, cukup dengan melakukan salinan dan tempel. Anda dapat mengirimkan salinan file yang sama kepada sepuluh, dua puluh, atau bahkan lima puluh orang.
Karena uang digital hanya berupa data, maka perlu ada langkah-langkah untuk mencegah orang lain menyalin dan menggunakan unit yang sama di tempat yang berbeda. Jika tidak, mata uang digital tersebut akan mengalami keruntuhan dalam waktu singkat.
Mengapa Proof of Work Penting?
Jika Anda telah membaca panduan kami tentang teknologi blockchain, Anda pasti tahu bahwa pengguna mengirimkan transaksi ke jaringan. Namun, transaksi tersebut tidak langsung dianggap valid. Transaksi baru dianggap valid hanya jika telah ditambahkan ke dalam blockchain.
Blockchain adalah sebuah database besar yang dapat dilihat oleh setiap pengguna, sehingga setiap orang dapat memeriksa apakah dana telah digunakan sebelumnya.
Anda dapat membayangkan hal ini seperti memiliki sebuah buku catatan bersama dengan tiga teman. Setiap kali salah satu dari Anda ingin mentransfer unit apapun, transaksi tersebut harus dicatat, misalnya Alice membayar lima unit kepada Bob, Bob membayar dua unit kepada Carol, dan seterusnya.
Ada beberapa hubungan yang rumit di sini, yaitu setiap kali melakukan transaksi, Anda harus merujuk pada transaksi sebelumnya dari mana dana itu berasal. J
adi, jika Bob membayar dua unit kepada Carol, entri transaksi sebenarnya akan terlihat seperti ini: Bob membayar dua unit kepada Carol dari transaksi sebelumnya dengan Alice.
Dengan cara ini, kita memiliki cara untuk melacak unit tersebut. Jika Bob mencoba melakukan transaksi lain menggunakan unit yang sama yang baru saja dia kirimkan kepada Carol, semua orang akan segera mengetahuinya. Grup tidak akan mengizinkan transaksi tersebut ditambahkan ke buku catatan.
Namun, cara ini mungkin berhasil dalam kelompok kecil di mana semua orang saling mengenal, sehingga mereka mungkin akan setuju tentang siapa yang bertanggung jawab untuk menambahkan transaksi ke buku catatan.
Namun, bagaimana jika kita ingin memiliki kelompok dengan 10.000 peserta? Ide buku catatan tidak akan berhasil, karena tidak ada yang akan mempercayai orang asing untuk mengelolanya.
Inilah mengapa Proof of Work sangat penting. Algoritma ini memastikan bahwa pengguna tidak dapat membelanjakan uang yang tidak sah untuk mereka gunakan.
Dengan menggunakan kombinasi teori permainan dan kriptografi, algoritma PoW memungkinkan siapa saja untuk memperbarui blockchain sesuai dengan aturan sistem yang telah ditetapkan.
Bagaimana Proof of Work (PoW) Bekerja?
Seperti yang telah kita bahas sebelumnya, blockchain merupakan buku catatan yang digunakan dalam Proof of Work.
Namun, transaksi tidak ditambahkan satu per satu, melainkan dikelompokkan menjadi blok-blok.
Pengguna yang membuat blok akan mengumumkan transaksi ke jaringan dan memasukkannya ke dalam kandidat blok.
Transaksi baru hanya dianggap sah setelah kandidat blok tersebut dikonfirmasi dan ditambahkan ke dalam blockchain.
Namun, menambahkan blok bukanlah tugas yang murah. Proof of Work mengharuskan penambang (pengguna yang membuat blok) untuk menggunakan sumber daya komputasi mereka sendiri untuk melakukan ini.
Sumber daya tersebut digunakan untuk melakukan hashing terhadap data blok sampai ditemukan solusi dari sebuah puzzle.
Melakukan hashing terhadap data blok berarti mengirimkannya melalui fungsi hash untuk menghasilkan hash blok. Hash blok berfungsi seperti “sidik jari” yang merupakan identitas unik untuk data input, dan setiap blok memiliki hash yang berbeda.
Membalikkan hash blok menjadi data input yang asli hampir tidak mungkin. Namun, dengan mengetahui data input, mudah bagi seseorang untuk memverifikasi kebenaran hash tersebut. Hanya perlu mengirimkan data input melalui fungsi hash dan memeriksa apakah outputnya cocok.
Dalam Proof of Work, pengguna harus menyediakan data yang menghasilkan hash yang memenuhi persyaratan tertentu.
Namun, mereka tidak tahu bagaimana cara mencapainya. Satu-satunya pilihan adalah mengirimkan data melalui fungsi hash dan memeriksa apakah memenuhi persyaratan.
Jika tidak, pengguna harus mengubah data tersebut sedikit demi sedikit hingga mendapatkan hash yang berbeda.
Mengubah bahkan satu karakter dalam data akan menghasilkan hash yang berbeda secara keseluruhan, sehingga tidak ada cara untuk memprediksi outputnya.
Jadi, jika ingin membuat blok, pengguna bermain dalam permainan tebak-tebakan. Secara umum, pengguna mengumpulkan informasi tentang semua transaksi yang ingin mereka masukkan ke dalam blok dan beberapa data penting lainnya, lalu melakukan hashing terhadap semua data tersebut.
Namun, karena datasetnya tidak berubah, mereka perlu menambahkan informasi variabel kecil sebagai bagian data. Informasi variabel ini disebut sebagai nonce, yang merupakan angka yang diubah setiap kali mencoba untuk mendapatkan hash yang berbeda. Dalam hal ini, pengguna sedang melakukan penambangan.
Dalam kesimpulannya, penambangan adalah proses mengumpulkan data blockchain dan melakukan hashing bersama dengan nonce hingga menemukan hash yang memenuhi persyaratan.
Jika pengguna menemukan hash yang memenuhi persyaratan yang ditetapkan oleh protokol, mereka berhak untuk mengumumkan blok baru ke jaringan. Pada titik ini, peserta lain dalam jaringan akan memperbarui blockchain mereka dengan menambahkan blok baru tersebut.
Dalam aset kripto besar saat ini, persyaratan untuk menemukan hash yang valid sangat sulit. Semakin tinggi tingkatidalam jaringan, semakin sulit untuk menemukan hash yang memenuhi persyaratan tersebut. Hal ini dirancang untuk memastikan agar blok tidak ditemukan terlalu cepat.
Seperti yang dapat Anda bayangkan, mencoba menebak hash dalam jumlah besar di komputer bisa sangat mahal. Anda akan menghabiskan banyak siklus komputasi dan listrik. Namun, protokol memberikan hadiah dalam bentuk aset kripto jika Anda berhasil menemukan hash yang valid.
Mari kita ingat kembali apa yang telah kita bahas selama ini:
- Penambangan merupakan proses yang mahal.
- Ada hadiah yang diberikan jika Anda berhasil menghasilkan blok yang valid.
- Dengan mengetahui data input, pengguna dapat dengan mudah memeriksa hash tersebut tanpa perlu menggunakan banyak daya komputasi.
Sejauh ini semuanya baik-baik saja. Tetapi, apa yang akan terjadi jika seseorang mencoba melakukan penipuan?
Apakah ada yang bisa mencegah mereka untuk memasukkan banyak transaksi penipuan ke dalam blok dan menghasilkan hash yang valid?
Di sinilah peran kriptografi kunci-publik (public-key cryptography) masuk. Meskipun tidak akan dibahas secara detail dalam artikel ini, kriptografi kunci-publik memungkinkan setiap pengguna untuk memverifikasi apakah seseorang memiliki hak untuk menghabiskan dana yang mereka coba keluarkan.
Ketika Anda melakukan transaksi, Anda menandatanganinya. Siapa pun dalam jaringan dapat membandingkan tanda tangan tersebut dengan kunci publik Anda dan memeriksa apakah cocok. Mereka juga akan memeriksa apakah Anda memiliki hak yang sah untuk menghabiskan dana tersebut, dan bahwa jumlah input lebih besar dari jumlah output (artinya, Anda tidak menghabiskan dana lebih dari yang Anda miliki).
Setiap blok yang memasukkan transaksi yang tidak valid akan ditolak secara otomatis oleh jaringan. Oleh karena itu, sangat mahal bagi seseorang untuk mencoba melakukan penipuan. Mereka hanya akan menyia-nyiakan sumber daya mereka tanpa mendapatkan hadiah apa pun.
Di sinilah keindahan Proof of Work terletak: sangat mahal untuk melakukan penipuan, tetapi menguntungkan untuk bertindak jujur. Setiap penambang yang berpikiran waras akan mencari tingkat pengembalian investasi (ROI), sehingga mereka tidak akan melakukan hal yang merugikan diri mereka sendiri.
Apa Kelebihan dan Kekurangan Proof of Work (PoW)?
Proof of Work (PoW) memiliki kelebihan dan kekurangan yang perlu dipertimbangkan. Berikut ini adalah beberapa kelebihan dan kekurangan PoW:
Kelebihan Proof of Work:
- Keamanan yang tinggi: PoW telah terbukti secara luas menjadi algoritma konsensus yang sangat aman. Dalam PoW, untuk memalsukan atau melakukan serangan pada jaringan, seseorang harus menguasai lebih dari 50% kekuatan hash total jaringan, yang sulit dan mahal untuk dicapai.
- Terbukti berhasil: PoW telah digunakan secara luas dalam blockchain seperti Bitcoin dan Ethereum, dan telah terbukti berhasil dalam mengamankan jutaan transaksi dengan aman selama bertahun-tahun.
- Desentralisasi: PoW memungkinkan partisipasi dari berbagai penambang yang berbeda, sehingga menjaga aspek desentralisasi dari jaringan. Tidak ada entitas tunggal yang mengendalikan proses penambangan atau keputusan dalam jaringan.
Kekurangan Proof of Work:
- Konsumsi energi yang tinggi: Proses penambangan PoW memerlukan penggunaan daya komputasi yang besar, yang menghasilkan konsumsi energi yang tinggi. Hal ini mengarah pada dampak lingkungan yang signifikan dan meningkatkan biaya operasional untuk penambang.
- Skalabilitas terbatas: Dalam PoW, semakin banyak penambang yang bergabung dalam jaringan, semakin sulit dan lambat proses penambangan blok baru. Ini dapat menyebabkan penundaan dalam konfirmasi transaksi dan membatasi skalabilitas jaringan.
- Pusat kekuatan mining: Karena peralatan penambangan yang mahal dan konsumsi energi yang tinggi, aktivitas penambangan PoW lebih terpusat di daerah-daerah dengan akses terhadap sumber daya murah seperti energi listrik. Hal ini dapat menyebabkan terkonsentrasinya kekuatan penambangan pada beberapa entitas besar, yang mengurangi aspek desentralisasi.
Kelebihan dan kekurangan PoW perlu dipertimbangkan dalam konteks spesifik masing-masing blockchain dan kebutuhan penggunaannya. Beberapa protokol lain seperti Proof of Stake (PoS) dikembangkan sebagai alternatif untuk mengatasi beberapa kekurangan PoW, dengan menawarkan efisiensi energi yang lebih tinggi dan skala yang lebih baik.
Perbandingan Proof of Work (PoW) dan Proof of Stake (PoS)
Terdapat banyak algoritma konsensus yang berbeda, dan salah satunya adalah Proof of Stake (PoS). Konsep PoS pertama kali diperkenalkan pada tahun 2011 dan telah diimplementasikan dalam beberapa protokol kecil. Namun, belum terlihat adopsi yang luas pada blockchain besar.
Dalam sistem Proof of Stake, peran penambang digantikan oleh validator. PoS tidak melibatkan proses penambangan dan tidak ada persaingan untuk menebak hash. Sebaliknya, pengguna dipilih secara acak – jika terpilih, mereka harus mengusulkan (atau “menghasilkan”) sebuah blok. Jika blok tersebut valid, mereka akan menerima reward berupa biaya transaksi dari blok tersebut.
Namun, pemilihan pengguna tidak sembarangan – protokol memilih mereka berdasarkan beberapa faktor. Untuk memenuhi syarat, peserta harus mengunci stake, yaitu sejumlah mata uang asli dari blockchain yang telah ditentukan sebelumnya.
Stake berfungsi sebagai jaminan: sama seperti terdakwa harus memberikan jumlah uang tertentu sebagai jaminan karena melewatkan sidang, validator harus mengunci stake mereka untuk mencegah kecurangan. Jika mereka bertindak tidak jujur, seluruh atau sebagian dari stake mereka dapat diambil.
Proof of Stake memang memiliki beberapa keunggulan dibandingkan Proof of Work. Salah satu keunggulan utamanya adalah dampak lingkungan yang lebih kecil – karena tidak ada kebutuhan untuk melakukan penambangan dengan daya komputasi tinggi, konsumsi listriknya jauh lebih rendah daripada PoW.
Namun, PoS tidak memiliki catatan sejarah yang sama kuat dengan PoW. Meskipun PoS dianggap lebih hemat, penambangan tetap menjadi satu-satunya algoritma konsensus yang terbukti berhasil.
Dalam waktu lebih dari satu dekade, penambangan telah berhasil mengamankan triliunan dolar transaksi. Untuk secara pasti mengatakan apakah PoS dapat menyamai keamanan PoW, PoS masih perlu diuji secara mendalam dalam kondisi dunia nyata.
Kesimpulan
Proof of Work adalah solusi pertama yang terbukti andal dan aman untuk masalah double-spend. Bitcoin telah membuktikan bahwa kita tidak memerlukan entitas terpusat untuk mencegah pengeluaran dana yang sama dua kali. Dengan penggunaan kriptografi, fungsi hash, dan teori permainan yang cerdas, peserta dalam ekosistem terdesentralisasi dapat mencapai kesepakatan tentang keadaan suatu database keuangan.
Sumber: Binance Academy Indonesia
-
Event6 days ago
Event Tokocrypto Minggu Ini
-
Bitcoin News6 days ago
Tren Bitcoin 18-22 November 2024: Waktunya Alt Coins By Hoteliercrypto
-
Bitcoin News6 days ago
Prediksi Bitcoin Hari Ini: VanEck Optimis BTC Capai $180.000
-
Academy6 days ago
Riset Mingguan Kripto 11-15 Nov: Bitcoin ATH, Sektor Apa yang Perlu Dipantau?