Pada jaringan klien-ke-klien, setiap simpul (dalam hal ini komputer) yang saling berhubungan disebut dengan "klien" (*peer*). Mereka saling berbagi sumber daya antara satu sama lain tanpa menggunakan sistem administrasi terpusat.
Contoh jaringan yang berdasar pada model klien-peladen; setiap *klien* akan meminta layanan dan sumber daya dari *peladen* yang terpusat.
Jaringan atau komputasi **klien-ke-klien**, **rekan-ke-rekan**, atau **padan-ke-padan** (bahasa Inggris: *peer-to-peer (P2P)*) adalah arsitektur aplikasi terdistribusi, yang membagi beban kerja atau tugas antar klien (*peers*) dalam jaringan tersebut. Pada jaringan ini, setiap klien memiliki hak dan kesempatan berpartisipasi yang sama. Contoh klien dalam jaringan P2P dapat berupa komputer, *smartphone*, dan/atau perangkat IoT. Istilah **jaringan klien-ke-klien** juga digunakan untuk merujuk pada jaringan P2P.

Setiap klien akan menyediakan sebagian dari sumber daya mereka, seperti daya pemrosesan, penyimpanan data, maupun *bandwidth* koneksi, agar dapat dipakai secara langsung oleh para anggota jaringan; tanpa perlu menggunakan peladen (*server*) atau *host* yang stabil. Setiap klien adalah penyedia dan konsumen sumber daya, berbeda dengan model klien-peladen yang membedakan siapa penyedia sumber daya dan siapa yang mengonsumsinya.

Walau jaringan P2P sebelumnya telah banyak digunakan di banyak bidang, arsitektur ini menjadi populer karena sistem berbagi-berkas (*file sharing*) Napster yang pertama kali rilis pada tahun 1999. Konsep ini telah mengilhami struktur dan filosofi yang baru di banyak bidang interaksi manusia. Dalam konteks sosial seperti itu, jaringan P2P (sebagai meme) mengacu pada sebuah jejaring sosial egaliter yang berkembang di dalam masyarakat, yang dimungkinkan oleh teknologi internet secara umum.

Sejarah perkembangan
--------------------


Meskipun sistem klien-ke-klien sebelumnya telah digunakan di banyak bidang, konsep ini dipopulerkan oleh sistem berbagi-berkas (*file sharing*) seperti aplikasi berbagi-musik Napster (rilis pertama kali pada tahun 1999). Konsep dasar dari komputasi peer-to-peer sebelumnya telah direncanakan pada masa awal sistem perangkat lunak dan jaringan, yang dapat ditelusuri kembali sampai ke prinsip-prinsip yang dinyatakan dalam Request for Comments pertama, RFC 1.

Tim Berners-Lee membayangkan World Wide Web akan menyerupai sebuah jaringan P2P, mengasumsikan bahwa setiap pengguna web akan menjadi editor dan kontributor aktif, dalam membuat dan menghubungkan konten untuk membentuk "web" tautan yang saling terkait. Keadaan Internet di masa awal lebih terbuka daripada saat ini, dalam artian dua mesin yang terhubung ke Internet dapat mengirim paket satu sama lain tanpa *firewall* dan langkah-langkah keamanan lainnya. Pemikiran ini jauh berbeda dengan struktur web "yang menyiarkan" yang telah berkembang pada masa-masa berikutnya. Sebagai pendahulu Internet, ARPANET adalah jaringan klien-peladen yang sukses, sedemikian sehingga "setiap klien yang berpartisipasi dapat meminta dan melayani konten." Namun, ARPANET tidak *self-organized*, dan tidak memiliki kemampuan untuk "menyediakan sarana untuk konteks atau *routing* berbasis konten di luar perutean (*routing*) 'sederhana' berbasis alamat."

Arsitektur
----------

Jaringan P2P didesain dengan gagasan simpul (*node*) klien pada jaringan dapat berfungsi secara simultan sebagai "klien" dan "peladen" ke simpul-simpu lain. Model pengaturan jaringan ini berbeda dari model klien-peladen yang arah komunikasi biasanya terjadi ke dan dari peladen pusat. Contoh tipikal dari proses transfer berkas yang menggunakan model klien-peladen adalah layanan Protokol Transfer Berkas (*File Transfer Protocol*, FTP). Pada model ini, tujuan klien dan peladen berbeda: klien memulai transfer (permintaan), dan peladen memenuhi permintaan.

### Perutean dan penemuan sumber daya

Jaringan P2P umumnya mengimplementasikan beberapa bentuk jaringan *overlay* virtual di atas topologi jaringan fisik, di mana simpul-simpul dalam *overlay* membentuk subset dari simpul-simpul dalam jaringan fisik. Pertukaran data dilakukan secara langsung melalui jaringan TCP/IP yang mendasari jaringan P2P. Walaupun demikian, klien-klien masih dapat berkomunikasi satu sama lain secara langsung pada lapisan aplikasi, dengan menggunakan tautan-tautan *logical overlay* (masing-masing sesuai dengan jalur pada jaringan fisik yang mendasarinya). *Overlay* digunakan untuk pengindeksan dan penemuan klien, dan membuat sistem P2P independen dari topologi jaringan fisik. Berdasarkan bagaimana simpul-simpul dihubungkan satu sama lain dalam jaringan overlay, dan bagaimana sumber daya diindeks dan ditempatkan, jaringan P2P dapat diklasifikasikan sebagai *jaringan tidak terstruktur* atau *jaringan terstruktur* (atau sebagai hibrida di antara keduanya).

#### Jaringan tidak terstruktur

Diagram jaringan *overlay* untuk **jaringan P2P tidak terstruktur**, mengilustarikan sifat ad hoc dari koneksi antar simpul.
*Jaringan peer-to-peer yang tidak terstruktur* tidak memaksakan desain struktur tertentu pada jaringan *overlay*, melainkan dibentuk oleh simpul-simpul yang secara acak membentuk koneksi satu sama lain. (Gnutella, Gosip, and Kazaa adalah contoh protokol P2P yang tidak terstruktur). Karena tidak ada struktur yang dipaksakan secara global, jaringan tidak terstruktur mudah untuk dibangun dan memungkinkan untuk optimasi lokal ke berbagai wilayah *overlay*. Selain itu, karena setiap klien dalam jaringan memiliki peran yang sama, jaringan tidak terstruktur sangat tangguh dalam menghadapi tingkat "*churn*" yang tinggi—yaitu, ketika sejumlah besar klien sering bergabung dan/atau meninggalkan jaringan.

