Úvod

Bitcoin je často považován za digitální hotovost, ale to je otevřené. Pokud Alice zaplatí Bobovi 10 dolarů v hotovosti, Bob nemá jak zjistit, odkud peníze pocházejí. Když Bob převede 10 dolarů na Carol, Carol nemůže vědět, že 10 dolarů původně pocházelo od Alice.

Nicméně přirozená veřejná povaha Bitcoinu diktuje, že situace je jiná. Historie daného tokenu (nevyužité transakční výstupy nebo přesněji UTXO) je k dispozici všem. Je to podobné jako psaní částky transakce a jmen účastníků na účet.

Veřejné adresy však mohou být anonymní, což uživatelům umožňuje snadno skrýt svou identitu. Bitcoin však své stopy nemůže zcela skrýt. Technologie analýzy pro blockchain je stále vyspělejší a dokáže efektivně přiřazovat adresy k identitám. Kromě jiných sledovacích technik mohou vyhrazené subjekty také deanonymizovat uživatele kryptoměn. Za účelem vyřešení tohoto problému se na trhu objevily různé technologie pro unbundling transakcí.


Co je míchání tokenů?

Obecně řečeno, míchání tokenů se týká všech operací, které mísí prostředky prostřednictvím swapů. Ve světě kryptoměn však míchání mincí zajišťují třetí strany. Poskytovatel služeb obvykle vezme tokeny uživatele (spolu s malým poplatkem) a později vrátí některé tokeny, které nemají žádný vztah k odeslaným tokenům. Takové služby jsou také známé jako pohárky nebo mísiče mincí.

Bezpečnost a anonymita takto centralizovaných služeb jsou samozřejmě sporné. Uživatelé nemají žádnou záruku, že směšovač vrátí prostředky nebo že vrácené tokeny nejsou nějakým způsobem znečištěné. Navíc při použití směšovače mohou být IP a bitcoinové adresy zaznamenány také třetími stranami. Výsledkem míchání tokenů je, že uživatelé se vzdají kontroly nad svými prostředky v naději, že získají nesouvisející tokeny.

V současné době existuje nové schéma nazvané „CoinJoin Transaction“, které dává uživatelům velký prostor pro odmítnutí. Jinými slovy, po použití CoinJoin je vymazán přesný důkaz o spojení mezi uživatelem a minulými transakcemi. Mnoho řešení CoinJoin se stává decentralizovanou alternativou k mixérům. I když je možné, aby koordinátor zasáhl, uživatelé se nemusejí vzdát práv na správu fondů.


Co je CoinJoin?

Obchodování CoinJion vyšlo v roce 2013 a jako první jej navrhl vývojář bitcoinů Gregory Maxwell. V příspěvku stručně představil strukturu takových transakcí a jak získat vysoké soukromé výnosy bez úpravy protokolu.

Transakce CoinJoin v podstatě zahrnují vstupy od více uživatelů. Než si vysvětlíme, jak tato technologie funguje, pochopme nejprve strukturu podkladové transakce.

Bitcoinové transakce se skládají ze vstupů a výstupů. Když si uživatel přeje provést transakci, vezme UTXO jako vstup, specifikuje výstup a podepíše vstup. Vezměte prosím na vědomí, že každý vstup je nezávisle podepsán, ale uživatel může nastavit více výstupů (cílení na různé adresy).


image of an example transaction with four inputs and two outputs


Vezmeme-li jako příklad danou transakci sestávající ze čtyř vstupů (každý 0,2 BTC) a dvou výstupů (0,7 BTC a 0,09 BTC), můžeme o ní učinit řadu předpokladů. Nejprve sledujte, jak probíhá platba – odesílatel někomu odešle jeden z výstupů a následně obdrží změnu. Tato transakce využívá čtyři vstupy, takže větší výstup by měl být směrován do přijímače. Vezměte prosím na vědomí, že musíme zaplatit těžaři poplatek a výstup ztratí 0,01 BTC.

