Apa itu peer-to-peer (P2P)?

Dalam ilmu komputer, jaringan peer-to-peer (P2P) terdiri dari sekelompok perangkat yang secara kolektif menyimpan dan berbagi file. Setiap peserta (node) bertindak sebagai rekan individu. Biasanya, semua node memiliki kekuatan yang sama dan melakukan tugas yang sama.

Dalam teknologi keuangan, istilah peer-to-peer biasanya mengacu pada pertukaran mata uang kripto atau aset digital melalui jaringan terdistribusi. Platform P2P memungkinkan pembeli dan penjual melakukan perdagangan tanpa memerlukan perantara. Dalam beberapa kasus, situs web juga menyediakan lingkungan P2P yang menghubungkan pemberi pinjaman dan peminjam.

Arsitektur P2P cocok untuk berbagai kasus penggunaan, tetapi arsitektur ini menjadi sangat populer pada tahun 1990an ketika program berbagi file pertama kali dibuat. Saat ini, jaringan P2P merupakan inti dari sebagian besar mata uang kripto, dan merupakan bagian besar dari industri blockchain. Namun, mereka juga dimanfaatkan dalam aplikasi komputasi terdistribusi lainnya, termasuk mesin pencari web, platform streaming, pasar online, dan protokol web InterPlanetary File System (IPFS).


Bagaimana cara kerja P2P?

Intinya, sistem P2P dikelola oleh jaringan pengguna yang terdistribusi. Biasanya, mereka tidak memiliki administrator pusat atau server karena setiap node menyimpan salinan file – bertindak sebagai klien dan sebagai server untuk node lain. Dengan demikian, setiap node dapat mendownload file dari node lain atau mengupload file ke node tersebut. Inilah yang membedakan jaringan P2P dari sistem klien-server yang lebih tradisional, di mana perangkat klien mengunduh file dari server terpusat.

Pada jaringan P2P, perangkat yang terhubung berbagi file yang disimpan di hard drive mereka. Dengan menggunakan aplikasi perangkat lunak yang dirancang untuk memediasi pembagian data, pengguna dapat menanyakan perangkat lain di jaringan untuk menemukan dan mengunduh file. Setelah pengguna mengunduh file tertentu, mereka kemudian dapat bertindak sebagai sumber file tersebut.

Dengan kata lain, ketika sebuah node bertindak sebagai klien, mereka mendownload file dari node jaringan lain. Namun ketika mereka bekerja sebagai server, mereka adalah sumber dari mana node lain dapat mendownload file. Namun dalam praktiknya, kedua fungsi tersebut dapat dijalankan secara bersamaan (misalnya, mengunduh file A, dan mengunggah file B).

Karena setiap node menyimpan, mengirim dan menerima file, jaringan P2P cenderung lebih cepat dan efisien seiring dengan bertambahnya basis penggunanya. Selain itu, arsitektur terdistribusinya membuat sistem P2P sangat tahan terhadap serangan siber. Berbeda dengan model tradisional, jaringan P2P tidak memiliki satu titik kegagalan pun.

Kami dapat mengkategorikan sistem peer-to-peer berdasarkan arsitekturnya. Tiga jenis utama disebut jaringan P2P tidak terstruktur, terstruktur, dan hybrid.


Jaringan P2P tidak terstruktur

Jaringan P2P tidak terstruktur tidak menampilkan organisasi node tertentu. Para peserta berkomunikasi secara acak satu sama lain. Sistem ini dianggap kuat terhadap aktivitas churn yang tinggi (yaitu, beberapa node sering bergabung dan keluar dari jaringan).

Meskipun lebih mudah untuk dibangun, jaringan P2P yang tidak terstruktur mungkin memerlukan penggunaan CPU dan memori yang lebih tinggi karena permintaan pencarian dikirimkan ke jumlah rekan sebanyak mungkin. Hal ini cenderung membanjiri jaringan dengan pertanyaan, terutama jika sejumlah kecil node menawarkan konten yang diinginkan.


Jaringan P2P terstruktur