Namun, keterbatasan utama dari jaringan jenis ini juga muncul dari kurangnya struktur. Secara khusus, ketika klien ingin menemukan data yang diinginkan di dalam jaringan, jaringan perlu dibanjiri (*flooding*) permintaan agar dapat menemukan sebanyak mungkin klien yang memiliki data tersebut. *Flooding* menyebabkan jumlah lalu lintas sinyal yang sangat tinggi dalam jaringan, menggunakan lebih banyak CPU/memori (karena mengharuskan setiap klien untuk memproses semua permintaan pencarian), dan tidak memastikan bahwa permintaan pencarian akan selalu terselesaikan. Lebih jauh lagi, karena tidak ada korelasi antara klien dan data yang ia dikelola, tidak ada jaminan bahwa *flooding* akan menemukan klien yang memiliki data yang diinginkan. Data populer kemungkinan tersedia di beberapa klien, dan setiap klien yang mencarinya kemungkinan akan menemukan hal yang sama. Tetapi jika sebuah klien mencari data langka yang hanya dimiliki oleh beberapa klien lain, maka sangat kecil kemungkinannya pencarian itu akan berhasil.

#### Jaringan terstruktur

Diagram jaringan *overlay* untuk sebuah jaringan P2P terstruktur, yang menggunakan sebuah tabel hash terdistribusi untuk mengidentifikasi dan menemukan simpul/sumber daya.
Dalam *jaringan P2P terstruktur*, *overlay* diatur ke dalam suatu topologi tertentu, dan protokol memastikan bahwa setiap klien dapat secara efisien mencari berkas/sumber daya di jaringan, bahkan jika sumber daya tersebut sangat langka.

Tabel hash terdistribusi.
Jenis yang paling umum dari jaringan P2P terstruktur menerapkan tabel hash terdistribusi (*Distributed Hash Table*, DHT). Jaringan ini menggunakan varian hashing yang konsisten untuk menetapkan kepemilikan setiap berkas ke klien tertentu. Hal ini memungkinkan peer untuk mencari sumber daya di jaringan menggunakan tabel hash: yaitu, pasangan (*kunci*, *nilai*) disimpan dalam DHT, dan setiap klien yang berpartisipasi dapat secara efisien mengambil nilai yang terkait dengan kunci yang diberikan.

Namun, untuk merutekan (*routing*) lalu lintas data secara efisien melalui jaringan, klien-klien dalam *overlay* terstruktur harus memelihara daftar tetangga yang memenuhi kriteria tertentu. Hal ini membuat mereka kurang tangguh dalam jaringan dengan tingkat *churn* yang tinggi (yaitu dengan sejumlah besar klien yang sering bergabung dan meninggalkan jaringan). Pada evaluasi yang lebih baru dari solusi penemuan sumber daya P2P di bawah beban kerja nyata, terdapat beberapa masalah dalam solusi berbasis DHT seperti biaya tinggi untuk mempromosikan/menemukan sumber daya dan ketidakseimbangan beban statis dan dinamis.

Jaringan terdistribusi penting yang menggunakan DHT antara lain: Tixati, sebuah alternatif untuk pelacak terdistribusi BitTorrent; jaringan Kad, botnet Storm, dan YaCy. Beberapa proyek penelitian terkemuka termasuk proyek Chord, Kademlia, utilitas penyimpanan PAST; P-Grid, sebuah jaringan *overlay* yang berkembang dan *self-organized*; dan sistem distribusi konten CoopNet. Jaringan berbasis DHT juga telah banyak digunakan untuk menghasilkan penemuan sumber daya yang efisien untuk sistem komputasi grid (*grid computing*), yang membantu dalam masalah manajemen sumber daya dan penjadwalan aplikasi.

#### Model hibrida

*Model hibrida* adalah kombinasi dari model P2P dan klien-peladen. Model hibrida yang umum memiliki sebuah server pusat yang membantu klien-klien menemukan satu sama lain. Spotify adalah contoh model hibrida [hingga tahun 2014]. Ada berbagai model hibrida, yang semuanya membuat tarik ulur (*trade-off*) antara fungsionalitas terpusat yang disediakan oleh: jaringan peladen/klien yang terstruktur, dan kesetaraan fungsi klien-klien yang diberikan oleh jaringan P2P murni yang tidak terstruktur. Saat ini, model hibrida memiliki kinerja yang lebih baik daripada jaringan tidak terstruktur murni atau jaringan terstruktur murni karena beberapa fungsi tertentu, seperti pencarian, memang memerlukan fungsionalitas terpusat tetapi mendapat manfaat dari agregasi klien yang terdesentralisasi yang disediakan oleh jaringan tidak terstruktur.

#### Sistem distribusi konten CoopNet

*Sistem distribusi CoopNet (Cooperative Networking,* Jejaring Kooperatif*)* adalah sistem yang diusulkan untuk pelayanan *off-loading* ke klien yang baru saja mengunduh konten. Sistem ini diusulkan oleh ilmuwan komputer Venkata N. Padmanabhan dan Kunwadee Sripanidkulchai, bekerja di *Microsoft Research* dan Universitas Carnegie Mellon. Ketika sebuah peladen mengalami peningkatan beban, peladen akan mengalihkan klien yang masuk ke klien lain yang telah setuju untuk menyalin konten, sehingga mengurangi keseimbangan *off-loading* dari peladen. Semua informasi disimpan di peladen. Sistem ini memanfaatkan fakta bahwa kemacetan (*bottleneck*) yang terjadi kemungkinan besar berada di *bandwidth* keluar daripada di CPU, yang mengakibatkan desain sistem ini berpusat pada server. Sistem ini mengalihkan klien ke klien-klien lain yang "terletak dekat dengan IP" tetangganya (pada rentang *prefix* yang sama) dalam upaya untuk menggunakan lokalitas. Jika beberapa klien memiliki berkas yang sama, maka klien akan memilih tetangga yang tercepat.

### Keamanan dan kepercayaan