Odesílatel může také chtít vytvořit velké UTXO, a tak zkombinovat malé vstupy k dosažení cílového výstupu 0,7 BTC.

Můžeme také předpokládat, že každý vstup je nezávisle podepsán. Tato transakce má maximálně čtyři strany, které podepisují vstup. Přesně tak funguje CoinJoin.


Jak CoinJoin funguje?

Základní myšlenkou je, že více stran spolupracuje na vytváření transakcí, přičemž každá strana poskytuje vstupy a očekávané výstupy. Když jsou všechny vstupy smíchány, ostatní nemohou identifikovat shodu mezi výstupem a uživatelem. Podívejme se na následující diagram:


image of an example coinjoin


Jak je znázorněno na obrázku, čtyři účastníci chtějí prolomit korelaci mezi transakcemi. Vzájemně se koordinují (nebo prostřednictvím specializovaného koordinátora), aby deklarovali vstupy a výstupy, které si přejí být započítány.​

Koordinátor vezme všechny tyto informace a začlení je do transakce, přičemž před odesláním do sítě přiměje každého účastníka k podpisu. Jakmile je transakce podepsána uživatelem, nelze ji změnit, dokud se nestane neplatnou. Koordinátor tedy nemůže finanční prostředky krást.​

Tato transakce funguje jako černá skříňka pro míchání mincí. Nezapomeňte, zničíme původní UTXO, abychom vytvořili nové UTXO. Jediným spojením mezi starým a novým UTXO je samotná transakce a samozřejmě nemůžeme rozlišit účastníky. Ideální stav je jen vědět, že existují účastníci, kteří poskytují vstup a mohou být vlastníky výstupních výsledků.

I tak si nemůžeme být stoprocentně jisti. Při výše popsané transakci, kdo si může být jistý, že jsou čtyři účastníci? Nebo jen jeden člověk posílá peníze na jeho čtyři adresy? Nebo dva lidé nakupují každý dvakrát a každá adresa obdrží 0,2 BTC? Je také možné, že čtyři lidé poslali finanční prostředky novým účastníkům, nebo že finanční prostředky přišly zpět k jednotlivci. Konkrétní okolnosti nejsme schopni určit.


Ochrana soukromí prostřednictvím „popírání“

Nástup implementace CoinJoin stačil ke zpochybnění metod transakční analýzy. V mnoha případech můžete usuzovat, že došlo k CoinJoin, ale nemůžete určit vlastníka výstupu. Jak se tato technologie stává běžnější, předpoklad, že všechny vstupy vlastní stejný uživatel, postupně slábne. V širokém a komplexním ekosystému se soukromí dramaticky zlepšilo.

Ve výše uvedeném příkladu předpokládáme, že anonymní sada transakcí má 4 vlastníky vstupu a vlastníkem výstupu může být kterýkoli z těchto 4 osob. Čím větší je nastavená anonymita, tím nižší je pravděpodobnost nalezení korespondence mezi transakcí a původním vlastníkem. Naštěstí nedávné schéma CoinJoin umožňuje desítkám uživatelů spojit vstupy nedůvěryhodným způsobem, což výrazně zlepšuje „popírání“. Nedávno CoinJoin úspěšně provedl stovky obchodů.


Shrnout

Pro uživatele, kteří velmi dbají na soukromí, je míchání měn velmi účinnou doplňkovou metodou. Na rozdíl od navrhovaných upgradů ochrany soukromí, jako jsou důvěrné transakce, je tato technologie kompatibilní se stávajícími protokoly.

Pro uživatele, kteří důvěřují integritě a efektivním metodám třetích stran, jsou služby míchání měn jednoduché a pohodlné. Pro uživatele, kteří upřednostňují ověřitelné nebo neopatrované řešení, je CoinJoin vynikající volbou. Technicky zdatní uživatelé mohou abstrahovat složitější mechanismy ručně nebo pomocí softwarových nástrojů. Dnes, kdy se zvyšuje potřeba soukromí, budou takové nástroje na trhu stále populárnější.