Co je to peer-to-peer (P2P)?
V informatice se P2P síť skládá z množství zařízení, která ukládají a sdílejí soubory kolektivně. Každý účastník (uzel) funguje jako individuální peer. Obvykle mají všechny uzly stejnou moc a vykonávají stejné úkoly.
V oblasti finančních technologií se termín peer-to-peer obvykle vztahuje na výměnu měn nebo digitálních aktiv prostřednictvím decentralizované sítě. P2P platformy umožňují kupujícím a prodávajícím realizovat obchody přímo bez potřeby prostředníků. V některých případech mohou webové stránky také poskytovat P2P prostředí, které spojuje věřitele a dlužníky.
P2P architektura může být vhodná pro mnoho různých případů použití, ale stala se zvlášť populární v devadesátých letech, kdy byly vytvořeny první programy pro sdílení souborů. Dnes jsou P2P sítě jádrem většiny kryptoměn, které tvoří velkou část blockchainového průmyslu. V současnosti je také podporována v dalších distribuovaných výpočetních aplikacích, včetně webových vyhledávačů, streamovacích platforem, elektronických trhů a protokolu InterPlanetary File System (IPFS).
Jak funguje P2P?
V podstatě jsou P2P systémy udržovány distribuovanou sítí uživatelů a obvykle nemají centrální správce nebo server, protože každá uzel obsahuje kopii souborů a funguje jako klient i server pro ostatní uzly. Tím pádem může každá uzel stahovat soubory z ostatních uzlů nebo nahrávat soubory pro ostatní uzly. To odlišuje P2P sítě od tradičních serverových systémů, kde zařízení stahují soubory z centrálního serveru.
Zařízení připojená k P2P sítím sdílejí soubory uložené na jejich pevných discích pomocí aplikací navržených k usnadnění sdílení dat a souborů. Uživatelé mohou také dotazovat ostatní zařízení připojená k síti, aby našli soubory a stáhli je, a jakmile si uživatel stáhne určitý soubor, může se stát zdrojem pro tento soubor.
Jinými slovy, když funguje uzel jako klient, stahuje soubory z jiných uzlů v síti. Ale když uzel funguje jako server, stává se zdrojem, ze kterého mohou ostatní uzly stahovat soubory. Nicméně, v praxi mohou být obě funkce prováděny současně (například stahování souboru A a nahrávání souboru B).
P2P sítě mají tendenci být rychlejší a efektivnější s růstem své uživatelské základny, protože každá uzel ukládá, přenáší a přijímá soubory. Také jejich distribuovaná architektura činí P2P systémy velmi odolné vůči kybernetickým útokům, protože P2P sítě nemají jediný bod selhání na rozdíl od tradičních modelů.
Můžeme klasifikovat P2P systémy podle jejich architektury. Tři hlavní typy P2P sítí jsou: neorganizované, organizované a hybridní.
Neorganizované P2P sítě
Neorganizované P2P sítě neposkytují žádnou specifickou organizaci uzlů. Účastníci v nich komunikují náhodně mezi sebou. Tyto systémy jsou efektivní, když je vysoká úroveň aktivity (například mnoho uzlů se připojuje k síti a často ji opouští).
I když je snadné budovat neorganizované P2P sítě, mohou vyžadovat vyšší využití CPU a paměti, protože dotazy na vyhledávání se posílají co největšímu počtu peerů. To má tendenci zahlcovat síť dotazy, zejména pokud existuje jen málo uzlů, které poskytují požadovaný obsah.
Organizované P2P sítě
Na oplátku organizované P2P sítě nabízejí strukturovanou architekturu, jak název napovídá. To umožňuje uzlům efektivně vyhledávat soubory, i když obsah není široce dostupný. Většinou je to dosaženo pomocí hashovacích funkcí, které usnadňují vyhledávání v databázi.
I když mohou být organizované sítě efektivnější, mají tendenci nabízet vyšší úroveň centralizace a obvykle vyžadují vyšší náklady na nastavení a údržbu. Kromě toho jsou organizované sítě také méně robustní, když čelí vysokým mírám narušení.
Hybridní P2P sítě
Hybridní P2P sítě kombinují tradiční serverový a klientský model s některými aspekty P2P architektury. Například navrhují centrální server, který usnadňuje komunikaci mezi peer.
Ve srovnání s ostatními dvěma typy P2P sítí mají hybridní typy tendenci poskytovat vylepšený celkový výkon. Obvykle kombinují některé hlavní výhody každého typu, což přináší vysoké úrovně efektivity a decentralizace současně.
Distribuované a decentralizované
I když je prostředí P2P přirozeně distribuované, je důležité poznamenat, že existují různé úrovně decentralizace. Proto nejsou všechny P2P sítě decentralizované.
Ve skutečnosti se mnoho systémů spoléhá na centrální autoritu k řízení aktivit sítě, což je činí do určité míry centralizovanými. Například některé P2P systémy pro sdílení souborů umožňují uživatelům vyhledávat soubory a stahovat je od jiných uživatelů, ale nejsou schopni se podílet na jiných operacích, jako je správa vyhledávání.
Kromě toho můžeme říci, že malé sítě řízené omezenou uživatelskou základnou se společnými cíli mají vyšší úroveň centralizace, i když neexistuje žádná centrální infrastruktura sítě.
Role P2P v blockchainu
V raných fázích bitcoinu definoval Satoshi Nakamoto bitcoin jako "systém elektronických peněz peer-to-peer". Bitcoin byl vytvořen jako digitální forma peněz. Může být převeden z uživatele na uživatele prostřednictvím P2P sítě, která spravuje decentralizovanou účetní knihu nazývanou blockchain.
V tomto kontextu je P2P architektura, která je inherentní technologii blockchain, to, co umožňuje snadný převod bitcoinů a dalších kryptoměn po celém světě bez potřeby prostředníků nebo jakéhokoli centrálního serveru. Každý si také může nastavit uzel na bitcoinovém blockchainu, pokud chce participovat na procesu ověřování a validace bloků.
Proto neexistují žádné banky, které by zpracovávaly nebo zaznamenávaly transakce v bitcoinové síti. Místo toho blockchain funguje jako decentralizovaný digitální účetní kniha, která veřejně zaznamenává všechny aktivity, aby je ostatní účastníci mohli vidět. V podstatě každá uzel uchovává kopii blockchainu a porovnává ji s ostatními uzly, aby zajistila přesnost dat. Síť rychle odmítá jakoukoli škodlivou nebo nepřesnou aktivitu.
V oblasti blockchainu kryptoměn mohou uzly vykonávat různé role. Například plné uzly poskytují bezpečnost síti tím, že ověřují transakce podle pravidel konsensuálního mechanismu.
Každá plná uzel uchovává kompletní a aktuální kopii blockchainu, což jí umožňuje účastnit se kolektivní práce na ověřování aktuálního stavu decentralizované účetní knihy. Je však třeba poznamenat, že ne všechny plné uzly jsou reprezentovány těžaři.
Výhody
P2P architektura blockchainu nabízí mnoho výhod. Mezi nejvýznamnější z těchto výhod patří skutečnost, že P2P sítě poskytují vyšší úroveň zabezpečení než tradiční klient-server uspořádání. Distribuce blockchainu na velký počet uzlů ho prakticky činí imunním vůči útokům DDoS, které postihují mnohé systémy.
Také, protože většina uzlů musí dosáhnout konsensu, než budou data přidána do blockchainu, je téměř nemožné, aby útočník měnil data. To platí zvláště pro velké sítě, jako je bitcoinová síť. Menší blockchainové sítě jsou více náchylné k útokům, protože jedna osoba nebo skupina může nakonec ovládnout většinu uzlů (toto je známé jako 51% útok nebo útok většiny).
V důsledku toho distribuovaná P2P síť spojená s požadavky na většinový konsensus poskytuje blockchainovým sítím relativně vysokou úroveň odolnosti vůči škodlivým aktivitám. P2P model je jedním z důvodů, proč je bitcoin (a další blockchainové sítě) schopný dosáhnout takzvaného byzantského odporu.
Kromě ochrany, kterou poskytuje, činí použití P2P architektury v blockchainu kryptoměn také odolnou vůči cenzuře ze strany centrálních autorit. Na rozdíl od tradičních bankovních účtů, kde mohou být peněženky kryptoměn zmraženy nebo uzavřeny vládami. Tato odolnost se také rozšiřuje na cenzurní úsilí, které provádějí soukromé platební systémy a obsahové platformy. Někteří tvůrci obsahu a obchodníci na internetu zavedli platby kryptoměnami jako způsob, jak se vyhnout blokaci svých plateb ze strany třetích stran.
Omezení
I když existuje mnoho výhod, použití P2P sítí na blockchainu má také určitá omezení.
Vzhledem k tomu, že účetní kniha musí být aktualizována na každé účastnické uzlu místo na centrálním serveru, přidání transakcí do blockchainu vyžaduje obrovské množství výpočetní síly. I když tento proces zvyšuje bezpečnost, výrazně snižuje efektivitu a je jednou z hlavních překážek, pokud jde o škálovatelnost a široké přijetí. Nicméně, současní zájemci o kryptografii a vývojáři blockchainu hledají alternativy, které by mohly být použity jako řešení této škálovatelnosti. Mezi prominentní příklady patří: Lightning Network a Ethereum Plasma a protokol Mimblewimble.
Jedním z dalších potenciálních omezení jsou útoky, které mohou vzniknout během událostí hard forku. Vzhledem k tomu, že většina blockchainových sítí je decentralizovaných a open-source, skupiny uzlů mají svobodu kopírovat a měnit kód a oddělit se od hlavního řetězce a vytvořit novou paralelní síť. Hard fork je zcela přirozený a sám o sobě nepředstavuje hrozbu, ale pokud nejsou určité bezpečnostní metody správně aplikovány, mohou se obě řetězce stát náchylnými vůči útokům na opětovné odesílání.
Navíc, distribuovaná povaha P2P sítí činí relativně obtížným jejich kontrolu a legalizaci, nejen v oblasti blockchainu. Mnoho P2P aplikací a podniků se zapojilo do nelegálních aktivit a porušování autorských práv.
Závěrečné myšlenky
P2P architektura může být vyvíjena a používána různými způsoby. Je jádrem blockchainu, které učinilo kryptoměny možnými. P2P architektura poskytuje bezpečnost, decentralizaci a odolnost vůči cenzuře tím, že decentralizovaně rozděluje účetní knihy napříč velkými sítěmi uzlů.
Kromě její užitečnosti v oblasti blockchainové technologie mohou být P2P systémy také použity pro jiné distribuované výpočetní aplikace od sítí pro sdílení souborů po energetické obchodní platformy.