Sistem peer-to-peer menimbulkan tantangan unik dari perspektif keamanan komputer. Seperti bentuk perangkat lunak lainnya, aplikasi P2P bisa mengandung kerentanan. Sifat perangkat lunak P2P yang membuat hal ini sangat berbahaya fakta aplikasi P2P bertindak sebagai peladen sekaligus klien, yang berarti bahwa aplikasi ini bisa lebih rentan terhadap eksploitasi jarak jauh.

#### Serangan perutean

Karena setiap klien memainkan peran dalam perutean (*routing*) lalu lintas data (*traffic*) pada jaringan, pengguna jahat dapat melakukan berbagai "serangan perutean", atau serangan *denial of service*. Contoh serangan perutean yang umum termasuk: "rute pencarian yang salah" di mana klien yang berbahaya sengaja meneruskan permintaan secara tidak benar atau mengembalikan hasil yang salah, "pembaruan rute yang salah" di mana klien yang berbahaya merusak tabel perutean klien tetangga dengan mengirimkan informasi yang salah, dan "partisi jaringan perutean yang salah" di mana ketika klien-baru bergabung, mereka melakukan *bootstrap* melalui klien yang berbahaya, yang menempatkan klien-baru di partisi jaringan yang diisi oleh klien-klien berbahaya lainnya.

#### Data yang rusak dan malware

Lihat pula: Validasi data dan Malware
Tingkat keberadaan (prevalensi) malware bervariasi antar protokol P2P yang berbeda. Studi yang menganalisis penyebaran malware pada jaringan P2P menemukan, sebagai contoh, bahwa 63% dari permintaan unduhan yang dijawab pada jaringan gnutella mengandung beberapa bentuk malware, sedangkan hanya 3% dari konten di OpenFT yang mengandung malware. Dalam kedua kasus tersebut, tiga jenis malware yang paling umum menyumbang sebagian besar kasus (99% di gnutella, dan 65% di OpenFT). Studi lain yang menganalisis lalu lintas di jaringan Kazaa menemukan bahwa 15% dari 500,000 sampel berkas yang diambil terinfeksi setidaknya satu dari 365 virus komputer berbeda.

Data yang rusak juga dapat didistribusikan di jaringan P2P dengan memodifikasi berkas yang sudah dibagikan di jaringan. Misalnya, pada jaringan FastTrack, RIAA berhasil memasukkan potongan palsu ke dalam unduhan dan berkas yang diunduh (kebanyakan berkas MP3). Berkas yang terinfeksi virus RIAA tidak dapat digunakan setelahnya dan berisi kode berbahaya. RIAA juga diketahui telah mengunggah musik dan film palsu ke jaringan P2P untuk mencegah aktivitas berbagi-berkas ilegal. Akibatnya, jaringan P2P saat ini telah mengalami peningkatan yang sangat besar dalam hal keamanan dan mekanisme verifikasi berkas. Hashing modern, verifikasi *chunk* dan metode-metode enkripsi yang berbeda telah membuat sebagian besar jaringan tahan terhadap hampir semua jenis serangan, bahkan ketika sebagian besar dari jaringan masing-masing telah digantikan oleh host yang dipalsukan atau tidak berfungsi.

### Jaringan komputer yang tangguh dan terskalakan

Lihat pula: Komputasi grid
Sifat desentralisasi jaringan P2P meningkatkan ketahanan karena menghilangkan titik kegagalan tunggal (*single point of failure*) yang dapat melekat pada sistem berbasis klien-peladen. Ketika klien banyak berdatangan dan permintaan pada sistem meningkat, kapasitas total sistem (skalabilitas-nya) juga meningkat, dan kemungkinan kegagalan menurun. Jika satu klien pada jaringan gagal berfungsi dengan baik, seluruh jaringan tidak terganggu atau rusak. Sebaliknya, dalam arsitektur klien-peladen yang umum, klien hanya berbagi permintaan mereka dengan sistem, tetapi bukan sumber daya mereka. Dalam hal ini, karena semakin banyak klien yang bergabung dengan sistem, semakin sedikit sumber daya yang tersedia untuk melayani setiap klien, dan jika pe;aden pusat gagal, seluruh jaringan akan rusak.

Hasil pencarian untuk kueri "software libre", menggunakan YaCy, sebuah mesin pencari terdistribusi gratis yang berjalan pada jaringan P2P, alih-alih mengajukan permintaan ke server indeks terpusat (seperti Google, Yahoo, dan mesin pencari perusahaan lainnya).
### Penyimpanan dan pencarian yang terdistribusi

Ada keuntungan dan kerugian dalam jaringan P2P yang terkait dengan topik backup, pemulihan, dan ketersediaan data. Dalam jaringan terpusat, administrator sistem adalah satu-satunya kekuatan yang mengendalikan ketersediaan berkas yang dibagikan. Jika administrator memutuskan untuk tidak lagi mendistribusikan suatu berkas, mereka hanya perlu menghapusnya dari server mereka, dan berkas tersebut tidak akan tersedia lagi untuk pengguna. Selain membuat pengguna tidak berdaya dalam memutuskan apa yang didistribusikan ke seluruh komunitas, hal ini membuat seluruh sistem rentan terhadap ancaman dan permintaan dari pemerintah dan faktor eksternal lainnya. Misalnya, YouTube telah ditekan oleh RIAA, MPAA, dan industri hiburan untuk menyaring konten berhak cipta.[*butuh rujukan*]
 Walaupun dapat menjadi solusi ketersediaan data, jaringan P2P lebih tidak dapat diandalkan dalam ketersediaan berkas-berkas yang tidak populer. Hal ini diakibatkan karena proses berbagi berkas dalam jaringan P2P mengharuskan setidaknya satu klien dalam jaringan memiliki data yang diminta, dan klien itu harus dapat terhubung ke klien yang meminta data. Persyaratan ini kadang-kadang sulit dipenuhi karena pengguna dapat menghapus atau berhenti berbagi data kapan saja.