Sebaliknya, jaringan P2P terstruktur menghadirkan arsitektur yang terorganisir, memungkinkan node mencari file secara efisien, meskipun kontennya tidak tersedia secara luas. Dalam kebanyakan kasus, hal ini dicapai melalui penggunaan fungsi hash yang memfasilitasi pencarian database.

Meskipun jaringan terstruktur mungkin lebih efisien, jaringan tersebut cenderung memiliki tingkat sentralisasi yang lebih tinggi, dan biasanya memerlukan biaya pengaturan dan pemeliharaan yang lebih tinggi. Selain itu, jaringan terstruktur kurang kuat ketika dihadapkan pada tingkat churn yang tinggi.


Jaringan P2P hibrida

Jaringan P2P hibrid menggabungkan model klien-server konvensional dengan beberapa aspek arsitektur peer-to-peer. Misalnya, desainnya mungkin berisi server pusat yang memfasilitasi koneksi antar rekan.

Jika dibandingkan dengan dua tipe lainnya, model hybrid cenderung menghadirkan peningkatan performa secara keseluruhan. Mereka biasanya menggabungkan beberapa keunggulan utama dari masing-masing pendekatan, sehingga mencapai tingkat efisiensi dan desentralisasi yang signifikan secara bersamaan.


Terdistribusi vs. terdesentralisasi

Meskipun arsitektur P2P terdistribusi secara inheren, penting untuk dicatat bahwa terdapat berbagai tingkat desentralisasi. Jadi, tidak semua jaringan P2P terdesentralisasi.

Faktanya, banyak sistem bergantung pada otoritas pusat untuk memandu aktivitas jaringan, sehingga menjadikannya agak terpusat. Misalnya, beberapa sistem berbagi file P2P memungkinkan pengguna untuk mencari dan mengunduh file dari pengguna lain, namun mereka tidak dapat berpartisipasi dalam proses lain, seperti mengelola kueri penelusuran.

Selain itu, jaringan kecil yang dikendalikan oleh basis pengguna terbatas dengan tujuan bersama juga dapat dikatakan memiliki tingkat sentralisasi yang lebih tinggi, meskipun infrastruktur jaringan tidak terpusat.


Peran P2P dalam blockchain

Pada tahap awal Bitcoin, Satoshi Nakamoto mendefinisikannya sebagai “Sistem Uang Elektronik Peer-to-Peer.” Bitcoin diciptakan sebagai bentuk uang digital. Itu dapat ditransfer dari satu pengguna ke pengguna lain melalui jaringan P2P, yang mengelola buku besar terdistribusi yang disebut blockchain.

Dalam konteks ini, arsitektur P2P yang melekat pada teknologi blockchain memungkinkan bitcoin dan mata uang kripto lainnya ditransfer ke seluruh dunia, tanpa memerlukan perantara atau server pusat apa pun. Selain itu, siapa pun dapat menyiapkan node Bitcoin jika mereka ingin berpartisipasi dalam proses verifikasi dan validasi blok.

Jadi, tidak ada bank yang memproses atau mencatat transaksi di jaringan Bitcoin. Sebaliknya, blockchain bertindak sebagai buku besar digital yang mencatat semua aktivitas secara publik. Pada dasarnya, setiap node menyimpan salinan blockchain dan membandingkannya dengan node lain untuk memastikan datanya akurat. Jaringan dengan cepat menolak aktivitas jahat atau ketidakakuratan apa pun.

Dalam konteks blockchain mata uang kripto, node dapat mengambil berbagai peran berbeda. Node penuh, misalnya, adalah node yang memberikan keamanan pada jaringan dengan memverifikasi transaksi berdasarkan aturan konsensus sistem.

Setiap node penuh menyimpan salinan blockchain yang lengkap dan diperbarui - memungkinkan mereka untuk berpartisipasi dalam pekerjaan kolektif untuk memverifikasi keadaan sebenarnya dari buku besar yang didistribusikan. Namun, perlu dicatat bahwa tidak semua node yang memvalidasi penuh adalah penambang.


Keuntungan

