Node adalah bagian penting dari jaringan blockchain, buku besar digital yang mencatat informasi transaksi aset crypto. Node memastikan Bitcoin dapat beroperasi sebagai sistem ekonomi terdistribusi peer-to-peer dan menjadikan blockchain jaringan yang terpercaya, dapat dimonitor siapapun, tanpa satu pihak yang memiliki kontrol penuh.
Jadi, apa fungsi node dan bagaimana cara kerjanya? Simak pembahasannya lebih lanjut di artikel ini.
Baca juga: Bagaimana Cara Kerja Blockchain?
Apa itu Nodes?
Pada dasarnya, node adalah komputer yang terhubung ke jaringan blockchain dan berkomunikasi dengan komputer lain untuk memastikan keamanan dan integritas jaringan. Sebagai contoh, jaringan Bitcoin dijalankan oleh beberapa nodes yang disebut sebagai Bitcoin protokol peer-to-peer.
Bitcoin nodes sendiri terdiri dari beberapa macam dengan fungsi yang berbeda-beda, antara lain sebagai sebagai tempat menyimpan database blockchain, menjaga konsensus antar sesama, dan memvalidasi serta menjaga jaringan peer-to-peer.
Jenis-jenis Nodes
Beberapa tipe nodes di dalam jaringan Bitcoin, yaitu:
- Full nodes
- Simplify Payment Verification (SPV) Nodes atau lightweight nodes
- Mining nodes
Sebuah node harus terkoneksi dengan peer yang berbeda untuk membentuk jalan di dalam jaringan Bitcoin. Jika salah satu node offline, maka node tersebut harus berkoneksi dengan node yang lain atau node baru. Ini dimaksudkan agar node akan terus mendapatkan informasi terkini.
Full Node
Full node adalah node yang menyimpan seluruh transaksi di dalam blokchain. Full nodes menyimpan seluruh data yang terkini dari blokchain Bitcoin dari pertama kali Bitcoin dibentuk. Sebuah full node dapat secara independen memverifikasi segala transaksi tanpa bergantung dengan node atau sumber informasi yang lain.
Siapapun dapat berpartisipasi untuk menjalankan full node asalkan memiliki komputer dengan kapasitas 400 gigabyte (yang akan terus bertambah seiring waktu) dan koneksi dengan kecepatan tinggi.
Menjalankan full node memberikan pengalaman Bitcoin secara menyeluruh karena kamu dapat berpartisipasi untuk memverifikasi seluruh transaksi secara independen tanpa harus bergantung kepada siapa-siapa. Full node akan menggunakan jaringan Bitcoin untuk menerima update dari blok dan seluruh transaksi baru.
Kemudian, full node akan memverifikasi dan memasukkan informasi tersebut ke dalam kopi dari blokchain yang ia miliki. Dengan demikian dengan menjalankan full node, kamu juga membantu untuk menjaga jaringan Bitcoin. Semakin banyak full node yang berpartisipasi maka akan membuat jaringan Bitcoin menjadi semakin aman.
Lalu, apa saja fungsi menjalankan full nodes?
- Dengan menjalankan full nodes kamu memiliki kontrol penuh untuk memastikan bahwa protokol Bitcoin ini dipatuhi. Nodes dapat menolak blok atau transaksi yang tidak mengikuti peraturan konsensus Bitcoin dengan cara menolak koneksi dari si pengirim.
- Apabila kamu tidak menjalankan full nodes berarti kamu harus bergantung kepada nodes dari service provider tersebut. Dengan menjalankan nodes sendiri maka kamu tidak perlu bergantung kepada pihak lain.
- Apabila terjadi hardfork atau program mengalami percabangan, maka full nodes dapat memilih blokchain mana yang ingin ia ikuti berdasarkan dari keinginannya. Sebagai contoh, di saat Bitcoin mengalami percabangan menjadi Bitcoin Core dan Bitcoin Cash, full node dapat memilih ingin mengikuti rantai yang mana. Dalam kata lain full nodes berfungsi sebagai alat voting.
- Menjalankan full node memberikan kamu privasi yang utuh.
SPV Nodes
SPV Nodes adalah nodes yang memungkinkan pengguna untuk memeriksa apakah beberapa transaksi dimasukkan atau tidak dalam satu blok, tanpa harus mengunduh seluruh data blok.
Sederhananya, full nodes memiliki data komplit dari Bitcoin pertama kali dibentuk hingga saat ini, sedangkan SPV hanya memiliki rangkumannya saja. SPV biasanya digunakan untuk memudahkan layanan yang tidak memiliki kapasitas memori yang cukup besar seperti mobile wallet.
SPV Nodes memiliki keamanan yang lebih lemah dibandingkan dengan full nodes. Full Nodes merekam seluruh transaksi sehingga dia tidak memerlukan untuk membuka informasi tentang alamat di dalam wallet sedangkan SPV Nodes menerima daftar transaksi yang sudah disaring berkaitan dengan alamat yang ada di dalam wallet tersebut.
Mining Nodes
Mining nodes adalah nodes di dalam jaringan Bitcoin yang memiliki fungsi khusus untuk mining. Seperti fungsi nodes yang lain, miner nodes menerima dan menyiarkan transaksi ke dalam jaringan Bitcoin. Miner nodes memiliki fungsi khusus yaitu mengumpulkan transaksi tersebut ke dalam blok baru.
Setelah miner memvalidasi transaksi, mining node akan memasukkan transaksi tersebut ke dalam memory pool di mana transaksi akan akan menunggu untuk dimasukkan ke dalam sebuah blok.
Mari kita ambil contoh cerita tiga orang yang bernama A, B dan C. A adalah seorang miner, sementara B dan C pengguna aplilkasi Pintu. B ingin mengirimkan 1 BTC kepada C melalui aplikasi Pintu. Setelah B mengirimkan transaksi, transaksi ini akan dimasukkan ke dalam memory pool.
A menjalankan mesin mining-nya dan mengumpulkan ratusan transaksi ke dalam candidate block atau blok yang nantinya akan dimasukkan ke dalam jaringan blockchain. Salah satu transaksi yang dikumpulkan oleh A adalah transaksi dari B dan C. A menjalankan beberapa mesin mining dan mulai menjalankan algoritma sha256 jam untuk memvalidasi blok tersebut.
Setelah kurang lebih 10 menit A menemukan hash yang sesuai dengan target mining. Blok ini pun dianggap valid. Maka mining node A akan menyiarkan blok itu kepada seluruh peer-nya. Di saat mining node yang lain menerima dan memvalidasi blok yang disiarkan oleh A maka miner yang lain akan segera mempersiapkan blok baru selanjutnya.
Kesimpulan
- Node adalah komputer yang terhubung ke jaringan blockchain dan berkomunikasi dengan komputer lain untuk memastikan keamanan dan integritas jaringan.
- Pada jaringan Bitcoin misalnya, terdapat tiga tipe nodes, yaitu full nodes, SPV nodes atau lightweight nodes dan mining nodes.
- Ketiganya memiliki fungsi yang berbeda-beda. Full node adalah node yang menyimpan seluruh transaksi di dalam blokchain. SPV nodes memungkinkan pengguna untuk memeriksa apakah beberapa transaksi dimasukkan atau tidak dalam satu blok, tanpa harus mengunduh seluruh data blok, sementara Mining nodes adalah nodes di dalam jaringan Bitcoin yang memiliki fungsi khusus untuk mining.