Dalam hal ini, komunitas pengguna dalam jaringan P2P sepenuhnya bertanggung jawab untuk memutuskan konten apa yang tersedia. Berkas-berkas yang tidak populer pada akhirnya akan hilang dan menjadi tidak tersedia karena lebih banyak orang berhenti membagikannya. Namun, berkas populer akan sangat mudah didistribusikan. Berkas populer di jaringan P2P sebenarnya memiliki stabilitas dan ketersediaan yang lebih tinggi daripada berkas di jaringan klien-peladen. Dalam jaringan terpusat, kehilangan koneksi sederhana antara server dan klien sudah cukup untuk menyebabkan kegagalan, tetapi dalam jaringan P2P, koneksi antara setiap klien harus hilang untuk menyebabkan kegagalan berbagi data. Dalam sistem terpusat, administrator bertanggung jawab untuk semua pemulihan data dan backup, sementara dalam sistem P2P, setiap klien memerlukan sistem backup sendiri. Karena kurangnya otoritas pusat dalam jaringan P2P, kekuatan seperti industri rekaman, RIAA, MPAA, dan pemerintah tidak dapat menghapus atau menghentikan berbagi konten pada sistem P2P.

Contoh penerapan
----------------

### Jaringan berbagi konten

berkas Torrent yang terhubungan dengan klien-klien pada jaringan.
Dalam jaringan P2P, setiap klien menyediakan dan menggunakan sumber daya. Ini berarti bahwa tidak seperti sistem klien-peladen, kapasitas pelayanan konten dari jaringan P2P sebenarnya dapat meningkat seiring dengan semakin banyaknya pengguna yang mulai mengakses konten (terutama dengan protokol seperti Bittorrent yang mengharuskan pengguna untuk berbagi). Sifat ini adalah salah satu keuntungan utama menggunakan jaringan P2P karena membuat biaya *setup* dan operasional sangat kecil untuk distributor konten asli. Banyak jaringan berbagi-berkas P2P, seperti Gnutella, G2, jaringan eDonkey mempopulerkan teknologi-teknologi P2P, seperti:

* Jaringan pengiriman konten,
* Jasa konten P2P, contohnya membuat *caches* untuk meningkatkan peforma seperti *Correli Caches*,
* Publikasi perangkat lunak dan distribusi (distribusi Linux, beberapa *game*); lewat jaringan berbagi-berkas.

Pada bidang multimedia, P2P digunakan dalam protokol transfer-data PDTP (*Peer Distributed Transfer Protocol*), dan sistem P2PTV yang digunakan untuk membagikan *streaming* video (umumnya saluran TV) secara *real-time*. Beberapa aplikasi multimedia gratis maupun *proprietary* juga menggunakan jaringan P2P berserta peladen-peladen pusat untuk memberikan *streaming* suara dan video bagi para penggunanya. Peercasting adalah salah satu metode yang dikembangkan yang memungkinkan *multicasting streams*.

Jaringan P2P melibatkan transfer data dari satu pengguna ke pengguna lain tanpa menggunakan peladen perantara. Perusahaan yang mengembangkan aplikasi P2P telah terlibat dalam banyak kasus hukum, terutama di Amerika Serikat, atas konflik dengan hukum hak cipta. Dua kasus besar adalah *Grokster* melawan RIAA dan *MGM Studios, Inc. v. Grokster, Ltd*. Dalam kasus terakhir, Mahkamah Agung AS dengan suara bulat menyatakan bahwa terdakwa Grokster, perusahaan berbagi-berkas secara P2P, dan Streamcast, dapat dituntut karena mendorong pelanggaran hak cipta.

### Penerapan P2P yang lain

Dalam bidang ekonomi, terdapat sistem m-dagang dan beberapa aplikasi seperti Tradepal, yang menggerakkan pasar (*commerce*) secara *real-time*. Jaringan P2P yang terdesentralisasi juga berperan dalam terciptanya mata uang kripto digital; seperti Bitcoin, Ether, Monero, dan Peercoin. Mata uang kripto memiliki tujuan yang dikhususkan, seperti Gridcoin yang digunakan sebagai alat pembayaran pada relawan yang membantu ilmuwan-ilmuwan menyelesaikan masalah, dengan menggunakan jaringan BOINC. Sedangkan, Filecoin dimaksudkan untuk sistem pembayaran metode penyimpanan digital kooperatif berbasis-*blockchain* dan pengambilan data. Metode ini disebut dengan protokol *InterPlanetary File System* (IPFS), dengan setiap klien pada jaringan IPFS membentuk sebuah sistem berkas terdistribusi.

Dalam bidang berbagi-berkas, aplikasi WebTorrent (dan versi *dekstop*-nya) adalah klien torrent *streaming* secara P2P menggunakan JavaScript, untuk digunakan di peramban web. Microsoft di Windows 10 menggunakan teknologi P2P eksklusif yang disebut "*Delivery Optimization*" untuk menyebarkan pembaruan sistem operasi menggunakan PC pengguna, baik di jaringan lokal atau lewat PC-PC lain. Menurut *Microsoft's Channel 9*, hal ini menyebabkan pengurangan 30%-50% dalam penggunaan *bandwidth* Internet. Jaringan P2P dan metode berbagi-berkas juga digunakan oleh aplikasi Syncthing dan Resilio Sync untuk menyikronkan (*file synchronization*) direktori. Beberapa penelitian seperti Proyek Chord, utilitas penyimpanan PAST, P-Grid, dan sistem distribusi konten CoopNet, masing-masing mempelajari/membuat jenis sistem berbagi-berkas yang spesifik.

Pada aspek jaringan komunikasi, I2P adalah jaringan *overlay* yang digunakan untuk menjelajah (*browsing*) Internet secara anonim. Berbeda dengan I2P, jaringan Tor tidak peer-to-peer, namun aplikasi P2P dapat dikembangkan di atas jaringan Tor dengan menggunakan jasa onion. Aplikasi berbagi-koneksi Open Garden membagikan akses internet ke perangkat-perangkat sekitar menggunakan Wi-Fi dan/atau Bluetooth. Wi-Fi dan Bluetooth juga digunakan oleh aplikasi telekomunikasi Briar agar tetap dapat terhubung (secara P2P) ketika tidak ada koneksi Internet.

Dampak sosial
-------------

### Mendukung kerja sama dan berbagi sumber daya