Arsitektur blockchain peer-to-peer memberikan banyak manfaat. Salah satu yang paling penting adalah kenyataan bahwa jaringan P2P menawarkan keamanan yang lebih besar dibandingkan pengaturan client-server tradisional. Distribusi blockchain ke sejumlah besar node menjadikannya kebal terhadap serangan Denial-of-Service (DoS) yang mengganggu banyak sistem.

Demikian pula, karena mayoritas node harus menetapkan konsensus sebelum data ditambahkan ke blockchain, hampir tidak mungkin bagi penyerang untuk mengubah data tersebut. Hal ini terutama berlaku untuk jaringan besar seperti Bitcoin. Blockchain yang lebih kecil lebih rentan terhadap serangan karena satu orang atau kelompok pada akhirnya dapat menguasai sebagian besar node (ini dikenal sebagai serangan 51 persen).

Hasilnya, jaringan peer-to-peer yang terdistribusi, dipadukan dengan persyaratan konsensus mayoritas, memberikan blockchain tingkat ketahanan yang relatif tinggi terhadap aktivitas jahat. Model P2P adalah salah satu alasan mengapa Bitcoin (dan blockchain lainnya) mampu mencapai apa yang disebut toleransi kesalahan Bizantium.

Selain keamanan, penggunaan arsitektur P2P dalam blockchain mata uang kripto juga menjadikannya tahan terhadap sensor oleh otoritas pusat. Tidak seperti rekening bank standar, dompet mata uang kripto tidak dapat dibekukan atau dikuras oleh pemerintah. Penolakan ini juga meluas ke upaya penyensoran yang dilakukan oleh pemrosesan pembayaran swasta dan platform konten. Beberapa pembuat konten dan pedagang online mengadopsi pembayaran mata uang kripto sebagai cara untuk menghindari pembayaran mereka diblokir oleh pihak ketiga.


Keterbatasan

Meskipun memiliki banyak kelebihan, penggunaan jaringan P2P pada blockchain juga memiliki keterbatasan tertentu.

Karena buku besar yang terdistribusi harus diperbarui di setiap node, bukan di server pusat, menambahkan transaksi ke blockchain memerlukan daya komputasi yang sangat besar. Meskipun hal ini memberikan peningkatan keamanan, hal ini sangat mengurangi efisiensi dan merupakan salah satu kendala utama dalam hal skalabilitas dan adopsi secara luas. Meskipun demikian, kriptografer dan pengembang blockchain sedang menyelidiki alternatif yang dapat digunakan sebagai solusi penskalaan. Contoh yang menonjol termasuk Lightning Network, Ethereum Plasma, dan protokol Mimblewimble.

Keterbatasan potensial lainnya berkaitan dengan serangan yang mungkin timbul selama peristiwa hard fork. Karena sebagian besar blockchain bersifat terdesentralisasi dan open source, kelompok node bebas menyalin dan memodifikasi kode dan memisahkan diri dari rantai utama untuk membentuk jaringan paralel baru. Hard fork sepenuhnya normal dan bukan merupakan ancaman. Namun jika metode keamanan tertentu tidak diterapkan dengan benar, kedua rantai tersebut mungkin menjadi rentan terhadap serangan berulang.

Selain itu, sifat jaringan P2P yang terdistribusi membuatnya relatif sulit untuk dikontrol dan diatur, tidak hanya di ceruk blockchain. Beberapa aplikasi dan perusahaan P2P terlibat dalam aktivitas ilegal dan pelanggaran hak cipta.


Arsitektur peer-to-peer dapat dikembangkan dan digunakan dengan berbagai cara, dan ini merupakan inti dari blockchain yang memungkinkan mata uang kripto. Dengan mendistribusikan buku besar transaksi di seluruh jaringan node yang besar, arsitektur P2P menawarkan keamanan, desentralisasi, dan ketahanan terhadap sensor.

Selain kegunaannya dalam teknologi blockchain, sistem P2P juga dapat melayani aplikasi komputasi terdistribusi lainnya, mulai dari jaringan berbagi file hingga platform perdagangan energi.