Úvod
Bitcoin je často označován jako digitální hotovost, ale to je sporné srovnání. Pokud Alice zaplatí Bobovi deset dolarů v hotovosti, Bob netuší, odkud peníze pocházejí. Pokud ji později předá Carol, nebude schopna odvodit, že ji Alice kdysi vlastnila.
Bitcoin je jiný kvůli své přirozené veřejné povaze. Historii daného coinu (přesněji neutraceného transakčního výstupu neboli UTXO) může triviálně sledovat každý. Je to trochu jako napsat částku transakce a jména účastníků na účet pokaždé, když je použit.
To znamená, že pseudonymita veřejné adresy zajišťuje, že totožnost uživatelů nebude snadno odhalena. Přesto není bitcoin zcela soukromý. Blockchain analýza je stále sofistikovanější a je schopna propojovat adresy s identitami stále efektivněji. Kromě jiných sledovacích technik může vyhrazená entita deanonymizovat uživatele kryptoměn. K nápravě se v průběhu let objevily techniky pro odpojení transakcí.
Co je to míchání mincí?
Obecně řečeno, míchání mincí by se mohlo týkat jakékoli činnosti, která zahrnuje znejasnění finančních prostředků jejich nahrazením jinými. V prostoru kryptoměn však míchání mincí běžně označuje službu poskytovanou třetí stranou. Poskytovatelé služeb obvykle vezmou mince uživatelů (a malý poplatek) a vrátí mince, které nemají žádný odkaz na odeslané. Tyto služby jsou také známé jako tumblery nebo mixéry.
Bezpečnost a anonymita takto centralizovaných služeb jsou samozřejmě sporné. Uživatelé nemají žádnou záruku, že jim mixér vrátí peníze nebo že vrácené mince nejsou nějakým způsobem znečištěné. Dalším aspektem, který je třeba vzít v úvahu při použití směšovače, je to, že IP a bitcoinové adresy mohou být protokolovány třetí stranou. Uživatelé se nakonec vzdají kontroly nad svými prostředky v naději, že dostanou zpět ty nepropojené.
Pravděpodobně zajímavější přístup existuje ve formě transakcí CoinJoin, které vytvářejí významný stupeň věrohodné popření. To znamená, že po CoinJoin nemůže žádný důkaz spojit uživatele s jistotou s jeho předchozími transakcemi. Mnoho řešení CoinJoin poskytuje decentralizovanou alternativu k mixérům. Ačkoli může být zapojen koordinátor, uživatelé nemusí obětovat úschovu svých finančních prostředků.
Co je to CoinJoin?
Transakce CoinJoin původně navrhl bitcoinový vývojář Gregory Maxwell v roce 2013. Ve svém vláknu uvádí stručný přehled o tom, jak jsou tyto transakce strukturovány a jak lze dosáhnout masivních zisků v oblasti soukromí bez jakýchkoli změn protokolu.
CoinJoin v podstatě zahrnuje kombinaci vstupů více uživatelů do jediné transakce. Než vysvětlíme jak (a proč), podívejme se na strukturu základní transakce.
Bitcoinové transakce se skládají ze vstupů a výstupů. Když chce uživatel provést transakci, vezme své UTXO jako vstupy, specifikuje výstupy a podepíše vstupy. Je důležité si uvědomit, že každý vstup je podepsán nezávisle a uživatelé mohou nastavit více výstupů (na různé adresy).

