Mix Network neboli mixovací síť přenáší zprávy přes počítače, které je přeposílají a označují se jako uzly neboli mixy. Ty odstraňují jednotlivé šifrovací vrstvy a zpracovávají provoz tak, aby bylo obtížnější přiřadit příchozí zprávu k odchozí. Základ popsal David Chaum v roce 1981. Cílem je chránit vztah mezi odesílatelem a příjemcem, nejen obsah zprávy. Účinek závisí na konkrétním protokolu, ostatním provozu i možnostech pozorovatele; samotný počet prostředníků anonymitu nezaručuje.
Anna píše Petrovi soukromou zprávu. Nikdo cestou nedokáže přečíst její obsah, přesto může být vidět, že od Anny odešla data a vzápětí je Petr přijal. Při opakování se z těchto stop dá odhadovat, kdo spolu komunikuje. Říká se jim metadata: údaje kolem zprávy, například čas, velikost nebo síťové adresy. Chaumův článek z roku 1981 řešil právě tento problém elektronické pošty. Neptal se jen, jak dopis zamknout, ale také jak ztížit sledování jeho cesty. Proto je mixovací síť jiný druh ochrany než samotné šifrování obsahu. [1] [2] [9]
Představme si zjednodušenou trasu přes uzly A, B a C. Anna nejprve zašifruje samotnou zprávu pro Petra. Pak ji zabalí pro poslední uzel C, tento balíček pro B a nakonec pro první uzel A. Používá jejich veřejné klíče, tedy údaje umožňující vytvořit šifrovací obal, který otevře odpovídající soukromý klíč. Klíče jsou číselné údaje, se kterými pracuje šifrovací program. Veřejný klíč lze sdílet, zatímco soukromý si příslušný uzel nechává pro sebe. A po otevření své vrstvy zjistí, kam poslat vnitřní balíček dál; nedostane tím všechny ostatní klíče. Vrstvy se připravují odzadu, aby je uzly po cestě mohly postupně odebírat. Jde o názorný model, nikoli tvrzení, že každá mixovací síť má přesně tři uzly. [1] [4] [5]
Kdyby do A přišla jen Annina zpráva a hned z něj odešla jediná zpráva, pozorovatel by měl snadnou práci. Klasický dávkový mix proto shromáždí více zpráv, než je odešle dál. Zpracování ve skupině rozšiřuje okruh možností, která příchozí zpráva odpovídá které odchozí. Důležité je také sjednotit velikosti přenášených balíčků: jinak by mimořádně velká zásilka mohla zůstat snadno rozpoznatelná. Tomuto doplnění na určenou délku se říká padding. Počet lidí nebo zpráv není sám o sobě přesným měřítkem soukromí; záleží i na tom, co už o nich pozorovatel ví. [1] [3]
Mix odstraní svou šifrovací vrstvu, zkontroluje zprávu podle pravidel protokolu a nepustí dál prostou kopii téhož vnějšího balíčku. Pozorovateli tak nestačí hledat totožná data na vstupu a výstupu. Zároveň se mění pořadí: původní Chaumův návrh řadil výstup dávky podle dat, jiné konstrukce využívají odlišné postupy. Důležité je, aby odchozí pořadí neprozrazovalo pořadí příchodu. Mix také hlídá opakovaně předložené zprávy. Následující uzel pokračuje podobným způsobem a poslední předá zásilku směrem k příjemci. Samotný obsah zprávy přitom zůstává pod další vrstvou šifrování, kterou Anna připravila pro Petra. [1] [3] [5]
Zprávy lze posílat i průběžně s různými náhodnými prodlevami, místo čekání na jednu společnou dávku. Pozorovatel pak hůř spojí čas přijetí paketu, tedy balíčku dat, s časem jeho odeslání. Další pomocí je krycí provoz: síť přenáší i zprávy bez uživatelského sdělení, které mají z pohledu sledování připomínat skutečné zprávy. Z pouhého pohybu dat je pak obtížnější poznat, kdy Anna opravdu něco napsala. Tak pracuje například návrh Loopix a jeho myšlenky využívá Nym. Ochrana něco stojí: více přenesených dat, práci zařízení a čekání. Nastavení prodlev a množství krycích zpráv ovlivňuje i výsledné soukromí. [3] [5]
V klasickém modelu může k utajení vnitřního přiřazení stačit alespoň jeden mix na trase, který dodrží protokol a neprozradí útočníkovi vztah mezi svými vstupy a výstupy. Poctivý zde znamená právě toto, nikoli obecné hodnocení provozovatele. Podmínka ale neříká, že jediný poctivý server vyřeší každou situaci. Pokud útočník rozpozná všechny ostatní zprávy ve skupině, může mu Annina zbýt vylučovací metodou. Rozhoduje rovněž pozorování okrajů sítě, dlouhodobá aktivita uživatelů a možnost provoz měnit. Proto výzkumné práce uvádějí model útočníka: přesně popisují, co protivník vidí a co může ovládat. [1] [3]
Útočník může zachycenou zásilku poslat opakovaně a hledat odpovídající opakování na druhém konci. Může se ji pokusit označit změnou dat, záměrně zdržovat provoz nebo část zpráv zahazovat. Obrana proto zahrnuje kontrolu neporušenosti zpráv a evidenci opakování. Formát Sphinx, používaný například v Loopix a Nym, dává uzlům podklady pro tyto kontroly. Krycí zprávy v některých návrzích pomáhají odhalovat i ztráty provozu. Jde však o konkrétní obrany s konkrétními předpoklady, ne o slib, že síť nelze narušit. Zašifrovanou zprávu lze stále nedoručit. [3] [5]
Anna může Petrovi předat zašifrované instrukce pro zpáteční cestu. Petr je použije k odeslání odpovědi, aniž musí sám znát její běžnou síťovou adresu. Podobné návratové adresy popsal už Chaum. Některé moderní systémy používají jednorázové návratové bloky, označované SURB (Single-Use Reply Block); jednorázovost je součást ochrany, nikoli libovolná překážka. Pseudonym pak může pomoci poznat, že více zpráv patří témuž autorovi, aniž odhalí jeho občanské jméno. Právě tím ale zprávy také spojuje. A pokud se Anna v textu sama představí nebo odešle osobní údaje, skrytá cesta její sdělení nevezme zpět. [1] [10]
Tor rovněž vede komunikaci přes více prostředníků, ale klade důraz na nízké zpoždění, aby se dal používat pro běžné prohlížení webu. Pozorovatel dobře umístěný na obou koncích může porovnávat časování a objem provozu. Tor má i mechanismy paddingu, takže by bylo nepřesné tvrdit, že žádný krycí provoz nepoužívá. Klasické mixnety připouštějí delší čekání, například při doručování zpráv. Loopix zkoumá kompromis s prodlevami v řádu sekund. Nym rozlišuje mixnetový režim od svého rychlejšího režimu dVPN. V režimu dVPN data procházejí šifrovanými tunely místo popsaného promíchávání zpráv. Názvy ani samotná délka trasy proto nestačí: rozhoduje skutečný způsob přenosu a hrozba, před kterou se chceme chránit. [4] [9] [8] [3] [5] [11]
Bitcoinová peněženka je aplikace, která pomáhá přijímat a odesílat platby. Pokud peněženka nebo jiná aplikace podporuje vhodnou síťovou cestu, mixnet může ztížit spojení jejího provozu s konkrétním připojením k internetu. Není to ale automatická vlastnost bitcoinového protokolu ani totéž co služba míchající mince. Veřejné vazby mezi bitcoinovými transakcemi zůstávají v blockchainu, společném záznamu transakcí; skrytá cesta je nevymaže. Také BIP 324 řeší šifrování spojení mezi uzly, ne promíchávání zpráv s cílem skrýt odesílatele. Rozlišujeme tedy soukromí při přenosu a soukromí samotné platební historie. Mix Network pomáhá porozumět první vrstvě; neudělá z každé platby anonymní hotovost. [6] [7]
Pro nejúplnější obraz čtěte toto heslo společně s David Chaum, Soukromí v Bitcoinu, Pseudonymita, Bitcoin, Bitcoin Anonymity Networks, BIP324.