Protokol BitTorrent: Dalam animasi ini terdapat 7 klien, yang berada di daerah atas, masing-masing memiliki batang berwarna di bawah mereka. Batang ini mewakili berkas yang sedang dibagikan, dengan setiap warna mewakili masing-masing bagian dari berkas. Setelah potongan-potongan awal ditransfer dari *seed* (sistem besar di daerah bawah), potongan-potongan tersebut ditransfer secara individual dari klien ke klien. *Seeder* asli hanya perlu mengirimkan satu salinan berkas agar semua klien menerima salinannya.
Kerja sama di antara komunitas peserta adalah kunci keberhasilan sistem P2P yang berkelanjutan, yang ditujukan untuk pengguna manusia biasa; ini mencapai potensi penuh mereka hanya ketika sejumlah besar klien (pengguna) yang menyumbangkan sumber daya. Tetapi dalam prakteknya saat ini, jaringan P2P sering mengandung sejumlah besar pengguna yang memanfaatkan sumber daya yang dibagikan oleh klien lain, tetapi tidak berbagi apa pun sendiri (sering disebut sebagai "masalah *freeloader*"). *Freeloading* dapat memiliki dampak yang besar pada jaringan dan dalam beberapa kasus dapat menyebabkan komunitas runtuh. Dalam jenis jaringan ini "pengguna memiliki tujuan alami untuk tidak bekerja sama karena kerja sama menghabiskan sumber daya mereka sendiri dan dapat menurunkan kinerja mereka sendiri." Mempelajari atribut sosial dari jaringan P2P merupakan tantangan karena perubahan populasi yang besar, kepentingan yang asimetri, dan identitas tanpa biaya. Berbagai mekanisme insentif telah diimplementasikan untuk mendorong atau bahkan memaksa klien untuk menyumbangkan sumber daya.

Beberapa peneliti telah mengeksplorasi manfaat dari memungkinkan komunitas virtual untuk mengatur diri sendiri dan memperkenalkan insentif untuk berbagi sumber daya dan kerja sama, dengan alasan bahwa aspek sosial yang hilang dari sistem P2P saat ini harus dilihat baik sebagai tujuan dan sarana untuk komunitas virtual yang terorganisir sendiri untuk dibangun dan dipupuk. Upaya penelitian yang sedang berlangsung untuk merancang mekanisme insentif yang efektif dalam sistem P2P, berdasarkan prinsip-prinsip dari teori permainan, mulai mengambil arah yang lebih psikologis dan pemrosesan informasi.

### Keamanan dan anonimitas

Beberapa jaringan peer-to-peer (misalnya Freenet) sangat menekankan pada privasi dan anonimitas - yaitu, memastikan bahwa isi komunikasi disembunyikan dari penyadap, dan bahwa identitas/lokasi peserta disembunyikan. Kriptografi kunci publik dapat digunakan untuk menyediakan enkripsi, validasi data, otorisasi, dan otentikasi untuk data/pesan. Perutean onion dan protokol jaringan campuran lainnya (misalnya Tarzan) dapat digunakan untuk memberikan anonimitas.

Pelaku pelecehan seksual *live streaming* dan kejahatan siber lainnya telah menggunakan platform P2P untuk melakukan aktivitas dengan anonimitas.

Dampak politik
--------------

### Hukum kekayaan intelektual dan aktivitas berbagi ilegal

Meskipun jaringan P2P dapat digunakan untuk tujuan yang sah, banyak pemegang hak telah menargetkan P2P atas keterlibatannya dengan berbagi materi berhak cipta. Perusahaan-perusahaan yang mengembangkan aplikasi P2P telah terlibat dalam banyak kasus hukum, terutama di Amerika Serikat, khususnya mengenai isu-isu seputar hukum hak cipta. Dua kasus utama adalah Grokster vs. RIAA dan *MGM Studios, Inc.* vs. *Grokster, Ltd*. Dalam kedua kasus tersebut, teknologi berbagi-berkas diputuskan legal selama pengembang tidak memiliki kemampuan untuk mencegah pembagian materi berhak cipta. Untuk menetapkan pertanggungjawaban pidana atas pelanggaran hak cipta pada sistem P2P, pemerintah harus membuktikan bahwa terdakwa melanggar hak cipta dengan sengaja untuk tujuan keuntungan finansial pribadi atau keuntungan komersial. Pengecualian penggunaan wajar memungkinkan penggunaan terbatas materi berhak cipta untuk diunduh tanpa memperoleh izin dari pemegang hak. Dokumen-dokumen ini biasanya berupa laporan berita terkait penelitian dan karya ilmiah. Kontroversi telah berkembang atas kekhawatiran penggunaan jaringan P2P yang tidak sah terkait keselamatan publik dan keamanan nasional. Ketika berkas diunduh melalui jaringan P2P, tidak mungkin untuk mengetahui siapa yang membuat berkas atau pengguna apa yang terhubung ke jaringan pada waktu tertentu. Kepercayaan kepada siapa pemiliki sumber berkas adalah potensi ancaman keamanan yang dapat dilihat dengan sistem P2P.

Sebuah studi yang diperintahkan oleh Uni Eropa menemukan bahwa pengunduhan ilegal dapat menyebabkan peningkatan penjualan video *game* secara keseluruhan karena *game-game* baru mengenakan biaya untuk fitur atau level tambahan. Makalah ini menyimpulkan bahwa pembajakan memiliki dampak finansial negatif pada film, musik, dan literatur. Studi ini mengandalkan data yang dilaporkan sendiri tentang pembelian game dan penggunaan situs unduhan ilegal.

### Netralitas jaringan

Aplikasi peer-to-peer adalah salah satu masalah penting dalam kontroversi netralitas jaringan. Penyedia jasa internet (ISP) telah diketahui membatasi (*throttle*) lalu lintas berbagi-berkas P2P karena penggunaan *bandwidth* yang tinggi. Dibandingkan dengan menjelajah Web, email, atau banyak penggunaan internet lainnya, yang hanya memerlukan interval pendek dan jumlah yang relatif kecil agar data dapat ditransfer; berbagi berkas secara P2P sering kali terdiri dari penggunaan *bandwidth* yang relatif berat, karena transfer berkas yang sedang berlangsung dan koordinasi paket dilakukan bersamaan di dalam *swarm*/jaringan. Pada bulan Oktober 2007, Comcast, salah satu penyedia Internet *broadband* terbesar di Amerika Serikat, mulai memblokir aplikasi P2P seperti BitTorrent. Alasan mereka adalah bahwa P2P sebagian besar digunakan untuk berbagi konten ilegal, dan infrastruktur mereka tidak didesain untuk lalu lintas *bandwidth* tinggi yang berkelanjutan. Para kritikus menunjukkan bahwa jaringan P2P memiliki kegunaan legal yang sah, dan ini adalah cara lain yang digunakan oleh penyedia besar untuk mengontrol penggunaan dan konten di Internet, dan mengarahkan orang ke arsitektur aplikasi berbasis klien-peladen. Sebagai reaksi terhadap pembatasan *bandwidth* ini, beberapa aplikasi P2P mulai mengimplementasikan "protokol *obfuscation* (penyamaran)*"*, seperti enkripsi protokol BitTorrent. Teknik untuk mencapai "protokol *obfuscation*" melibatkan penghapusan sifat protokol yang mudah diidentifikasi, seperti urutan bita dan ukuran paket yang deterministik, dan mengubahnya sehingga seolah-olah acak. Solusi ISP untuk *bandwidth* tinggi adalah *caching* P2P, yakni ISP menyimpan bagian berkas yang paling banyak diakses oleh klien P2P untuk menghemat akses ke Internet.