Pokud se podíváme na danou transakci složenou ze čtyř vstupů (každý 0,2 BTC) a dvou výstupů (0,7 BTC a 0,09 BTC), můžeme učinit několik různých předpokladů. První je, že sledujeme, jak probíhá platba – odesílatel někomu posílá jeden z výstupů a sám sobě vrací nějaké drobné. Protože použili čtyři vstupy, větší výstup je pravděpodobně pro příjemce. Všimněte si, že nám chybí 0,01 BTC z výstupů, což je poplatek daný těžaři.
Je také možné, že odesílatel chce vytvořit velké UTXO z menších, takže konsoliduje menší vstupy, aby získal požadovaný výsledek 0,7 BTC.
Další předpoklad, který můžeme učinit, je založen na skutečnosti, že každý vstup je podepsán nezávisle. Tato transakce může mít až čtyři různé strany podepsané vstupy. A v tom spočívá princip, díky kterému je CoinJoining efektivní.
Jak funguje CoinJoin?
Myšlenka spočívá v tom, že několik stran se bude koordinovat za účelem vytvoření transakce, z nichž každá poskytne vstupy a požadované výstupy. Protože jsou všechny vstupy kombinovány, není možné s jistotou říci, který výstup patří kterému uživateli. Zvažte níže uvedený diagram:

Zde máme čtyři účastníky, kteří chtějí přerušit spojení mezi transakcemi. Koordinují se mezi sebou (nebo prostřednictvím specializovaného koordinátora), aby oznámili vstupy a výstupy, které by chtěli zahrnout.
Koordinátor vezme všechny informace, zpracuje je do transakce a nechá každého účastníka podepsat, než je odešle do sítě. Jakmile uživatelé podepíší, transakci nelze upravit, aniž by se stala neplatnou. Nehrozí tedy, že by koordinátor s finančními prostředky utekl.
Transakce slouží jako něco jako černá skříňka pro míchání mincí. Pamatujte, že efektivně ničíme UTXO, abychom vytvořili nové. Jediné spojení mezi starým a novým UTXO, které máme, je samotná transakce, ale samozřejmě nemůžeme rozlišovat mezi účastníky. V nejlepším případě můžeme říci, že účastník poskytl jeden ze vstupů a je možná novým vlastníkem výsledného výstupu.
Ale ani to není v žádném případě zaručeno. Kdo by při pohledu na výše uvedenou transakci řekl, že jsou čtyři účastníci? Posílá tato jedna osoba své prostředky na čtyři vlastní adresy? Dva lidé provádějí dva samostatné nákupy a každý vracejí 0,2 BTC zpět na svou adresu? Čtyři lidé posílají k novým účastníkům, nebo zpět k sobě? nemůžeme si být jisti.
Soukromí prostřednictvím popření
Samotná skutečnost, že implementace CoinJoin existují, stačí k tomu, aby zpochybnila metody používané k analýze transakcí. Můžete odvodit, že v mnoha případech došlo k CoinJoin, ale stále nejste o nic moudřejší, pokud jde o to, kdo vlastní výstupy. S rostoucí popularitou se oslabuje předpoklad, že všechny vstupy jsou vlastněny stejným uživatelem, což je obrovský skok v ochraně soukromí v širším ekosystému.
V předchozím příkladu říkáme, že transakce měla sadu anonymity 4 – vlastníkem výstupu mohl být kterýkoli ze čtyř zúčastněných účastníků. Čím větší je nastavená anonymita, tím menší je pravděpodobnost, že transakce budou spojeny s původním vlastníkem. Naštěstí díky nedávným implementacím CoinJoin je pro uživatele triviální slučovat své vstupy s desítkami dalších, což poskytuje vysoký stupeň popření. Nedávno byla úspěšně provedena transakce pro 100 osob.
Závěrečné myšlenky
Nástroje pro míchání mincí jsou důležitým doplňkem arzenálu každého uživatele, který myslí své soukromí vážně. Na rozdíl od navrhovaných upgradů ochrany osobních údajů (jako jsou důvěrné transakce) jsou kompatibilní s protokolem tak, jak je dnes.
Pro ty, kteří důvěřují integritě a metodologii třetích stran, jsou mixážní služby snadným řešením. Pro ty, kteří dávají přednost ověřitelné a nesvěřitelné alternativě, jsou alternativy CoinJoin lepší. Ty mohou být prováděny ručně pro technicky zdatné uživatele nebo pomocí softwarových nástrojů, které abstrahují složitější mechanismy. Již nyní existuje několik těchto nástrojů, jejichž popularita stále roste, protože uživatelé usilují o větší soukromí.