Referensi
---------

1. ↑  Laudon, Kenneth C.; Laudon, Jane P. (2007). Setyaningsih, Nina, ed. *Sistem Informasi Manajemen 1*. Diterjemahkan oleh Sungkono, Chriswan; P. Machmudin Eka (edisi ke-10). Penerbit Salemba. hlm. 458. ISBN 978-979-691-448-7.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
2. ↑  Cope, James (2002-04-08). "What's a Peer-to-Peer (P2P) Network?". *Computerworld* (dalam bahasa Inggris). Diakses tanggal 2021-12-21.
3. ↑  Laudon, Kenneth C.; Laudon, Jane P. (2007). Setyaningsih, Nina, ed. *Sistem Informasi Manajemen 1*. Diterjemahkan oleh Sungkono, Chriswan; P. Machmudin Eka (edisi ke-10). Penerbit Salemba. hlm. 458. ISBN 978-979-691-448-7.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
4. ↑  Rüdiger Schollmeier, *A Definition of Peer-to-Peer Networking for the Classification of Peer-to-Peer Architectures and Applications*, Proceedings of the First International Conference on Peer-to-Peer Computing, IEEE (2002).
5. ↑  Bandara, H. M. N. D; A. P. Jayasumana (2012). "Collaborative Applications over Peer-to-Peer Systems – Challenges and Solutions". *Peer-to-Peer Networking and Applications*. **6** (3): 257–276. arXiv:1207.0790 alt=Dapat diakses gratis. Bibcode:2012arXiv1207.0790D. doi:10.1007/s12083-012-0157-3.  Parameter `|s2cid=` yang tidak diketahui akan diabaikan (bantuan)
6. 1 2  Barkai, David (2001). *Peer-to-peer computing : technologies for sharing and collaborating on the net*. Hillsboro, OR: Intel Press. ISBN 978-0970284679. OCLC 49354877.
7. ↑  Saroiu, Stefan; Gummadi, Krishna P.; Gribble, Steven D. (2003-08-01). "Measuring and analyzing the characteristics of Napster and Gnutella hosts". *Multimedia Systems* (dalam bahasa Inggris). **9** (2): 170–184. doi:10.1007/s00530-003-0088-1. ISSN 1432-1882.  Parameter `|s2cid=` yang tidak diketahui akan diabaikan (bantuan)
8. ↑  Crocker, S. (1969-04). "Host Software" (dalam bahasa Inggris). doi:10.17487/RFC0001. ISSN 2070-1721.  Periksa nilai tanggal di: `|date=` (bantuan)
9. ↑  Oram, Andrew, ed. (2001). *Peer-to-peer: harnessing the benefits of a disruptive technologies* (dalam bahasa Inggris). Sebastopol, California: O'Reilly. ISBN 9780596001100. OCLC 123103147.
10. ↑  Berners-Lee, Tim (August 1996). "The World Wide Web: Past, Present and Future". Diakses tanggal 5 November 2011.
11. ↑  Sandhu, R.; Zhang, X. (2005). "Peer-to-peer access control architecture using trusted computing technology". *Proceedings of the Tenth ACM Symposium on Access Control Models and Technologies - SACMAT '05*: 147–158. doi:10.1145/1063979.1064005. ISBN 1595930450.  Parameter `|s2cid=` yang tidak diketahui akan diabaikan (bantuan)
12. 1 2  Steinmetz, Ralf; Wehrle, Klaus (2005). "2. What Is This "Peer-to-Peer" About?". *Peer-to-Peer Systems and Applications*. Lecture Notes in Computer Science (dalam bahasa Inggris). Springer, Berlin, Heidelberg. hlm. 9–16. doi:10.1007/11530657\_2. ISBN 9783540291923.
13. ↑  Zhu, Ce; et al. ed. (2010). *Streaming Media Architectures: Techniques and Applications: Recent Advances*. IGI Global. hlm. 265. ISBN 9781616928339.
14. ↑  Kamel, Mina; et al. (2007). "Optimal Topology Design for Overlay Networks". Dalam Akyildiz, Ian F. *Networking 2007: Ad Hoc and Sensor Networks, Wireless Networks, Next Generation Internet: 6th International IFIP-TC6 Networking Conference, Atlanta, GA, USA, May 14-18, 2007 Proceedings*. Springer. hlm. 714. ISBN 9783540726050.
15. ↑  Ahson, Syed A.; Ilyas, Mohammad, ed. (2008). *SIP Handbook: Services, Technologies, and Security of Session Initiation Protocol*. Taylor & Francis. hlm. 204. ISBN 9781420066043.
16. ↑  Filali, Imen; et al. (2011). "A Survey of Structured P2P Systems for RDF Data Storage and Retrieval". Dalam Hameurlain, Abdelkader; et al. *Transactions on Large-Scale Data- and Knowledge-Centered Systems III: Special Issue on Data and Knowledge Management in Grid and PSP Systems*. Springer. hlm. 21. ISBN 9783642230738.
17. ↑  Zulhasnine, Mohammed; et al. (2013). "P2P Streaming Over Cellular Networks: Issues, Challenges, and Opportunities". Dalam Pathan; et al. *Building Next-Generation Converged Networks: Theory and Practice*. CRC Press. hlm. 99. ISBN 9781466507616.
18. ↑  Chervenak, Ann; Bharathi, Shishir (2008). "Peer-to-peer Approaches to Grid Resource Discovery". Dalam Danelutto, Marco; et al. *Making Grids Work: Proceedings of the CoreGRID Workshop on Programming Models Grid and P2P System Architecture Grid Systems, Tools and Environments 12-13 June 2007, Heraklion, Crete, Greece*. Springer. hlm. 67. ISBN 9780387784489.
19. ↑  Jin, Xing; Chan, S.-H. Gary (2010). "Unstructured Peer-to-Peer Network Architectures". Dalam Shen; et al. *Handbook of Peer-to-Peer Networking*. Springer. hlm. 119. ISBN 978-0-387-09750-3.
20. 1 2  Lv, Qin; et al. (2002). "Can Heterogeneity Make Gnutella Stable?". Dalam Druschel, Peter; et al. *Peer-to-Peer Systems: First International Workshop, IPTPS 2002, Cambridge, MA, USA, March 7-8, 2002, Revised Papers*. Springer. hlm. 94. ISBN 9783540441793.
21. ↑  Shen, Xuemin; Yu, Heather; Buford, John; Akon, Mursalin (2009). *Handbook of Peer-to-Peer Networking* (edisi ke-1st). New York: Springer. hlm. 118. ISBN 978-0-387-09750-3.
22. ↑  Umumnya mendekati O(log N), dengan N adalah banyak simpul dalam sistem P2P.[*butuh rujukan*]
23. ↑  Other design choices include overlay rings and d-Torus. See for example Bandara, H. M. N. D.; Jayasumana, A. P. (2012). "Collaborative Applications over Peer-to-Peer Systems – Challenges and Solutions". *Peer-to-Peer Networking and Applications*. **6** (3): 257. arXiv:1207.0790 alt=Dapat diakses gratis. Bibcode:2012arXiv1207.0790D. doi:10.1007/s12083-012-0157-3.  Parameter `|s2cid=` yang tidak diketahui akan diabaikan (bantuan)
24. ↑  R. Ranjan, A. Harwood, and R. Buyya, "Peer-to-peer based resource discovery in global grids: a tutorial," *IEEE Commun. Surv.*, vol. 10, no. 2. and P. Trunfio, "Peer-to-Peer resource discovery in Grids: Models and systems," *Future Generation Computer Systems* archive, vol. 23, no. 7, Aug. 2007.
25. ↑  Kelaskar, M.; Matossian, V.; Mehra, P.; Paul, D.; Parashar, M. (2002). *A Study of Discovery Mechanisms for Peer-to-Peer Application*. hlm. 444–. ISBN 9780769515823.
26. ↑  Dabek, Frank; Zhao, Ben; Druschel, Peter; Kubiatowicz, John; Stoica, Ion (2003). *Towards a Common API for Structured Peer-to-Peer Overlays*. *Peer-to-Peer Systems II*. Lecture Notes in Computer Science. **2735**. hlm. 33–44. CiteSeerX 10.1.1.12.5548 alt=Dapat diakses gratis. doi:10.1007/978-3-540-45172-3\_3. ISBN 978-3-540-40724-9.
27. ↑  Gurmeet Singh Manku. Dipsea: A Modular Distributed Hash Table Diarsipkan 2004-09-10 di Wayback Machine.. Ph. D. Thesis (Stanford University), August 2004.
28. ↑  Moni Naor and Udi Wieder. Novel Architectures for P2P Applications: the Continuous-Discrete Approach. Proc. SPAA, 2003.
29. ↑  Byung-Gon Chun, Ben Y. Zhao, John D. Kubiatowicz (2005-02-24). "Impact of Neighbor Selection on Performance and Resilience of Structured P2P Networks" (PDF). Diakses tanggal 2019-08-24. Pemeliharaan CS1: Banyak nama: authors list (link)
30. ↑  Li, Deng; et al. (2009). Vasilakos, A.V.; et al. ed. *An Efficient, Scalable, and Robust P2P Overlay for Autonomic Communication*. Springer. hlm. 329. ISBN 978-0-387-09752-7.
31. ↑  Bandara, H. M. N. Dilum; Jayasumana, Anura P. (January 2012). "Evaluation of P2P Resource Discovery Architectures Using Real-Life Multi-Attribute Resource and Query Characteristics". *IEEE Consumer Communications and Networking Conf. (CCNC '12)*.
32. ↑  Korzun, Dmitry; Gurtov, Andrei (November 2012). *Structured P2P Systems: Fundamentals of Hierarchical Organization, Routing, Scaling, and Security*. Springer. ISBN 978-1-4614-5482-3.
33. ↑  Ranjan, Rajiv; Chan, Lipo; Harwood, Aaron; Karunasekera, Shanika; Buyya, Rajkumar. "Decentralised Resource Discovery Service for Large Scale Federated Grids" (PDF). Diarsipkan dari versi asli (PDF) tanggal 2008-09-10.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
34. ↑  Ranjan, Rajiv; Harwood, Aaron; Buyya, Rajkumar (1 December 2006). "A Study on Peer-to-Peer Based Discovery of Grid Resource Information" (PDF). Diarsipkan dari versi asli (PDF) tanggal 14 May 2011. Diakses tanggal 25 August 2008.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
35. ↑  Darlagiannis, Vasilios (2005). "Hybrid Peer-to-Peer Systems". Dalam Steinmetz, Ralf; Wehrle, Klaus. *Peer-to-Peer Systems and Applications*. Springer. ISBN 9783540291923.
36. ↑  Yang, Beverly; Garcia-Molina, Hector (2001). "Comparing Hybrid Peer-to-Peer Systems" (PDF). *Very Large Data Bases*. Diakses tanggal 8 October 2013.
37. ↑  Padmanabhan, Venkata N.; Sripanidkulchai, Kunwadee  (2002). *The Case for Cooperative Networking (PostScript with addendum)*. Lecture Notes in Computer Science. Proceedings of the First International Workshop on Peer-to-Peer Systems. Cambridge, MA: Springer (dipublikasikan tanggal March 2002). hlm. 178. doi:10.1007/3-540-45748-8\_17. ISBN 978-3-540-44179-3.  PDF (Microsoft, with addendum) PDF (Springer, original, fee may be required)
38. ↑  "CoopNet: Cooperative Networking". Microsoft Research.  Project home page.
39. ↑  Vu, Quang H.; et al. (2010). *Peer-to-Peer Computing: Principles and Applications*. Springer. hlm. 157–159. ISBN 978-3-642-03513-5.
40. ↑  Goebel, Jan; et al. (2007). "Measurement and Analysis of Autonomous Spreading Malware in a University Environment". Dalam Hämmerli, Bernhard Markus; Sommer, Robin. *Detection of Intrusions and Malware, and Vulnerability Assessment: 4th International Conference, DIMVA 2007 Lucerne, Switzerland, July 12-13, 2007 Proceedings*. Springer. hlm. 112. ISBN 9783540736134.
41. ↑  Sorkin, Andrew Ross (4 May 2003). "Software Bullet Is Sought to Kill Musical Piracy". *New York Times*. Diakses tanggal 5 November 2011.
42. ↑  Singh, Vivek; Gupta, Himani (2012). *Anonymous File Sharing in Peer to Peer System by Random Walks* (Laporan teknis). SRM University. 123456789/9306.
43. ↑  Lua, Eng Keong; Crowcroft, Jon; Pias, Marcelo; Sharma, Ravi; Lim, Steven (2005). "A survey and comparison of peer-to-peer overlay network schemes". Diarsipkan dari versi asli tanggal 2012-07-24.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
44. ↑  Balakrishnan, Hari; Kaashoek, M. Frans; Karger, David; Morris, Robert; Stoica, Ion (2003). "Looking up data in P2P systems" (PDF). *Communications of the ACM*. **46** (2): 43–48. CiteSeerX 10.1.1.5.3597 alt=Dapat diakses gratis. doi:10.1145/606272.606299. Diakses tanggal 8 October 2013.  Parameter `|s2cid=` yang tidak diketahui akan diabaikan (bantuan)
45. ↑  "Art thou a Peer?". *www.p2pnews.net*. 14 June 2012. Diarsipkan dari versi asli tanggal 6 October 2013. Diakses tanggal 10 October 2013.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
46. ↑  Sharma P. Bhakuni A. & Kaushal R."Performance Analysis of BitTorrent Protocol. National Conference on Communications, 2013 DOI:10.1109/NCC.2013.6488040
47. ↑  Stutzbach, Daniel; et al. (2005). "The scalability of swarming peer-to-peer content delivery" (PDF). Dalam Boutaba, Raouf; et al. *NETWORKING 2005 -- Networking Technologies, Services, and Protocols; Performance of Computer and Communication Networks; Mobile and Wireless Communications Systems*. Springer. hlm. 15–26. ISBN 978-3-540-25809-4.
48. ↑  Li, Jin (2008). "On peer-to-peer (P2P) content delivery" (PDF). *Peer-to-Peer Networking and Applications*. **1** (1): 45–63 ≤≥. doi:10.1007/s12083-007-0003-1.  Parameter `|s2cid=` yang tidak diketahui akan diabaikan (bantuan)
49. ↑  Gareth Tyson, Andreas Mauthe, Sebastian Kaune, Mu Mu and Thomas Plagemann. Corelli: A Dynamic Replication Service for Supporting Latency-Dependent Content in Community Networks. In Proc. 16th ACM/SPIE Multimedia Computing and Networking Conference (MMCN), San Jose, CA (2009)."Archived copy" (PDF). Diarsipkan dari versi asli (PDF) tanggal 2011-04-29. Diakses tanggal 2011-03-12.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
50. 1 2  John Borland (April 25, 2003). "Judge: File-Swapping Tools are Legal". *news.cnet.com*. Diarsipkan dari versi asli tanggal 2012-03-10.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
51. ↑  Hammerksjold Andreas; Engler, Narkis, "Delivery Optimization - a deep dive", *Channel 9*, 11 October 2017, Retrieved on 4 February 2019.
52. ↑  Krishnan, R. Smith, M. D. Tang, Z. & Telang, R. (2004, January). The impact of free-riding on peer-to-peer networks. In System Sciences, 2004. Proceedings of the 37th Annual Hawaii International Conference on (pp. 10-pp). IEEE.
53. 1 2  Feldman, M. Lai, K. Stoica, I. & Chuang, J. (2004, May). Robust incentive techniques for peer-to-peer networks. In Proceedings of the 5th ACM conference on Electronic commerce (pp. 102-111). ACM.
54. ↑  Vu, Quang H.; et al. (2010). *Peer-to-Peer Computing: Principles and Applications*. Springer. hlm. 172. ISBN 978-3-642-03513-5.
55. ↑  P. Antoniadis and B. Le Grand, "Incentives for resource sharing in self-organized communities: From economics to social psychology," Digital Information Management (ICDIM '07), 2007
56. ↑  Vu, Quang H.; et al. (2010). *Peer-to-Peer Computing: Principles and Applications*. Springer. hlm. 179–181. ISBN 978-3-642-03513-5.
57. ↑  "No country is free from child sexual abuse, exploitation, UN's top rights forum hears". *UN News*. March 3, 2020.
58. ↑  Glorioso, Andrea; et al. (2010). "The Social Impact of P2P Systems". Dalam Shen; et al. *Handbook of Peer-to-Peer Networking*. Springer. hlm. 48. ISBN 978-0-387-09750-3.
59. ↑  Majoras, D. B. (2005). Peer-to-peer file-sharing technology consumer protection and competition issues. Federal Trade Commission, Retrieved from
60. ↑  The Government of the Hong Kong Special Administrative Region, (2008). Peer-to-peer network. Retrieved from website:  Diarsipkan 2019-12-09 di Wayback Machine.
61. ↑  Polgar, David Ryan (October 15, 2017). "Does Video Game Piracy Actually Result in More Sales?". *Big Think*. Diakses tanggal 2018-03-29.
62. ↑  Orland, Kyle (September 26, 2017). "EU study finds piracy doesn't hurt game sales, may actually help". *Ars Technica* (dalam bahasa Inggris). Diakses tanggal 2018-03-29.
63. ↑  Sanders, Linley (2017-09-22). "Illegal downloads may not actually harm sales, but the European Union doesn't want you to know that". *Newsweek* (dalam bahasa Inggris). Diakses tanggal 2018-03-29.
64. ↑  Janko Roettgers, 5 Ways to Test Whether your ISP throttles P2P,  Diarsipkan 2009-10-01 di Wayback Machine.
65. ↑  Hjelmvik, Erik; John, Wolfgang (2010-07-27). "Breaking and Improving Protocol Obfuscation" (PDF). *Technical Report*. ISSN 1652-926X.